KubeCon Europe 2023共催のLinkerd Dayからアディダスの事例セッションを紹介
2023年4月にアムステルダムで開催されたKubeCon+CloudNativeCon Europe 2023の共催イベントで、サービスメッシュのLinkerdに特化したLinkerd Dayを紹介する。この稿ではスポーツ用品の大手アディダスが、Linkerdを使ってアプリケーション間のネットワークを実装したセッションを紹介する。タイトルは「Zero-Cost Linkerd at Adidas:Impossible is Nothing」、セッションを行ったのはDaniel Baeyens氏とMiguel Allende氏だ。Baeyens氏はシニアプラットフォームエンジニア、Allende氏はサイトリライアビリティエンジニアという肩書きだ。
●動画:Zero-Cost Linkerd at Adidas: Impossible Is Nothing
アディダスの創業者であるAdi Dasslerの言葉を引用、「自身の行いに対してクリエイティブで自立した上で責任を取るようにせよ」という意味だが、IT部門でもその発想が活かされていると紹介した。
このセッションの対象としているのは、社内のシステムの内、Eコマースに対してLinkerdを導入したという部分だ。背景の説明としてアディダスのEコマースの成長が著しいということを、2006年と2022年の売上から解説した。ここでは売上が1億ユーロから4億ユーロに増加していることを示した上で、そのプラットフォームとしてKubernetesが最初に挙げられている。
そしてその成長を支えるプラットフォームを説明するために使ったのが以下のスライドだ。ここでは中核のコンテナの部分にKubernetes、データ分析としてKafka、AWSをランディングページとして使い、オブザーバービリティ、CI/CD、セキュリティとそれぞれの領域に使われているソフトウェアのロゴが並んでいる。インターネットからのトラフィックを受け付ける部分にはKongのAPI Gateway、認証にはCert Manager、オブザーバービリティにはGrafana、そしてセキュリティにはVenafiなどが確認できる。
中核となるLinkerdについては、Kong API Gateway(NGINX)を経てLinkerdがサービスメッシュを実装していることがわかる。
また認証情報の部分にはVenafiが使われていることが何度も語られているが、Venafiは「マシンアイデンティティ管理の発案者」というタグラインで説明されている認証情報管理の企業だ。アディダスの認証の多くの部分をカバーしているように見えるが、ここでは深い解説はされなかった。
●参考:Venafiの公式サイト
またオブザーバービリティについては、LinkerdからPrometheus経由で採取されたデータがKafka経由で集約され、Grafanaで可視化されるというシステムのようだ。
またトレーシングについてもOpenTelemetryを使って収集されていることがわかる。ログに関しては特に説明がなかったが、Kafkaの中で分析されるファストデータという扱いなのだろうか。
ここからLinkerdの導入に伴って「コミュニティへの貢献」というタイトルのスライドで語られているのは、発見したバグに関する内容だ。RSAの認証情報がLinkerdでエラーになったこと、マルチテナントにおいてLinkerdが過剰な権限を要求する状況だったこと、そしてCert ManagerのCLIに必要な機能が不足していたことなどを挙げて、それらを解消する修正をコミュニティに対して行ったという意味だろう。
コミュニティに対する貢献という部分は次のスライドでも強調されている。コミュニティの中でコミュニケーションを取ろう、Pull Requestを送ろう、そして失敗談を公開しようなどが挙げられている。特に失敗談については、失敗したことそのものよりも「そこからどのように挽回したのか?」がクラウドネイティブなシステムにおいては最も重要なポイントだろう。
そしてアディダスの次世代のEコマースプラットフォームであるCommerce Nextについて解説を行った。ここでもLinkerdが重要なコンポーネントとして活用されることが語られているが、Linkerd活用の一番大きなポイントとして最初に挙げられているのがオブザーバービリティという部分が興味深い。Linkerdが容易に導入、運用できるという点はすでに当たり前ということだろう。
次のスライドでは、Linkerdの機能的な部分ではなく組織的な側面に関する内容になっていることに注目したい。
ここでは数多く存在するプロジェクト、アプリケーションについて1四半期に1サービスをLinkerd化することを目標に挙げていると解説し、チーム構成も2名という最小構成でしかも専任ではないということを解説している。最後の部分は「Linkerd.io/inject」というアノテーションを追加するだけでLinkerdを使い始めることができることが示されている。ここでやっと簡単に導入できることを解説したが、Linkerd Dayに参加するエンジニアにとっては当たり前過ぎる内容だったのかもしれない。
このスライドではLinkerd導入による効果を解説しているが、オブザーバービリティは向上したがまだ全体のシステムをカバーできていないことが示されている。しかしパフォーマンスに関するインサイトは獲得できたこと、メトリクス、アラートの獲得、リトライの実装などが効果として得られたと解説している。
次世代Eコマースプラットフォームにおいてまだ実現できていないこととして、クラスター間のコミュニケーション、トラフィックスプリット、レートリミット、サーキットブレーカーなどが挙げられている。トラフィックスプリットについてはChaos Monkeyの名前が挙げられていることから、カオスエンジニアリングの応用も視野に入っているようだ。
最後にまとめとしてLinkerd導入については2名のエンジニアが15%の時間を使うだけで可能となったこと、オブザーバービリティが向上したこと、将来のサーキットブレーカー、クラスター間のフェイルオーバーなどの実装についての知識が得られたことに加えて、コスト削減が挙げられていることに注目したい。まだアディダスが思う完成型には届いていないものの、そこに至る道筋は見えているということを示しているまとめとなった。
全体的にすでにLinkerdを使っているユーザーにとっては目新しいことがない内容だったかもしれないが、2名という最小チームで15%の時間を使って四半期に1サービスずつ導入するという慎重な進め方でも確実に効果が出るという部分は、サービスメッシュ導入をためらっているエンジニアの後押しをする内容だったと言えるのではないだろうか。
マルチクラスターのコミュニケーションをLinkerdによって行いたいというニーズは確実に存在しているようで、実際今回のLinkerd Dayでは「Cost-Efficient Multi-Cluster Monitoring with Prometheus, Grafana & Linkerd」と題されたセッションで解説が行われている。
●参考:Cost-Efficient Multi-Cluster Monitoring with Prometheus, Grafana & Linkerd
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- KubeCon NA 2021からサービスメッシュの2セッションを紹介
- KubeCon共催のLinkerd Dayからマルチクラスターモニタリングに関するセッションを紹介
- eBPF Summit開催 IsovalentのCEOなどによるDay 1のキーノートを紹介
- KubeCon Europe 2023から、Linkerdの最新情報とeBPFがサービスメッシュに使えない理由を解説したセッションを紹介
- KubeCon EU、Linkerdでマルチクラスターを実装するセッションを紹介
- KubeCon共催のLinkerd Dayからノルウェーの労働福祉局がオンプレからクラウドに移行したセッションを紹介
- CloudNative Days Fukuoka 2023、GoogleによるGKE上のGateway APIの解説セッションを紹介
- サービスメッシュのLinkerd 2.9を紹介。EWMA実装のロードバランサー機能とは
- サービスメッシュのLinkerdの最新リリースと将来計画をBuoyantのCEOが解説
- KubeCon+CloudNativeCon EU 2021、コロナ禍に対抗するシステムを支えるLinkerd