サンプルアプリケーションをデプロイして AWS Distro for OpenTelemetry コレクターをテストする - Amazon EKS

サンプルアプリケーションをデプロイして AWS Distro for OpenTelemetry コレクターをテストする

サンプルアプリケーションは、OTLP データを生成して、AWS Distro for OpenTelemetry (ADOT) コレクターのデプロイ により設定された任意のサービスに送信します。クラスター内でデータを生成できるアプリケーションが既に実行されている場合、このステップはオプションです。アプリケーションのドキュメントを参照し、データが正しいエンドポイントに送信されていることを確認します。

サンプルアプリケーションとトラフィックジェネレーターは、主に ADOT コレクターリポジトリにある例から取得されたものです。docker-compose.yaml ファイルは Kompose ツール を使用して Kubernetes リソースに変換されています。

トラフィックジェネレータとサンプルアプリケーションを適用するには、次のステップに従います。前提条件を満たしており、「AWS Distro for OpenTelemetry (ADOT) Operator をインストールする」の手順を完了していることを確認してください。

  1. traffic-generator.yaml ファイルをコンピュータにダウンロードします。GitHub で ファイルを表示 することもできます。

    curl -O https://raw.githubusercontent.com/aws-observability/aws-otel-community/master/sample-configs/traffic-generator.yaml
  2. traffic-generator.yaml で 2 番目の kind 値がお使いのモードを反映していることを確認します。詳細については、「ADOT Collector のインストール手順」を参照してくださいGitHub。

    kind: Deployment

    traffic-generator.yaml は Kubernetes サービス sample-app:4567 に対して http の呼び出しを行います。これにより、トラフィックジェネレーターが 4567 のポートでサンプルアプリケーションとやり取りできるようになります。sample-app は、sample-app Pod の IP アドレスに解決されます。

  3. traffic-generator.yaml をクラスターに適用してください。

    kubectl apply -f traffic-generator.yaml
  4. sample-app.yaml ファイルをコンピュータにダウンロードします。GitHub で ファイルを表示 することもできます。

    curl -O https://raw.githubusercontent.com/aws-observability/aws-otel-community/master/sample-configs/sample-app.yaml
  5. sample-app.yaml で、以下をお客様の AWS リージョン に置き換えます。

    value: "<YOUR_AWS_REGION>"

    次のアクションは、sample-app.yaml によって定義されています。

    • サービスリソースは、トラフィックジェネレーターの HTTP リクエストを許可するように port: 4567 を設定します。

    • デプロイメントリソースは、いくつかの環境変数を設定します。

      • トラフィックジェネレーターからの HTTP リクエストに対して、LISTEN_ADDRESS0.0.0.0:4567 に設定されます。

      • OTEL_EXPORTER_OTLP_ENDPOINThttp://my-collector-collector:4317 という値を持っています。my-collector-collector は、サンプルアプリケーションが 4317 のポートで ADOT コレクターとやり取りできるようにする Kubernetes サービスの名前です。ADOT コレクターの設定 (0.0.0.0:4317) では、ADOT コレクターがエンドポイントからメトリクスとトレースを受信します。

  6. sample-app.yaml でご使用のコレクターサービス名と一致しない場合、OTEL_EXPORTER_OTLP_ENDPOINTvalue を更新してください。

    たとえば、X-Ray は http://my-collector-collector:4317http://my-collector-xray-collector:4317 に置き換える必要があります。

  7. sample-app.yaml をクラスターに適用してください。

    kubectl apply -f sample-app.yaml