全4547文字
PR

 日本でも企業の利用が増えてきた「コンテナ」技術。ある程度の規模を運用するには「Kubernetes(クーバネティス)」に代表されるコンテナオーケストレーションツールが欠かせない。複数のコンテナを組み合わせ、1つのシステムとして構成し、運用していくために、こうしたツールは様々な機能を提供する。コンテナの数や配置、スケーリングの調整や、コンテナ間の通信機能、永続ストレージの管理などが代表例だ。

 ただしオープンソースソフトウエア(OSS)のKubernetesを自前で導入し、運用するには相当のスキルが求められる。そこで、ベンダー各社はKubernetes利用のハードルを下げる製品やサービスを充実させ、ユーザーの獲得競争に力を入れている。

 Kubernetesはコンテナオーケストレーションツールとしてデファクトの地位に付き、「次世代のOS」ともいわれる。この共通インフラの上でコンテナが流通する将来を見据え、各ベンダーはコンテナ拡大路線に突き進む。

 Kuberenetesベースのコンテナ管理プラットフォーム製品は、GUIによる操作を可能にしたり、CI/CD(継続的インテグレーション/継続的デリバリー)ツールなどを簡単に組み込めるようにして、企業利用に向けた使い勝手を高めている。OSSの「Rancher」や米レッドハットの「OpenShift」などがある。レッドハットを買収した米IBMは、自社ソフトOpenShiftに対応させた「IBM Cloud Paks」の提供を通じ、企業へのコンテナ普及を推進してきた。

 クラウドベンダーが提供するKubernetesのマネージドサービスを使えば、Kubernetesのマスターノードの管理をベンダーに任せられる。AWS(Amazon Web Services)、Microsoft Azure、GCP(Google Cloud Platform)のクラウドビッグ3はそれぞれ独自のKubernetesサービスを提供し、自社サービスとの連携性の高さなどをアピールする。同様のサービスは「IBM Cloud」「Oracle Cloud」「Alibaba Cloud」なども提供している。

Kubernetesを提供する「製品」「クラウドサービス」の例
Kubernetesを提供する「製品」「クラウドサービス」の例
[画像のクリックで拡大表示]

 最近、ユーザーの注目を集めているのはクラウド上のKubernetesマネージドサービスだ。多くの企業にとってコンテナ利用は初めての試み。クラウドサービスであれば、導入作業なしにすぐに使い始められるし、自社に合わないと見ればすぐにやめられるアジリティーがある。AWSが2020年1月に「Amazon Elastic Kubernetes Service (EKS)」の利用料金を50%値下げするなど、クラウド間の価格競争にも力が入る。

 今、どのKubernetesマネージドサービスを選べばよいのか。

 クリエーションラインの荒井康宏取締役兼最高技術責任者は「Google Kubernetes Engine(GKE)が最も機能が豊富で最新機能に対応している」と話す。Kubernetesは米Googleが自社サービスの管理向けに開発した「Borg」が基になっており、Googleのコンテナへの知見には定評がある。

 ただし、GKEが優れているからといってGCPを使うというような単純な話ではない。「クラウドの選定では、AWS Lambda、データレイク、IoT(インターネット・オブ・シングズ)、機械学習(ML)など使いたいサービスを先に選ぶ。そちらのほうがコンテナ基盤の選定より大切だ」(荒井取締役兼最高技術責任者)。

 例えば新たに開業する銀行の勘定系システムをGCP上に構築する、ふくおかフィナンシャルグループ。マイクロサービスアーキテクチャーで開発したアプリはコンテナ化しGKE 上で動かす計画だが、GCPを選んだ理由はGKEの存在ではない。

 クラウドの選定に当たったアクセンチュアの山根圭輔テクノロジー コンサルティング本部インテリジェントソフトウェアエンジニアリングサービス グループ日本統括マネジング・ディレクターは、GCPが提供するデータベースサービス「Cloud Spanner」を第1の選定ポイントに挙げる。「オンプレミス(自社所有)環境と同等レベルの可用性を確保するために必要だった」(山根ディレクター)。

 つまりクラウド上のコンテナ基盤の選定では、それ自体の機能も大切だが、クラウドサービス全体としての優劣も加味して検討する必要がある。