「Linux」、クラウド、コンテナー、「Kubernetes」のいずれかがなかったとしたら、現在のようなテクノロジーの世界は実現しないだろう。Linuxはすべての基盤となるOSだ。すべてのアプリケーションとリソースへのアクセスはクラウドが担っている。アプリケーションを格納しているのがコンテナーだ。そしてすべてのコンテナーのオーケストレーションはKubernetesが担当している。このうちのどれか1つでもなくなると、われわれの生活と仕事の世界はもっと原始的なものになってしまう。
進化を続けるクラウドネイティブコンピューティングにおいて、Kubernetesほど大きな影響力を持つ技術はほとんどない。10周年を迎えるKubernetesは、オープンソースが持つ協力と革新の力を証明する存在になっている。Googleでつつましく始まったKubernetesは、アプリケーションのデプロイ、管理、スケーリングのあり方を変え、コンテナーオーケストレーションのデファクトスタンダードになった。
今後、Kubernetesが減速する兆しはない。プラットフォームとして進化を続けており、新機能や改良が定期的に加えられている。Kubernetesのコミュニティーは、ユーザー体験のシンプル化、セキュリティの向上、スケーラビリティーの強化などの方策を模索している。
Chainguardの共同創業者でKubernetesの開発者の1人でもあるVille Aikas氏は次のように述べている。
Cloud Native Computing Foundation(CNCF)がこのように大きく花開いたのは、プラットフォームチームにもたらされるツールとインフラのオプションの多様性の点ですばらしいことだ。それだけでなく、これによりKubernetesを運用するために必要な選択肢もたくさん生み出され、その光景が広大なものになったものと考えている。いつも思うのは、Kubernetesがこのような人気を博した大きな理由の1つは、APIがシンプルで、使用する認知負荷が比較的少ないことだと常々思っている。Kubernetesは成熟し続けるが、メンタルモデルのシンプルさとAPIの使いやすさはなんとかして維持する必要がある。
言うは易く行うは難しだ。Kubernetesとクラウドネイティブコンピューティングのパラダイムをうまく使いこなすのは次第に難しくなってきた。
eBPFパフォーマンスモニタリング企業Groundcoverの共同創業者で最高経営責任者(CEO)を務めるShahar Azulay氏は次のように述べている。
Kubernetesは多様なタスクを効果的に管理できる能力が証明されているが、その複雑さから、相当なセットアップと継続的なメンテナンスが必要だ。Linuxが信頼できるOSへと発展していったのと同じように、Kubernetesはユーザーフレンドリーな抽象化レイヤーへと変容していくだろう。Kubernetesは10年間で採用の拡大が続き、効率とコスト最適化に対するニーズがますます重要になってきている。
間もなく実現する楽しみな展開の1つが、Kubernetesとサーバーレスコンピューティングとの統合だ。「Kubeless」や「Fission」などのプロジェクトでは、Kubernetesにサーバーレス機能を組み込み、開発者が既存のKubernetesクラスターに加えてFaaS(Function as a Service)をデプロイできるようにしようとしている。サーバーレスコンピューティングとKubernetesの統合は、クラウドネイティブアプリケーションの新たな可能性に扉を開くに違いない。
エッジコンピューティングとKubernetesの組み合わせも増えている。エッジに移るデバイスとアプリケーションが増加し、エッジへのデプロイに対応するためにKubernetesが採用されている。Kubernetesのコミュニティーは、エッジデバイスで実行できる軽くて効率的なKubernetesクラスターを実現するため、「KubeEdge」「MicroK8s」「Red Hat Device Edge」などのプロジェクトに取り組んでいる。
提供:rvbox/Getty Images
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。