クラウドネイティブの「接続レイヤー」でのトラブルシューティングを制御 - TechRepublic

クラウドネイティブの「接続レイヤー」でのトラブルシューティングを制御 - TechRepublic
クラウドコンピューティング
画像: ShpilbergStudios/Adobe Stock

今週デトロイトで開催されている KubeCon は、プラットフォーム チームがいわゆる「Day 1」の課題から、K8s インフラストラクチャをより簡単に拡張および運用するために必要な「Day 2」の要件へと進化する中で、Kubernetes の導入に関して依然として問題点がどこにあるのかを常に示す指標となっています。

今年のKubeConでは、プラットフォームチームがクラウドネイティブの「接続レイヤー」と呼ばれることが増えているもののトラブルシューティングをどのように行うかが明確な焦点となっています。オープンソースのGrafanaとCiliumの統合により、このレイヤーの可観測性が向上します。

暗闇の中で働く

「API駆動型サービスの集合体として最新アプリケーションを構築するという方向への移行には多くのメリットがありますが、正直なところ、監視とトラブルシューティングの簡素化はその中に含まれていません」と、IsovalentのCEO、ダン・ウェンドランド氏は述べています。「ユーザーによる1回のクリックが、裏で数十、あるいは数百ものAPI呼び出しにつながる可能性がある世界では、基盤となる接続におけるあらゆる障害、過剰容量、遅延が、アプリケーションの動作に悪影響を及ぼす可能性があり、その検出と根本原因の特定は非常に困難です。」

参照: 採用キット: クラウド エンジニア (TechRepublic Premium)

そして、その厄介な詳細は数多く存在します。例えば、KubernetesはマルチテナントLinuxクラスターの各サービスに対してコンテナレプリカを作成するため、接続の問題が発生する場所を正確に特定することが非常に困難です。アプリケーション層とその基盤となるレイヤー7ネットワークの間では、クラウドネイティブな接続は抽象化の上に抽象化が積み重なり、トラブルシューティングすべきレイヤーが無限に存在します。また、K8sクラスターは数千もの異なるサービスをコンテナ化されたワークロードとして実行し、それらが絶えず作成と破棄を繰り返すため、膨大な量のノイズとエフェメラリティ(一時的な状態)への対処が求められます。

これは、低レベルのネットワーク カウンターや netstat や tcpdump などのツールへの直接アクセスが接続のトラブルシューティングにかつては一般的に行われ、IP が接続の送信元と送信先に関する情報を提供していた従来の VM 環境とはまったく異なるアーキテクチャです。

「静的アプリケーションの『昔』には、サーバーは専用のVLANやサブネット上の物理ノードまたはVMとして動作し、ワークロードのIPアドレスやサブネットは、特定のアプリケーションを識別するための長期的な意味のある方法であることがよくありました」とウェンドランド氏は言います。「つまり、IPベースのネットワークログやカウンターを分析して、アプリケーションの動作に関する意味のある情報を得ることができました。…Kubernetesクラスターの外部では、アプリケーション開発者がクラウドプロバイダーやその他のサードパーティの外部APIを使用する場合、これらの接続先に関連付けられたIPアドレスは接続試行ごとに変化することが多く、IPベースのログを使用して解釈することが困難でした。」

しかし、すべてが失われたわけではありません。eBPFベースのCiliumによって、プラットフォームチームにとっての救済が待ち受けているかもしれません。

CiliumとGrafanaによる可観測性の強化

Cilium は、すべての主要クラウド サービス プロバイダーの Kubernetes エンジンの事実上のコンテナ ネットワーク インターフェイスになりつつある CNCF インキュベーション プロジェクトであり、新しい接続レイヤーにカーネル レベルの可観測性を注入する eBPF の機能をベースに構築されています。

「CiliumはeBPFを活用し、すべての接続性観測データがIPアドレスだけでなく、ネットワーク接続の両側にあるアプリケーションの高レベルサービスIDにも関連付けられるようにしています」とウェンドランド氏は述べています。「eBPFはLinuxカーネル層で動作するため、この追加の観測性はアプリケーション自体の変更や、高負荷で複雑なサイドカープロキシの使用を必要としません。Ciliumは既存のワークロードの下に透過的に挿入され、Kubernetesクラスターの成長に合わせて水平方向にスケーリングします。」

本日KubeConにて、Grafana LabsとIsovalent(Ciliumの開発者やeBPF Linuxカーネルのメンテナーを含む創業者を擁する企業)は、CiliumとGrafanaの新たな統合を発表しました。このCiliumとGrafanaスタックの統合により、Kubernetes環境全体にわたるサービス接続の一貫した可観測性を求めるプラットフォームチームは、既存のGrafana可視化ツールを使用して、クラウドネイティブ接続レイヤー全体のロギング、トレース、メトリクスを統合できるようになります。

この 2 つのオープンソース テクノロジーの統合は、先月の Isovalent のシリーズ B 資金調達ラウンドにおける Grafana Labs の戦略的投資を受けて開始された共同エンジニアリング イニシアチブの始まりを示しています。

以前、「可観測性(オブザーバビリティ)」という言葉が、この言葉が生まれるずっと前から私たちが分析してきたメトリクス、ログ、トレースとほぼ同じものを指す、クールな新用語として台頭してきたように思われる、と論じました。しかし、このクラウドネイティブな接続性の問題は、プラットフォームチームにとってトラブルシューティングが特に困難な問題領域であることは明らかです。そして、この新しいeBPF駆動型のカーネルレベルのデータが、一貫性のある接続性データソースとして公開されたことで、今週のKubeConで議論される新たな可観測性のユースケースの可能性は非常に高いものになりそうです。

開示: 私は MongoDB で働いていますが、ここで表明されている意見は私自身のものです。

Tagged: