すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:NGINX Ingress controller トレーシングの有効化

最終更新日:Jun 22, 2026

Container Service for Kubernetes (ACK) では、NGINX Ingress コントローラーのトレーシングを有効にし、トレースデータをManaged Service for OpenTelemetry へ送信できます。 Managed Service for OpenTelemetry は、このトレースデータをリアルタイムで集約、処理、保存します。 このサービスは、NGINX Ingress コントローラーのトラブルシューティングや診断のために、詳細なトレースやリアルタイムのトポロジーマップといったモニタリングデータを生成します。

重要

Ingress-NGINX オープンソースプロジェクトは、2026年3月をもってメンテナンスが終了します。 これに伴い、Container Service for Kubernetes も NGINX Ingress controller のメンテナンスを終了します。 続行する前に、リスクをご理解ください。 詳細については、「NGINX Ingress controller コンポーネントのメンテナンス終了に関する製品発表」をご参照ください。

前提条件

バージョン互換性

NGINX Ingress コントローラーでは、バージョンによってトレーシングの対応状況が異なります。そのため、お使いのバージョンに適した設定方法を選択する必要があります。

NGINX Ingress コントローラーのバージョン

OpenTelemetry

OpenTracing

≥ v1.10.2-aliyun.1

対応

非対応

v1.9.3-aliyun.1

対応

対応

v1.8.2-aliyun.1

対応

対応

< v1.8.2-aliyun.1

非対応

対応

操作手順

お使いの NGINX Ingress コントローラーのバージョンに対応する手順を選択します。

OpenTelemetry

ステップ1:エンドポイントの取得 Managed Service for OpenTelemetry

新しいコンソール

  1. Managed Service for OpenTelemetry コンソールにログインします。左側のナビゲーションペインで、アクセスセンターをクリックします。

  2. オープンソースフレームワーク セクションで、[OpenTelemetry] カードをクリックします。

  3. 表示される[OpenTelemetry] パネルで、データ報告先のリージョンを選択します。

  4. gRPC レポート方式のエンドポイントを記録します。ot-新版-中文.jpg

    説明

    NGINX Ingress コントローラーが、お客様の Managed Service for OpenTelemetry 統合と同じ Alibaba Cloud リージョンにデプロイされている場合は、VPC エンドポイントを使用します。それ以外の場合は、パブリックエンドポイントを使用します。

以前のコンソール

  1. Managed Service for OpenTelemetry コンソールにログインします。

  2. 左側のナビゲーションペインで、クラスター設定 をクリックします。表示されたページで、AccessPointFeature タブをクリックします。

  3. ページの上部で、接続先のリージョンを選択します。

  4. クラスター情報 セクションで、[トークンの表示] スイッチをオンにします。[クライアント] セクションで [OpenTelemetry] をクリックし、gRPC レポート方式のエンドポイントを記録します。

    ot-旧版-中文.jpg

    説明

    NGINX Ingress コントローラーが、お客様の Managed Service for OpenTelemetry 連携と同じ Alibaba Cloud リージョンにデプロイされている場合は、VPC エンドポイントを使用します。それ以外の場合は、パブリックエンドポイントを使用します。

