KubeCon Europe 2024からサービスメッシュのLinkerdの最新情報を紹介
KubeCon+CloudNativeCon Europe 2024から、サービスメッシュのLinkerdに関する最新情報を解説したセッションを紹介する。プレゼンテーションを行ったのはLinkerdの開発をリードするBuoyantのCEOであるWilliam Morgan氏だ。
●動画:Linkerd Project Update: VM Support, Ingress, Security on the Edge, and Rust
Buoyantは、2024年2月21日に発表したLinkerdのステーブルなリリースアーティファクトを一般には公開せず、公式の実行イメージを取得するためにはBuoyantの有償サービスに加入する必要があるという新しい施策を発表している。その直後、2024年2月のCivo Navigate 24が開催されたオースチンでMorgan氏と交わした会話では、パリのKubeConではネガティブな反響があるのでは? と心配していたようすだった。だが実際のところは、このセッションの後の質問でも1件だけ「実行イメージを自分でビルドすることは可能か?」という質問が来ただけで、コミュニティからは支持されているようだった。
このセッションでも解説したVMのサポートとSPIFFE/SPIREサポート、マルチクラスター間のサービスメッシュ構成などについて説明した発表文は以下から参照して欲しい。
FAQの最後の項目「I hate this. Who can I yell at?」(この施策が気に入らない。誰に文句を言えばいいのか?)に対する回答の最後の文章は「I'm the one who made this decision. (I'm also, perhaps not coincidentally, the person who pays the Linkerd maintainers.) Come talk to me and I'm happy to explain exactly why I did it and all the alternatives and options we considered.」となっている。Linkerdのメンテナーに対して給与を支払う必要があり、そのための変更だったと解説しているところに、官僚的で冷たい文章を避けたいという想いが感じられる。
セッションそのものはサービスメッシュの概要、Linkerdの概略、Rustを使ったProxyモジュール、そして2.14以降の構想を語る内容となった。
ちなみにCNCFのプロジェクトがGraduationするとマスコットキャラクターとして動物を選ぶことができるが、Linkerdはロブスターを選択し、これが上記の最初のスライドにも使われている。ロブスターを選んだ理由については、サイドカーでコンテナ内に実装されるProxyがRustで書かれており、RustのマスコットキャラクターがFerrisという蟹だから、それに近いモノをということらしい。
Linkerdの特徴はKubernetesに特化したソフトウェアということだったが、今回のセッションの中でKubernetesの外にある仮想マシンにも接続可能になったことが解説されている。
ここではシンプルで管理の手間がかからないことに加えてセキュアであること、高速で信頼性が高いこと、そしてシンプルなために観測が行いやすいことなどを挙げて、クラウドネイティブなシステムにおいては最適なマイクロサービスのためのネットワークであることを解説した。
このスライドではLinkerdのデザインのためのバックボーンとなった思想について解説し、シンプルで無駄な構成要素が必要なく、Rustで書かれた超軽量なProxyを使っていること、mTLSが標準機能として備わっていることなどを説明。Goで書かれたコントロールプレーンとRustで書かれたProxyがセットになって稼働することを説明した。またここには記述されていないが、コントロールプレーンについても今後、Rustで書き直す計画があるらしい。
ここではKubernetesのGateway APIを使った動的なルーティング機能について解説。これまでService Mesh Interface(SMI)というプロジェクトがCNCFで活動していたが、すでにSMIプロジェクトはアーカイブされ活動を停止しており、ルーティングの機能はGateway APIが担うようになったということだろう。
サーキットブレーカーについても実装されており、Annotationの設定で有効になると説明した。Kubernetesに特化しているLinkerdらしくKubernetesの作法に沿った実装だが、今後の機能強化も予定しているようだ。
次のLinkerd 2.14から機能強化として、マルチクラスター間のサービスメッシュ構成についてゲートウェイを不要とする構成が可能になったと語った。2.13以前はゲートウェイを介して通信を行う構成だったが、フラットなネットワークが構成できるようになったことは無駄な管理工数を減らすというLinkerdの思想に沿った機能強化と言えるだろう。
さらにその先、Linkerd 2.15というリリースで行う予定の機能強化について解説。これは仮想マシンの接続をSPIFFEのリファレンス実装であるSPIREクライアント経由で実現するというもので、これまでKubernetes専用のサービスメッシュだったLinkerdが、仮想マシンサポートによって多様なワークロードに対応するという意味である。
これはBuoyant Enterprise for Linkerd(以下、BEL)という新しいディストリビューションの開設によって、これまで公式リポジトリーに公開されてきたステーブルなリリースアーティファクトの一般公開を止めるということを意味している。BELは有償サービスとして提供されるが、本番環境以外の利用及び50名以下の企業/組織においては無償で提供されるサービスとなる。
これはLinkerdの機能強化に加えて、さまざまなバグ修正のためのエンジニアリングリソースを確保するためには必要な変更であると強調。Linkerdの主な開発はBuoyantのエンジニアによって行われており、そのエンジニアに報酬を支払い続けるためには必要な施策であると語った。
これが発表されたBuoyantの文面には以下の通り、Linkerdのコードのライセンスはオープンソースソフトウェアとして変更しない、ガバナンスもコミュニティについても何も変更しない、リリースされるアーティファクトの場所だけが変更されると強調している。
「And to be clear: Linkerd continues to be, and always will be, open source. This change is about the release artifacts, not about code, governance, community, or anything else. We've been open source users, contributors, and advocates since long before we created Linkerd, and our commitment to a healthy, inclusive, collaborative, and ever-growing open source Linkerd remains as strong as ever.」
このスライドでは2.15以降に予定されているIPv6のサポート、Egressの監視機能強化、Ingressのサポートなどが大まかに説明された。
最後に質問を受けたMorgan氏だったが、思った以上にBELへの移行、つまり本番で使えるようなステーブルリリースのアーティファクト公開を有償サポートの中で行うという部分についてネガティブな質問が少なかったのが印象的なセッションとなった。
今回はBuoyantとしてはブースを出さず、Linkerdのプロジェクトブースだけの参加となったが、Linkerdのプロジェクトブースには多くの参加者が集まっていた。
またキーノートでのプロジェクトアップデートでもMorgan氏が動画で登場し、最新情報を伝えていた。
オースチンで会話した際は、BELの移行についてオープンソースコミュニティの反応を心配していたMorgan氏だったが、ライセンスも変えずクラウドベンダーを敵視することもなく、開発環境と50名以下の組織には無償でアーティファクトを提供するという方法を考え出した苦労が報われたということだろう。引き続き注目していきたい。
●Linkerd公式ページ:https://linkerd.io/
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- KubeCon NA 2021からサービスメッシュの2セッションを紹介
- KubeCon NA 2020、サービスメッシュのLinkerdの概要とユースケースを紹介
- サービスメッシュのLinkerd 2.9を紹介。EWMA実装のロードバランサー機能とは
- サービスメッシュのLinkerdの最新リリースと将来計画をBuoyantのCEOが解説
- KubeCon Europe 2023から、Linkerdの最新情報とeBPFがサービスメッシュに使えない理由を解説したセッションを紹介
- サービスメッシュを実現するLinkerdの将来を、開発元のBuoyantが語る
- 「KubeCon NA 2022」から、サイドカーレスを実装したサービスメッシュのIstioのセッションを紹介
- Linkerdを開発するBuoyantがサービスメッシュの始まりと未来を語る
- KubeCon+CloudNativeCon EU 2021、コロナ禍に対抗するシステムを支えるLinkerd
- KubeCon NA 2020 LinkerdとAmbassadorを使ったマルチクラスター通信を紹介