Google Cloudが先日のブログで,Google Container Engine(GKE)の一般提供開始(Generally Available/GE)を発表した。同サービスが実用可能な状態に達したと判断したもので,99.5パーセントの稼働SLAでバックアップする。
GKEはDockerコンテナ上で動作する,クラスタ管理とオーケストレーションのためのシステムだ。オープンソースのKubernetesをベースとしてGoogle Cloud Platformで動作し,Googleのエンジニアによって管理される。コンテナをクラスタにスケジュールした上で,JSONによる構成ファイルで宣言的に定義された要件に基づいた自動管理を行う。
同社プロダクトマネージャのCraig McLuckie氏は,Kubernetesプロジェクトがデプロイメントにおいて実現する柔軟性を特にあげて,必要であれば他のクラウドプロバイダにワークロードを簡単に移行できる点を強調する。
Red HatやMicrosoft, IBM, Mirantis, OpenStack, VMWare(さらに数は増えます)などが自社プラットフォームへのKubernetes統合を進めていることから,ワークロードの移動やマルチクラウドプラットフォーム運用がさらに簡単になります。
GKEは,その基盤にあるKubernetesのコードに依存しています。ほとんどのパブリッククラウドはK8sをサポートしているので,GKEでホストするアプリケーションを他の場所に移動するのは簡単です。プロジェクトの包括的な目標もそこにありました。ユーザが私たちのインフラストラクチャを選択してくれる理由は,策略的にロックインされているからではなく,単にインフラストラクチャのメリットを見出しているからなのです。
GoogleはDockerが人気を博するまでの10年間,Linuxコンテナに独自にアプローチする考えを持っていたため,Dockerを使用することはなかった。しかしMcLuckie氏は以前,Dockerが業界全体におけるデファクト標準のフォーマットエンジンであり,Googleもその動作を標準化していく考えであることを明らかにしている。InfoQは氏に,競合相手とGKEの中心的価値について尋ねてみた。
競合するスタックの個々の機能について話すより,Kubernetesがマルチクラウドの世界のために開発されたオープンソースである点を強調したいと思います。Kubernetesは,BorgやOmegaと同じエンジニアチームが開発しました。 10年にわたる実用コンテナの経験を誰でも利用可能なプラットフォームに転化する,という意図の下に開発されています。他のプロダクトとは違い,現在のPaaSテクノロジの基盤となるプラットフォームとして採用されていますし,いくつかのLinuxディストリビューションでは標準品として採用されています。さらに,広範な無党派エンジニアコミュニティの所有物であることを立証するため,GoogleからLinux財団に寄贈されたテクノロジでもあります。