Engine(GKE)で構築しています。外部からアクセスした時にレスポンスタイムが突発的にスパイクすることがわかりました。Grafanaで可視化すると以下のようです。ネットワーク実験したのですが、どうやら外部クライアントからアクセスしたときに起きるようです。Pod間の通信では問題がありませんでした。今回はLinkerdでサービスメッシュを構築して、実際に何が起きているのかを調査しようと思います。Grafanaで原因がわかりました。公式ページでは以下のように書いてあります。installation日本語にするとLinkerdはクラスタに及ぶインストールなしで任意のKubernetesサービスインスタントなGrafanaダッシュボードとCLIでバッキングツールを提供するです。Meshを構築するものです。特徴ランタイムをデバックしやすく、可観測しやすく、信頼性が高く、セキュアにできます。以下のような特徴があります。アプリケーションのコードは一切変えなくていいです。実行可能なサービスメトリクスの収集ゼロ設定、すぐインストールできるインクリメンタルに構築できるデザイン軽量であるRustで書かれていてクラウドネイティブであるArchitecture三つの柱があります。Planeデフォルトではlinkerdnamespaceで構築される。Planeまず、最初にインストールするようになる。四つの構成要素がある。いろんなダッシュボードを提供する。PrometheusLinkerdメトリクスを収集し、保存している。Proxyのメトリクスも保存している。Grafana全体のメトリクスからPod一つ一つの情報も提供する。Plane主にDataを提供する領域だと思えばいいと思います。Proxy軽量なSidecarプロキシであり、すべてのPodに付随しないといけない。CLIコマンドで追加することができる。クラスタ情報を取得できているかチェックcredentialなど設定など色々あると思うので、チェックすることができます。以下のようにいろんな項目をチェックすることができます。[ok]okが出たので次に進みましょう。Planeをインストール以下のコマンドでインストールします。namespaceはlinkerdです。最初にnamespaceがないことを確認しましょう。先ほどのcheckコマンドでも以下の項目がありましたが、確認してみます。exist...........[ok]ここではnamespaceを出力してみます。Grafanaを使っていたためです。なくても気にしないでください。Linkerdがインストールされていないことが確認できたので、以下のコマンドでインストールします。-1分か2分ぐらいかかりますが、終了後は以下のコマンドでインストールが成功しているかチェックできます。最初はcontrollerがクラッシュしていたので心配でしたが、無事いけました。エラーが出てインストールできない場合もあります。そのときはCluseterRoleを作ることで解決することができます。account)Podを取得します。