OpenStackのスペシャリストであるMirantisが,Kubernetesコンテナ管理システムをOpenStackプロジェクトに統合する,Googleとの共同プロジェクトを発表した。OpenStackが管理するインフラストラクチャ上に,Dockerコンテナを大規模に展開することが可能になる。
OpenStackは,フリーでオープンソースのクラウドオペレーティングシステムである。コンピューティング,ストレージ,ネットワークといったリソースを,大規模なプールで管理することができる。Mirantisのブログでは,OpenStackの管理者が,Dockerコンテナのクラスタのオーケストレーションとマネジメントを処理するKubernetesシステムを,OpenStackのMuranoアプリケーションカタログを通じて,1分とかからずにデプロイできるようになる,と説明されている。
開発者は,標準的なコンテナベースのデプロイメントワークフローの一部として開発したパッケージアプリケーションを,OpenStack上で動作するKubernetesクラスタに追加することができる。Muranoは,他のOpenStackコンポーネントと組み合わせることによって,Kubernetesクラスタ自体をスケールアップする必要があるポイントにアプリケーションが達したときに,インフラストラクチャリソースを自動的に追加してくれる。
Mirantisのブログによると,OpenStack上で動作する彼らのKubernetesの実装は,Kubernetesプラットフォームに求められるすべての機能を提供する予定だとされている。これにはDockerサービスを実装したPod(グループ化されたコンテナの最小デプロイ単位),Podの可用性管理とロードを行うサービス,Kubernetesの設定に基づいてPodをスケールアップないしダウンする機能が含まれる。Kubernetesはさらに,Pod同士の接続や,基本となるインフラストラクチャの管理も行う。
Muranoは,OpenStackのオーケストレーションエンジンであるHeatと組み合わせて,Kubernetesがデプロイされる基盤のインフラストラクチャを管理する。Muranoは,KubernetesとPodのための仮想ネットワークを構成するとともに,Heatを利用して,仮想マシンやインターフェースコネクション,ネットワークとサブセット構成,セキュリティグループ,ルータ設定,ストレージといった,Kubernetesが要求するリソースのプロビジョニングを行う。
Google Compute Platformのブログには,Kubernetesが複数のホストにコンテナを分散する能力を備えることにより,MirantisのOpenStackインテグレーションでは,OpenStackのプライベートデプロイメントとGoogle Cloud Platformのようなパブリッククラウドとの間でのワークロード移動が実現される,と述べられている。
Kubernetesでプライベートクラウドとパブリッククラウドの両方を運用すれば,ハイブリッドインフラストラクチャのパワーを解き放つことができるでしょう。例えば主インスタンスをプライベートクラウド上で,他のインスタンスをオンプレミスのインフラストラクチャ以外の地域にあるGoogle Container Engine上で動作させるようなことも可能です。
Mirantisのブログでは,OpenStackとコンテナ技術は競合するものと考えられていることも多いが,KuberntesとOpenStackの統合はエンドユーザにとっての付加価値を提供するものだ,と述べられている。
OpenStackとDockerのようなコンテナは競合するものと見なされていますが,実際には,この2つのテクノロジは強力な組み合わせです。解決する問題は同じですが,スタック上の異なる層にあるため,2つを組み合わせることで,これまでにない程のスケーラビリティと自動化が実現するのです。
Mirantisのブログには,Kubernetesとの統合は,Mirantis OpenStack Expressプラットフォーム経由で4月に一般リリースされると述べられている。Mirantisオンラインにサインアップすれば,KubernetesでホストされたOpenStackサンドボックスに早期アクセスすることができる。