ステップ 2: NGINX Ingress コントローラーの設定Managed Service for OpenTelemetry

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のウィンドウで、[ワークロード] > [デプロイ] を選択します。

  3. Deployments ページで、[名前空間] を kube-system に設定します。 nginx-ingress-controller を検索し、[編集] をクリックします。

  4. 編集 ページの上部で nginx-ingress-controller コンテナを選択し、環境変数 タブで Add をクリックして次の環境変数を設定します。

    タイプ

    変数キー

    値/値の取得元

    説明

    カスタム

    OTEL_EXPORTER_OTLP_HEADERS

    authentication=<authentication token>

    手順1:エンドポイントの取得 (Managed Service for OpenTelemetry) で取得した認証トークンを使用します。例: authentication=bfXXXXXXXe@7bXXXXXXX1_bXXXXXe@XXXXXXX1

    image

    変数を追加したら、更新 ページの右側パネルで 編集 をクリックします。表示されたダイアログボックスで、OK をクリックします。

  5. 左側のナビゲーションペインで、設定 > ConfigMap を選択します。

  6. 構成 ページで、名前空間を kube-system に設定します。nginx-configuration を検索し、nginx-configuration ConfigMap の 編集 列にある 操作 をクリックします。

  7. 編集 パネルで 追加 をクリックし, 次の設定を追加して、OK をクリックします。

    パラメーター

    説明

    enable-opentelemetry

    OpenTelemetry トレーシングを有効にします。

    • true: トレーシングを有効にします。

    • false: トレーシングを無効にします。

    true

    main-snippet

    -

    env OTEL_EXPORTER_OTLP_HEADERS;

    env OTEL_EXPORTER_OTLP_HEADERS;

    otel-service-name

    サービス名。

    カスタム。

    nginx-ingress

    otlp-collector-host

    gRPC 報告エンドポイントのドメイン名。

    手順1:エンドポイントの取得 (Managed Service for OpenTelemetry) で取得した VPC エンドポイントを使用します。http:// プレフィックスとポート番号を削除します。例: tracing-analysis-XX-XX-XXXXX.aliyuncs.com

    tracing-analysis-XX-XX-XXXXX.aliyuncs.com

    otlp-collector-port

    gRPC 報告エンドポイントのポート。

    実際の値を入力します。

    8090

    opentelemetry-trust-incoming-span

    他のサービスからの受信トレースを信頼するかどうかを指定します。

    • true: 信頼を有効にします。

    • false: 信頼を無効にします。

    true

    opentelemetry-operation-name

    トレーススパンの形式。

    HTTP $request_method $service_name $uri

    HTTP $request_method $service_name $uri

    otel-sampler

    サンプリング戦略。

    パラメーターの詳細については、「opentelemetry」をご参照ください。

    TraceIdRatioBased

    otel-sampler-ratio

    サンプリングレート。

    値は 0 から 1 の間で、小数点以下 2 桁までにする必要があります。値 0 はリクエストがサンプリングされないことを意味し、1 はすべてのリクエストがサンプリングされることを意味します。

    パラメーターの詳細については、「opentelemetry」をご参照ください。

    0.1

    otel-sampler-parent-based

    アップストリームサービスからサンプリング決定を継承するかどうかを指定します。

    • false (デフォルト): アップストリームのサンプリング決定を継承しません。サンプリングは otel-sampler および otel-sampler-ratio パラメーターに基づいています。

    • true: アップストリームのサンプリング決定を継承します。otel-sampler および otel-sampler-ratio パラメーターは無視されます。

    パラメーターの詳細については、「opentelemetry」をご参照ください。

    false

ステップ3: トレースデータの表示 Managed Service for OpenTelemetry

  1. Managed Service for OpenTelemetry コンソールにログインします。

  2. 左側のナビゲーションペインで、アプリケーションリスト をクリックします。

  3. アプリケーションリスト ページの上部でリージョンを選択し、nginx-ingress アプリケーション名をクリックします。

    • アプリケーション概要 タブで、リクエスト数やエラー数などのメトリクスを確認できます。应用概览-中.jpg

    • 呼び出しチェーン分析 タブで、トレース一覧や平均所要時間などの情報を確認できます。调用链分析-中.jpg

    • 呼び出しチェーン分析 タブで、トレース ID をクリックすると、トレース詳細を表示できます。trace详情-中.jpg

OpenTracing

ステップ 1: エンドポイントの取得 Managed Service for OpenTelemetry

新しいコンソール

  1. Managed Service for OpenTelemetry コンソールにログオンします。 左側のナビゲーションペインで、アクセスセンター をクリックします。

  2. オープンソースフレームワーク セクションで、[Zipkin] カードをクリックします。

    説明

    取得するエンドポイントは、使用するクライアントによって異なります。このトピックでは Zipkin を例として使用します。

  3. 表示される [Zipkin] パネルで、データを報告したいリージョンを選択します。

  4. エンドポイント情報を記録します。zipkin-新版-中.jpg

    説明

    NGINX Ingress コントローラーが Managed Service for OpenTelemetry 統合と同じ Alibaba Cloud リージョンにデプロイされている場合は、VPC エンドポイントを使用します。それ以外の場合は、パブリックエンドポイントを使用します。

以前のコンソール

  1. Managed Service for OpenTelemetry コンソールにログインします。

  2. 左側のナビゲーションペインで、クラスター設定 をクリックします。表示されたページで、AccessPointFeature タブをクリックします。

  3. ページの上部で、接続先のリージョンを選択します。

  4. クラスター情報 セクションで、[トークンの表示] スイッチをオンにします。[クライアント] セクションで [Zipkin] をクリックし、エンドポイント情報を記録します。

    zipkin-旧版-中文.jpg

    説明

    NGINX Ingress コントローラーが、お使いの Managed Service for OpenTelemetry 統合と同じ Alibaba Cloud リージョンにデプロイされている場合は VPC エンドポイントを使用し、それ以外の場合はパブリックエンドポイントを使用します。

