「Kubernetes」は既に、コンテナやマイクロサービス向けのオーケストレーションプラットフォームとして確固たる評価を得ている。しかし、アプリケーションサーバの多くを置き換える可能性に気付いたある開発者は、その利用をさらに推し進めていくことを提唱している。
Red Hatの開発者エクスペリエンス担当ディレクターであるRafael Benevides氏によると、Kubernetesや、「OpenShift」および「Istio」といった関連プロジェクトは、「これまでアプリケーションサーバが提供してきた、機能に関する要求以外のものを提供している」という。同氏はDZoneへの最近の投稿で、KubernetesとOpenShift、Istioの組み合わせにより、特定の言語に縛られなくなるため、「個々のユースケースに応じて最適となる技術や言語の利用が奨励される」状況が生み出されるだけでなく、過去20年の間に登場した典型的なアプリケーションサーバに対する、より高速な代替が提供されるとも述べている。
同氏は「アプリケーションにエンタープライズ向けの機能を付加する必要が出てきた際に、コンテナの真価が発揮される。そして、こうした能力をコンテナ化されたアプリケーションにもたらすうえで、Kubernetesをプラットフォームとして利用するというのが最善の選択肢となる」と記している。これらの能力には、サービスディスカバリや、基本的な起動、弾力性、開発および配備のパイプライン、監視が含まれる。
また、アプリケーションサーバは「フレームワークのような位置付けに変貌を遂げつつある」ため、ソフトウェア開発においてその役割を保ち続けるだろうとBenevides氏は続けている。
New Relicの製品管理担当バイスプレジデントであるRamon Guiu氏は、Kubernetesが開発部門で普及している理由はいくつかあると述べる。同氏はJAXenterでのインタビューで、Kubernetesは「スケーラビリティを考慮して設計されている。GoogleがKubernetesを利用して自社サービスの大規模な展開を成功させたことで、開発者コミュニティーはその方向に進んでいこうとしている」と述べている。
マイクロサービスアーキテクチャを管理する能力も、Kubernetesの人気を支える鍵となっている。このプラットフォームは、「適切なAPIを用意することで、マイクロサービスアーキテクチャに基づくアプリケーションの配備と運用を容易にするとともに、優れたレベルの抽象化を実現している」とGuiu氏は述べている。Kubernetesは負荷の管理を通じたアプリケーションのリソース消費の制御と、新たなホストへの移行を極めて巧妙なかたちで実現している。
クラウド全体からの視点も忘れてはならない。Kubernetesは、「『Amazon Web Services』『Microsoft Azure』『Google Cloud Platform』『IBM Cloud』『Red Hat OpenShift』などのように、ほとんどの大手クラウドプロバイダーが瞬く間にコンテナオーケストレーションエンジンの中心的存在と位置づけるようになった」とGuiu氏は述べる。「『Amazon EKS』『Azure Kubernetes Service』『Google Kubernetes Engine』のようなサービスでは、シームレスな開発者エクスペリエンスを実現していて、開発者自身がインストールや管理、Kubernetesクラスタの運用をする必要はない。この分野では、よりいっそうのイノベーションが起こり、開発者はDockerイメージをビルドしなくても、アプリケーションをドロップすれば、Kubernetesで実行できるようになるだろう」(Guiu氏)
最後に、DevOpsという文化においてKubernetesが果たしている重要な役割もある。つまり、継続的インテグレーション/継続的デリバリ(CI/CD)に向けた取り組みに対するIT部門のサポートが容易になるとGuiu氏は述べている。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。