Application Load Balancer (ALB) は、Managed Service for OpenTelemetryと統合されており、リクエストソース、ノード、応答時間など、ALBのトレースをマッピングおよび分析できます。 Managed Service for OpenTelemetryは、サービスエラーをすばやく特定して管理するのに役立ちます。
背景情報
Managed Service for OpenTelemetryには、トレースのマッピング、リクエスト数の計算、トレーストポロジとアプリケーションの依存関係の分析に使用できるさまざまなツールが用意されています。 Managed Service for OpenTelemetryは、開発者が分散アプリケーションアーキテクチャのパフォーマンスの問題を迅速に分析および診断するのに役立ちます。 ALBはOpenTelemetryのマネージドサービスと統合されています。 ALBインスタンスのManaged Service for OpenTelemetryを有効にして、エンドツーエンドのトレース分析を実行できます。 詳細については、「OpenTelemetryのマネージドサービスとは 」をご参照ください。
トレースデータは、サービス呼び出しや応答時間など、単一のリクエストに関する処理情報を記録します。
各トレースは、トレースデータのエントリを含む。 ほとんどの場合、トレースは、分散システムにおけるトランザクションまたはプロセスの実行を表す。 OpenTracing標準では、トレースは複数のスパンで構成される有向非巡回グラフ (DAG) です。 各スパンは、トレース内で継続的に実行される名前付きの時限セグメントを表します。 詳細については、「トレースとは何ですか? 」をご参照ください。
注意
標準およびWAF対応のALBインスタンスのみが、OpenTelemetryのマネージドサービスをサポートしています。 Basic ALBインスタンスは、OpenTelemetryのManaged Serviceをサポートしていません。
トレースをオンにすると、Managed Service for OpenTelemetryとSimple Log Serviceが自動的にアクティブ化されます。 データレポート、トレースストレージ、およびSimple Log Serviceに対して課金されます。 詳細については、「課金の概要」および「課金項目」をご参照ください。
次の表に、Managed Service for OpenTelemetryがサポートされているリージョンを示します。
地域
リージョン
中国
中国 (杭州) 、中国 (上海) 、中国 (深セン) 、中国 (成都) 、中国 (青島) 、中国 (北京) 、中国 (張家口) 、中国 (ウランカブ) 、中国 (香港) 、中国 (広州) 、および中国 (河源)
アジア太平洋
シンガポール、マレーシア (クアラルンプール) 、日本 (東京) 、インドネシア (ジャカルタ)
ヨーロッパとアメリカ
英国 (ロンドン) 、ドイツ (フランクフルト) 、米国 (バージニア) 、米国 (シリコンバレー)
OpenTelemetryのマネージドサービスの無効化に関する注意事項:
ALBインスタンスのManaged Service for OpenTelemetryを無効にすると、Simple Log Serviceは有効のままになります。 Simple Log Serviceを使用しない場合は、手動で無効にします。
Managed Service for OpenTelemetryを使用している場合、Simple Log Serviceを無効にするとサービスが利用できなくなります。 慎重に進んでください。
ALBインスタンスのすべてのリスナーに対してManaged Service for OpenTelemetryを無効にすると、ALBはトレースデータをManaged Service for OpenTelemetryに配信しなくなります。
前提条件
ALBインスタンスが作成され、ALBインスタンスのサーバーグループが作成されます。 詳細については、「ALBインスタンスの作成」および「サーバーグループの作成と管理」をご参照ください。
ALBインスタンスのリスナーが作成され、リスナーはサーバーグループに関連付けられています。 詳細については、「HTTPリスナーの追加」をご参照ください。
Elastic Compute Service (ECS) インスタンスがバックエンドサーバーとしてALBインスタンスに追加されます。 NGINXアプリケーションがECSインスタンスにデプロイされ、ECSインスタンスがサーバーグループに追加されます。
ECSインスタンスの作成方法の詳細については、「ウィザードを使用したインスタンスの作成」をご参照ください。
バックエンドサーバーをサーバーグループに追加する方法の詳細については、「バックエンドサーバーの追加」をご参照ください。
次のコードブロックは、ECSインスタンスにアプリケーションをデプロイする方法を示しています。
手順1: OpenTelemetryのマネージドサービスの有効化
ALBコンソールにログインします。
上部のナビゲーションバーで、ALBインスタンスが存在するリージョンを選択します。
インスタンス ページで、管理するALBインスタンスのIDをクリックします。
[リスナー] タブで、管理するリスナーのIDをクリックします。
[リスナーの詳細] タブで、[トレース] セクションの [トレース] をオンにします。
[トレースの有効化] ダイアログボックスで、パラメーターを設定します。
パラメーター
説明
サービスの有効化
説明Alibaba CloudアカウントでManaged Service for OpenTelemetryが有効化されている場合は、この手順をスキップしてください。
OpenTelemetryのマネージドサービスの有効化
サービスの利用規約を選択し、OpenTelemetryの管理対象サービスの有効化を有効にします。
アクセスログの作成
説明アクセスログが存在する場合は、この手順をスキップします。
プロジェクト
リソースの分離と管理に使用するSimple Log Serviceプロジェクトを選択します。
[プロジェクトの選択]: ドロップダウンリストから既存のプロジェクトを選択します。
プロジェクトの作成: フィールドにプロジェクト名を入力します。
ログストア
Simple log Serviceでログデータの収集、保存、クエリに使用するLogstoreを選択します。
Logstoreの選択: ドロップダウンリストから既存のLogstoreを選択します。
Logstoreの作成: フィールドにLogstore名を入力します。 プロジェクトの作成を選択した場合は、Logstoreの作成も選択する必要があります。
トレースの設定
トレースタイプ
トレースのタイプを選択します。
デフォルト値はXtraceで、OpenTelemetryのマネージドサービスが有効になり、トレースが有効になることを指定します。
サンプリングレート
設定可能な値は 1~100 です。 デフォルト値:100
サンプリングレートを調整して、レポートするトレースの数を指定します。
サービス連携ロールの作成に関する注意事項
この操作を実行すると、サービスにリンクされたロールが自動的に作成されます。 ALBは機能を実装する役割を引き受けます。
ステップ2: トレースデータの表示
端末にログオンして、クライアントとサーバー間のネットワーク接続をテストします。 詳細については、「ALBインスタンスを使用してIPv4サービスを提供する」および「ALBを使用してIPv6サービスの負荷を分散する」をご参照ください。
ALBコンソールにログインします。
インスタンス ページで、管理するALBインスタンスのIDをクリックします。
[リスナー] タブで、管理するリスナーのIDをクリックします。
[リスナーの詳細] タブの [トレース] セクションで、[トレース分析] の右側にある [表示] をクリックして、OpenTelemetryのマネージドサービスコンソールに移動します。
[Trace Explorer] ページでは、ALBインスタンスのバックエンドアプリケーションに送信されたリクエストのトレースデータ (トレース、呼び出し回数、フルリンク集計など) を分析できます。 詳細については、「トレースの分析」をご参照ください。