ステップ 2: NGINX Ingress controller の設定Managed Service for OpenTelemetry

  1. ACKコンソールにログインします。 左側のナビゲーションウィンドウで、[クラスター] をクリックします。

  2. [クラスター] ページで、管理するクラスターの名前をクリックします。 左側のナビゲーションウィンドウで、[設定] > [設定] を選択します。

  3. 構成 ページで、名前空間を kube-system に設定します。 nginx-configuration を検索し、nginx-configuration ConfigMap の 編集 列の 操作 をクリックします。

  4. 編集 パネルで、追加 をクリックし次の設定を追加して [OK] をクリックします。

    パラメーター

    説明

    enable-opentracing

    トレーシングを有効にするかどうかを設定します。

    • true: トレーシングを有効にします。

    • false: トレーシングを無効にします。

    true

    zipkin-service-name

    サービス名。

    カスタム。

    nginx-ingress

    zipkin-collector-host

    報告エンドポイントのドメイン名。

    手順1:エンドポイントの取得 (Managed Service for OpenTelemetry) で取得したエンドポイントを変更します。http:// プレフィックスを削除し、末尾に疑問符 ? を追加します。例:

    • 元のエンドポイント: http://tracing-analysis-dc-hz-internal.aliyuncs.com/adapt_******_******/api/v1/spans

    • 変更後の値: tracing-analysis-dc-hz-internal.aliyuncs.com/adapt_******_******/api/v1/spans?

    tracing-analysis-dc-hz-internal.aliyuncs.com/adapt_******_******/api/v1/spans?

    opentracing-trust-incoming-span

    他のサービスやシステムからのトレースを信頼するかどうかを設定します。

    • true: 信頼を有効にします。

    • false: 信頼を無効にします。

    true

    zipkin-sample-rate

    サンプリングレート。

    値は 0 から 1 の間で、小数点以下 2 桁までにする必要があります。値 0 はリクエストがサンプリングされないことを意味し、1 はすべてのリクエストがサンプリングされることを意味します。

    0.1

ステップ 3:トレースデータの表示 Managed Service for OpenTelemetry

  1. Managed Service for OpenTelemetry コンソールにログインします。

  2. 左側のナビゲーションペインで、アプリケーションリスト をクリックします。

  3. アプリケーションリスト ページの上部で、 リージョンを選択し、nginx アプリケーション名をクリックします。

  4. アプリケーション詳細ページの左側のナビゲーションペインで、インターフェースの呼び出しをクリックし、右側の領域でトレース情報を確認します。

    • 概要 タブには、トレース トポロジーが表示されます。3.jpg

    • [トレース] タブをクリックすると、アプリケーションの実行時間が最も長いトレースを最大 100 件表示できます。 トレースデータの詳細については、「インターフェイス呼び出し」をご参照ください。トレースリンク

    • [トレース] タブで、Trace ID をクリックすると、トレース詳細が表示されます。2.jpg

トレース伝播プロトコルの変更 (オプション)

NGINX Ingress コントローラーのトレーシングに OpenTelemetry を使用する場合、OpenTelemetry はデフォルトで W3C Trace Context 形式のトレースコンテキストを認識し、下流に伝播します。フロントエンドアプリケーションとバックエンドアプリケーションで Jaeger や Zipkin など別のプロトコルを使用している場合は、フロントエンドアプリケーション、NGINX Ingress コントローラー、バックエンドアプリケーションのトレースを関連付けるために、OpenTelemetry のトレース伝播プロトコルを変更する必要があります。このトピックでは、NGINX Ingress コントローラーで使用される OpenTelemetry のトレース伝播プロトコルを変更する方法について説明します。

  1. ステップ 2 のサブステップ 4 の設定に加えて、OTEL_PROPAGATORS 環境変数を追加します。変更を保存し、nginx-ingress-controller を再デプロイします。

    変数キー

    説明

    OTEL_PROPAGATORS

    tracecontext,baggage,b3,jaeger

    伝播フォーマットです。詳細については、「Specify the propagation header format for OpenTelemetry」をご参照ください。

  2. ステップ 2 のサブステップ 7 の設定に加えて、main-snippet 設定を変更し、OTEL_PROPAGATORS 環境変数を適用します。

    パラメーター

    説明

    main-snippet

    env OTEL_EXPORTER_OTLP_HEADERS; env OTEL_PROPAGATORS;

    環境変数を読み込みます。

関連情報

  • Managed Service for OpenTelemetry の詳細については、「Managed Service for OpenTelemetry とは」をご参照ください。

  • ACK の詳細については、「Container Service for Kubernetes (ACK) とは」をご参照ください。

  • nginx-configuration ConfigMap で必要なフィールドは、トレーシングソリューション (Zipkin、Jaeger、SkyWalking など) によって異なります。これらのソリューションと Managed Service for OpenTelemetry との統合の詳細については、「準備」をご参照ください。