Canonicalが“snappy” Ubuntu Coreのベータ版をリリースした。Microsoft Azure, Google Computer Engine, Amazon Web Servicesなど,クラウドに最適化されたUbuntu Linuxの軽量バージョンだ。
Ubuntu Coreは,クラウドアプリケーションのホスティング,Dockerのようなテクノロジを用いたコンテナ指向のデプロイメント,さらには注目のオーケストレーションプラットフォームを対象に,最小限で安全で確実にアップデート可能なオペレーティングシステム(OS)のベースイメージとしてデザインされた,Ubuntuの新しい姿だ。
snappy Ubuntu Coreは,必要なライブラリのみを含んだ,最小限のサーバイメージとして提供される。例えばPanamaxのようなコンテナシステムを使用する開発者は,必要なフレームワークやパッケージを追加でインストールすることになる。インストールされたコンポーネントはそれぞれ,“AppArmor” の提供するサンドボックス環境の中で,安全に実行される。AppArmorは,MAC(Mandatory Access Control)システムを使用して,制限されたリソースセット内にプログラムを限定する,CanonicalのLSM(Linux Security Module)カーネル拡張である。
Ubuntu Insights blogには,“トランザクショナルでイメージベースの差分更新”を利用することによって,snappy Ubuntu Core OSと関連アプリケーションのどちらに対しても,安全で確実なアップデートが提供される,とされている。OSとアプリケーションのファイルは,読み込み専用のイメージとして別に保存され,小サイズの変更差分によってトランザクショナルに更新される。更新に先立って,関連するすべてのデータのバックアップが取得されるので,問題が生じた場合には,イメージとデータをロールバックすることができる。これにより,システムが不完全な状態に置かれないことを保証している。
CanonicalとUbuntuの創始者であるMark Shuttleworth氏はsnappy Ubuntu Coreについて,元々CanonicalのモバイルフォンOSの成果から始まったものだ,と説明している。モバイルフォンOSには,極めてセキュアな読み込み専用OS,デバイスあるいは関連アプリケーションを棄損しないアップデートなど,コンテナベースのクラウドホスティングプラットフォームとよく似た要件がある,と氏は言う。加えて氏は,Ubuntu OSと関連パッケージのフィックスを,Ubuntu Core用にも公開する予定であることも述べている。
Ubuntu Insight blogによると,“snappy”モニカを開発した動機は,基本的には速度とデプロイメントの信頼性にある。“snappyのアプローチは,より速く,信頼性が高く,アプリケーションやユーザに対してより強力なセキュリティ保証を可能にすることです – ‘snappy’(活発な)アプリケーションと呼ばれる理由もそこにあります。”
snappy Ubuntu Coreは,これと同じような機能をCoreOS,および企業としてのCoreOSとRed HatのProject Atomicに提供するものだ。その目標は,クラウドアプリケーション構築の基礎として,コンテナあるいはコンテナオーケストレーションフレームワークをサポート可能な最小限のLinuxサーバを,開発者とシステム管理者に提供することにある。
Shuttleworth氏は,Ubuntu Coreが同種のプロジェクトと最も大きく違う点として,Ubuntu Coreが軽量で拡張性があり,セキュアであることを挙げている。例えば,Ubuntu Coreディストリビューションには,CoreOSの提供するFleetや,Project AtomicのKubernetesといったクラスタ管理フレームワークが,デフォルトでは含まれていない。フレームワークとパッケージの安全性は,デジタル署名されたコンポーネントを提供する単一のリポジトリによって,Ubuntu Core内で保証されているのだ。
snappy Ubuntu CoreはMicrosoftのAzureクラウドプラットフォーム,Google Computer Engine(GCE),Amazon Web ServiceのEC2 IaaSプラットフォームなどで利用可能である他,KVMを使用してローカルにインストールすることもできる。
上記の各プラットフォームでsnappy Ubuntu Coreインスタンスをローンチする手順の詳細は,Ubuntu InsightsのWebサイトに紹介されている。