LMEnvisionを使用したIstio管理のマイクロサービスの監視
LogicMonitor + Catchpoint: 自律型ITの新時代へ
最新のブログ、ホワイトペーパー、電子ガイドなどを直接受信ボックスにお届けします。
ビデオはまもなく始まります
LM Envision は、包括的な監視機能と可観測性を統合した、LogicMonitor の AI 搭載ハイブリッド可観測性プラットフォームです。このブログ投稿では、Istio サービス メッシュを LogicMonitor APM と統合して、アプリケーション トレースを LM Envision 内で使用し、アプリケーション パフォーマンスをより適切に理解、最適化、トラブルシューティングする方法を説明します。
サービスメッシュにより、組織はマイクロサービスを保護および接続できるようになり、マイクロサービスを監視するための優れたソースが提供されます。 これにより、分散ソフトウェアシステム内のすべてのサービス間通信を管理する責任がなくなります。 サービスメッシュがそれを行うことができる方法は、ネットワークプロキシの配列を介することです。 基本的に、サービス間の要求は、サービスと並行して実行されるが、インフラストラクチャ層の外部にあるプロキシを介してルーティングされます。

イスティオ は、信頼性の高いサービス間接続の維持を支援するように設計されたオープンソースのサービスメッシュです。 Istioは、Kubernetesで非常にうまく機能する最も人気のあるサービスメッシュです。 これは、IBM、Google、Lyftによって最初に開発されたサービスメッシュのオープンソース実装です。 分散アプリケーションに透過的に階層化し、トラフィック管理、セキュリティ、可観測性などのサービスメッシュのすべての利点を提供できます。 Istioは、の拡張バージョンを展開することで機能します 代理人としての使節 サイドカーとしてすべてのマイクロサービスに。

プロキシのネットワークはデータプレーンを構成し、これらのプロキシの構成と管理はコントロールプレーンから行われます。コントロールプレーンは基本的にサービスメッシュの頭脳です。 実行時にデータプレーン内のEnvoyプロキシに検出、構成、および証明書管理を提供します。
ほとんどのサービスメッシュ実装と同様に、Istioは既存のアプリケーションコンテナをサイドカーと呼ばれるプロキシコンテナで補完します。 サイドカープロキシは、サービスコンテナに出入りするネットワークトラフィックをインターセプトし、専用ネットワークを介してトラフィックを再ルーティングする特別に構成されたEnvoyインスタンスです。Istioは、Envoyプロキシを介して分散トレースを生成し、次のような多数のトレースバックエンドをサポートします。 ジプキン, イェーガー、OTELなど。
Envoyの助けを借りたIstioは、HTTPZipkin形式でLMOTELCollectorにトレースを送信し、LMOTELCollectorはZipkinレシーバーの助けを借りてそれらのトレースを受信します。 LMOTELコレクターは、エクスポーターを使用して、istioから受信したトレースをLogicMonitorバックエンドにエクスポートします。

このセットアップの一環として、LMOTELコレクターとIstioをインストールします。
ステップ-1LMOTELコレクターのセットアップと構成:

helm repo add logicmonitor "https://logicmonitor.github.io/k8s-helm-charts"
helm install -n logicmonitor \
--create-namespace \
--set lm.account=AccountName \
--set lm.bearer_token=xxxxx \
--set lm.otel_name="istio-eks-poc" \
--set replicaCount=1 \
--set-file=external_config.lmconfig=/Path/To/config.yaml \
--set service.ports.zipkin=9411 \
lmotel logicmonitor/lmotelこのコマンドでは、Zipkinレシーバーポートを公開し、上記の手順でダウンロードした構成ファイルのパスを定義しました。
ステップ-2Istioの設定
Istioctlを使用してIstioをインストールします。 あなたは参照することができます ドキュメント Istioctlをインストールします。
istioctl install \
--set meshConfig.accessLogFile=/dev/stdout \
--set values.global.tracer.zipkin.address=lmotel-svc.logicmonitor:9411## Here we are labeling default namespacekubectl label namespace default istio-injection=enabled
kubectl get ns --show-labelsRef-1: https://istio.io/latest/docs/examples/bookinfo/
Ref-2:https://github.com/GoogleCloudPlatform/microservices-demo
上記のすべての手順を実行すると、アプリケーションがトレースを生成するとすぐに、以下に示すようにLMプラットフォームに表示されます。

LM Envision内でこれらのアプリケーショントレースを使用して、アプリケーションのパフォーマンスをよりよく理解し、最適化する領域を特定できます(例えば トレース内にまたがるのに最も時間がかかります)、アプリケーションのパフォーマンスが最適ではない場合に事前に通知を受け取ります(例えば アプリケーションの期間とエラーに対して動的なしきい値ベースのアラートを設定して、異常がいつ発生したかを把握し、トラブルシューティング時間を短縮することができます(例えば スパンログは、期間が通常より長い理由に関するコンテキストを提供する場合があります)。
4. トラブルシューティング:
kubectl -n istio-system edit configmap istio5.参照:
© LogicMonitor 2026 | 無断複写・転載を禁じます。 | ここで言及されているすべての商標、商号、サービス マーク、およびロゴは、それぞれの会社に帰属します。