pnop OS をリリース

本日、弊社 pnop は Azure 上に素早く展開でき、超軽量でセキュアでC#ネイティブなカスタムOSである pnop OS をリリースしました。

We are excited to release our pnop OS Apr.1,21 Joke edition!

Azure Marketplace の画面

Azure Marketplace の画面

pnop OS が動作しているところ

pnop OS が動作しているところ


pnop OS Overview

今回独自に開発したpnop OSは厳密にいうとC#ネイティブで作成された EFI Boot Application です。フットプリントはわずか 8 KB と超軽量。ユーザーはこの超軽量なカスタムOSを Azure Marketplace から10数秒で展開し、ジョークなメッセージを顧客の Azure 環境上に構築することができます。

pnop OS Specs

  • Offer (SKU) : pnop OS Apr.1,21 Joke edition
  • Features :
    • Joke message on boot diagnostics
    • This OS does not provided as follows:
    • Interactive Shell
    • Network features (VNET integration, IPv4/IPv6 stack)
    • Servers (HTTP/S, SSH, RDP, other service programs)
    • Custom Applications

上記記載の通り、起動時のジョークメッセージ以外何も提供されないカスタムOSですが本日無事リリースできたことをうれしく思います。

How to deploy

デプロイは簡単です。 Azure Marketplace 上から pnop OS を検索して、通常の VM(Gen 2) などのように作成するだけ! (と言いつつ、Gen 2が選べないことがあるようです。その場合は、Azure Portalを英語表示にしてトライするとGen 2を選べるようになるみたいです)

Azure Portal 上からの作成

Azure Portal 上からの作成

リソース作成画面(基本)

リソース作成画面(基本)

リソース作成画面(詳細)

リソース作成画面(詳細)

という感じのエイプリルフールネタです

どこまでがネタでしょう? ジョークとはいえAzure上で動作するネイティブC#なEFI Boot Applicationは本当ですし、ちゃんとメッセージも出ます。Azure Marketplaceからの展開も何故か申請が通ってるので(4月1日0時には間に合ってないにしても)本当だったりします。

  • 今最終段階なのでこの処理が終わったら皆さんの Azure Portal 上から作れるようになるはず

まぁ実用に耐えられるものは何も無いのでそのあたりが冗談といえば冗談なのと、この投稿がニュースリリースでなくてエイプリルフールにかこつけた Azure Marketplace に関する弊社のステマというところでしょうか?

Azure Marketplace について

全然有名ではありませんが、弊社では Load Tester (multiple remote servers) Powered by Apache JMeter™Tsunami - security scanner を Azure Marketplace 上に公開してたりします。

今回のこのネタもそうですが、これらの Azure Marketplace に関するノウハウなどそれなりに沢山持ってますので、もし Azure Marketplace で何かを提供したいと思っている方がいれば是非弊社にご相談ください!(これが言いたいがためのネタですね)

EFI Boot Application について

ほんとにEFI Bootしてメッセージ出すだけのアプリですが、ちゃんとC#でできてます。世間では ゼロからのOS自作入門 が大変人気ということでちゃんとOSまで組み上げようと思ったのですがそこまでの時間とスキルが無くて断念、ちょっと調べたらC#ネイティブで作る方法があるっぽいのでそっちでお手軽にネタにしようということになりました。

基本的には上記の内容に従って作ればできあがります。NativeAOTのパッケージを手に入れるところとVHDX作るところがちょっと面倒というだけでしょうか?具体的には

  • 出来上がったEFI Boot Application は 8KB とかなのに FAT32 のせいでパーティションサイズが60MBぐらい必要
  • Azure上で動作させるために VHD化して Managed Disks に登録するのにディスクサイズ(VHDサイズ)が100MBは必要
  • なんだかんだで Azure Marketplace に登録するためにVHDサイズは 1GB 必要

などで無駄ディスクサイズが多いです。

あと本来は Azure Marketplace に公開するためには OS イメージの審査(チェック)が必要で結構厳しいのです。今回のこのネタで言えば Shell もなければ Azure の VM Extension も動作しないしで NG なんですが、Microsoft サポートに連絡したらなんか主旨に賛同頂いて最低限のフェーズは OK になりました(マジかよ(今回一番の謎。Microsoft サポートチームの人、本当にありがとう!

Azure Marketplace に提出するための Microsoft Partner Cener の画面

Azure Marketplace に提出するための Microsoft Partner Cener の画面

という感じで Azure Marketplace に関するご相談は弊社までどうぞ!