サービスメッシュのIstio、十分に成熟した段階に到達したとしてCNCFの卒業プロジェクトに
今回は「サービスメッシュのIstio、十分に成熟した段階に到達したとしてCNCFの卒業プロジェクトに」についてご紹介します。
関連ワード (公開、同士、機能強化等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
Cloud Native Computing Foundation(CNCF)は、サービスメッシュのIstioが十分成熟した段階に到達したとして、「卒業」(Graduation)プロジェクトになったことを発表しました。
卒業となっても引き続きIstioはCNCF傘下で開発が進められるため、CNCFにおける卒業とは、インキュベーション(育成)段階からの卒業という意味だと言えます。
[NEWS] Cloud Native Computing Foundation Reaffirms #Istio Maturity with Project Graduation
Read more: https://t.co/enhd4uT0sG#CNCF #servicemesh #cloudnative #oss pic.twitter.com/A355frCNTO
— CNCF (@CloudNativeFdn) July 12, 2023
Istioは2017年にプロジェクトがスタートしました。
参考:Google、IBMらがオープンソースの「Istio」公開。マイクロサービスのためのネットワーク機能「サービスメッシュ」を提供。Kubernetes対応
Kubernetesが複数のコンテナ群が安定稼働するようにコンテナの死活管理などを行うのに対し、Istioはそのコンテナ上で稼働するサービス間を安定的かつセキュアにつなぐための仕組みを提供します。
具体的には、コンテナ上のサービスの隣にプロキシを配置し、そのプロキシ経由でサービス同士が通信を行うようにすることで、サービスを書き換えることなく、トラフィックのルーティングルールの設定、トラフィックが偏らないようにロードバランスの実現、セキュリティのための暗号化通信や認証サービス、ポリシーの設定、そして全体のモニタリングなど、サービスのレイヤにおいてさまざまな機能を提供します。
当初のIstioはこのように、サービスの隣にプロキシを配置するという仕組みだったために、この仕組みは「サイドカーパターン」と呼ばれました。
2018年にIstioはバージョン1.0に到達します。
参考:Istioが正式版となるバージョン1.0に到達。マイクロサービスのためのサービスメッシュを実現
2020年にはWebAssemblyによる機能拡張も可能にしました。
参考:サービスメッシュのIstio、機能拡張にWebAssemblyを採用。EnvoyにV8エンジンのWebAssemblyランタイムを統合
そのIstioは、2022年にはサイドカーパターンを用いない新たな仕組み「Ambient Mesh」を発表します。
参考:Istioが新たな仕組み「Ambient Mesh」を発表。サイドカーなしでサービスメッシュを実現
これはLinuxカーネルの内部をフックして機能を拡張できる「eBPF」と呼ばれる注目の技術を用いてサービスメッシュを実現する「Cilium」と呼ばれるソフトウェアが急速に存在感を高めていることに対抗したものだと見られています。
IstioはGoogle Kubernetes Engineに採用されるなど、現在のところサービスメッシュにおける事実上の標準と見なされつつありますが、一方でCiliumのような競合も登場しています。
そのため今回の卒業後もIstioの地位は安泰ではありません。今後も本体やエコシステムにおける機能強化や改善はまだまだ続くことになるでしょう。