Envoy 設定変数 - AWS App Mesh

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Envoy 設定変数

次の環境変数を使用して、App Mesh 仮想ノードタスクグループの Envoy コンテナを設定します。

注記

App Mesh Envoy 1.17 は Envoy の v2 xDS API をサポートしていません。Envoy 設定ファイルを受け入れる Envoy 設定変数を使用している場合、最新の v3 xDS API に更新する必要があります。

必須の変数

次の環境変数は、すべての App Mesh Envoy コンテナで必要です。この変数は、Envoy イメージのバージョン 1.15.0 以降でのみ使用可能です。以前のバージョンのイメージを使用している場合は、代わりに APPMESH_VIRTUAL_NODE_NAME 変数を設定する必要があります。

APPMESH_RESOURCE_ARN

Envoy コンテナをタスクグループに追加する場合は、この環境変数を、タスクグループが表す仮想ノードまたは仮想ゲートウェイの ARN に設定します。例えば、ARN には、次のリストがあります。

  • 仮想ノード – arn:aws:appmesh:Region-code 111122223333:mesh/meshName/virtualNode /virtualNodeName

  • 仮想ゲートウェイ – arn:aws:appmesh:Region-code 111122223333:mesh/meshName/virtualGateway /virtualGatewayName

App Mesh プレビューチャンネルを使用する場合、ARN は、us-west-2リージョンを使用し、appmesh の代わりに appmesh-previewを使用する必要があります。例えば、App Mesh プレビューチャネル内の仮想ノードの ARN は、次のようになります。arn:aws:appmesh-preview:us-west-2:111122223333:mesh/meshName/virtualNode/virtualNodeName

オプションの変数

App Mesh Envoyコンテナでは、次の環境変数がオプションとして用意されています。

ENVOY_LOG_LEVEL

Envoy コンテナのログレベルを指定します。

有効な値: trace, debug, info, warn, error, critical, off

デフォルト: info

ENVOY_INITIAL_FETCH_TIMEOUT

初期化プロセス中に Envoy が管理サーバーからの最初の設定応答を待機する時間を指定します。

詳細については、Envoy ドキュメントの「Configuration sources」を参照してください。0 に設定すると、タイムアウトは発生しません。

デフォルト: 0

ENVOY_CONCURRENCY

Envoy の起動時の --concurrency コマンドラインオプションを設定します。これはデフォルトで設定されていません。このオプションは Envoy バージョン v1.24.0.0-prod 以上で使用できます。

詳細については、Envoy ドキュメントの「Command line options」を参照してください。

管理者変数

これらの環境変数を使用して、Envoy の管理インターフェイスを設定します。

ENVOY_ADMIN_ACCESS_PORT

Envoy がリッスンするカスタム管理ポートを指定します。デフォルト: 9901

注記

Envoy 管理ポートは、仮想ゲートウェイまたは仮想ノード上のリスナーポートとは異なる必要があります

ENVOY_ADMIN_ACCESS_LOG_FILE

Envoy アクセスログを書き込む先のカスタムパスを指定します。デフォルト: /tmp/envoy_admin_access.log

ENVOY_ADMIN_ACCESS_ENABLE_IPV6

Envoy の管理インターフェイスを IPv6 トラフィックを受け入れるように切り替えます。これにより、このインターフェイスは IPv4IPv6 のトラフィックの両方を受け入れることができます。デフォルトでは、このフラグは false に設定されており、Envoy は IPv4 トラフィックのみを受信します。この変数は、Envoy イメージのバージョン 1.22.0 以降でのみ使用可能です。

エージェント変数

これらの環境変数を使用して、Envoy 用の AWS App Mesh エージェントを設定します。詳細については、App Mesh の「Envoy 用エージェント」を参照してください。

APPNET_ENVOY_RESTART_COUNT

実行中のタスクまたはポッド内の Envoy プロキシプロセスが終了した場合に、エージェントがこのプロセスを再起動する回数を指定します。また、エージェントは Envoy が終了するたびに終了ステータスを記録し、トラブルシューティングを容易にします。この変数のデフォルト値は 0 です。デフォルト値が設定されている場合、エージェントはプロセスの再起動を試行しません。

デフォルト: 0

最大: 10

PID_POLL_INTERVAL_MS

Envoy プロキシのプロセス状態をエージェントがチェックする間隔をミリ秒単位で指定します。デフォルト値は、100です。

デフォルト: 100

最小: 100

最大: 1000

LISTENER_DRAIN_WAIT_TIME_S

Envoy プロキシがアクティブな接続が閉じられてからプロセスが終了するまで待機する時間を秒単位で指定します。

デフォルト: 20

最小: 5

最大: 110

APPNET_AGENT_ADMIN_MODE

エージェントの管理インターフェイスサーバーを起動し、TCP アドレスまたは UNIX ソケットにバインドします。

有効な値: tcpuds

APPNET_AGENT_HTTP_PORT

tcp モードでエージェントの管理インターフェイスバインドするために使用するポートを指定します。uid != 0 の場合、ポートの値が > 1024 であることを確認します。ポートが 65535 より小さいことを確認します。

デフォルト: 9902

APPNET_AGENT_ADMIN_UDS_PATH

uds モードでのエージェントの管理インターフェイスの UNIX ドメインソケットパスを指定します。

デフォルト: /var/run/ecs/appnet_admin.sock

トレースの変数

設定なし、または次のトレースドライバーのいずれかを設定できます。

AWS X-Ray 変数

次の環境変数は、 AWS X-Rayで App Mesh を設定するために使用します。詳細については、AWS X-Ray デベロッパーガイドを参照してください。

ENABLE_ENVOY_XRAY_TRACING

デフォルトのデーモンエンドポイントとして 127.0.0.1:2000 を使用し、X-Ray トレースを有効にします。有効にするには、値を 1 に設定します。デフォルト値は、0です。

XRAY_DAEMON_PORT

ポート値を指定して、デフォルトの X-Ray デーモンポート2000 を上書きします。

XRAY_SAMPLING_RATE

サンプリングレートを指定して、X-Ray トレーサのデフォルトのサンプリングレート 0.05 (5%)を上書きします。1.000 (100%) の間の小数で値を指定します。XRAY_SAMPLING_RULE_MANIFEST が指定されている場合、この値は上書きされます。この変数は、バージョン v1.19.1.1-prod 以降の Envoy イメージでサポートされています。

XRAY_SAMPLING_RULE_MANIFEST

Envoy コンテナファイルシステム内のファイルパスを指定して、X-Ray トレーサのローカライズされたカスタムサンプリングルールを設定します。詳しくは、『AWS X-Ray デベロッパーガイド』の「サンプリングルール」をご覧ください。この変数は、バージョン v1.19.1.0-prod 以降の Envoy イメージでサポートされています。

XRAY_SEGMENT_NAME

トレースのセグメント名を指定して、デフォルトの X-Ray セグメント名を上書きします。デフォルトでは、この値は mesh/resourceName に設定されます。この変数は、Envoy イメージバージョン v1.23.1.0-prod 以降でサポートされています。

Datadog のトレース変数

次の環境変数は、Datadog エージェントトレーサーを使用して App Mesh を設定するのに役立ちます。詳細については、Datadog ドキュメントの「Agent Configuration」を参照してください。

ENABLE_ENVOY_DATADOG_TRACING

127.0.0.1:8126 をデフォルトの Datadog エージェントエンドポイントとして使用し、Datadog トレース収集を有効にします。有効にするには、値を 1 (デフォルト値は 0 )に設定します。

DATADOG_TRACER_PORT

ポート値を指定して、デフォルトの Datadog エージェントポート 8126 を上書きします。

DATADOG_TRACER_ADDRESS

IP アドレスを指定して、デフォルトの Datadog エージェントアドレス: 127.0.0.1 を上書きします。

DD_SERVICE

トレースのサービス名を指定して、デフォルトの Datadog サービス名: envoy-meshName/virtualNodeName を上書きします。この変数は、バージョン v1.18.3.0-prod 以降の Envoy イメージでサポートされています。

Jaeger のトレース変数

次の環境変数は、Jaeger トレースを使用して App Mesh を設定するために使用します。詳細については、Jaeger ドキュメントの「開始方法」を参照してください。これらの変数は、バージョン 1.16.1.0-prod 以降の Envoy イメージでサポートされています。

ENABLE_ENVOY_JAEGER_TRACING

127.0.0.1:9411 をデフォルトの Jaeger エンドポイントとして使用して、 Jaeger トレース収集を有効にします。有効にするには、値を 1 (デフォルト値は 0 )に設定します。

JAEGER_TRACER_PORT

ポート値を指定して、デフォルトの Jaeger ポート 9411.を上書きします。

JAEGER_TRACER_ADDRESS

IP アドレスを指定して、デフォルトの Jaeger アドレス: 127.0.0.1 を上書きします。

JAEGER_TRACER_VERSION

コレクターが JSONPROTO のいずれのエンコード形式のトレースを必要としているのかを指定します。デフォルトでは、この値は PROTO に設定されます。この変数は、Envoy イメージバージョン v1.23.1.0-prod 以降でサポートされています。

Envoy トレース変数

独自のトレース設定を使用するには、次の環境変数を設定します。

ENVOY_TRACING_CFG_FILE

Envoy コンテナファイルシステム内のファイルパスを指定します。ポリシーの詳細については、Envoy ドキュメントの「 config.trace.v3.Tracing 」を参照してください。

注記

トレース設定でトレースクラスターを指定する必要がある場合は、同じトレース設定ファイル内の static_resources にある関連するクラスター設定も必ず設定してください。例えば、Zipkin には、トレースコレクターをホストするクラスター名の collector_cluster フィールドがあるので、そのクラスターを静的に定義する必要があります。

DogStatsD 変数

DogStatsD で App Mesh を設定するには、次の環境変数を使用します。詳細については、DogStats「D ドキュメント」を参照してください。

ENABLE_ENVOY_DOG_STATSD

デフォルトのデーモンエンドポイント127.0.0.1:8125として を使用する DogStatsD 統計を有効にします。有効にするには、値を 1 に設定します。

STATSD_PORT

デフォルトの DogStatsD デーモンポートを上書きするポート値を指定します。

STATSD_ADDRESS

IP アドレス値を指定して、デフォルトの DogStatsD デーモン IP アドレスを上書きします。デフォルト: 127.0.0.1。この変数は、Envoy イメージのバージョン 1.15.0 以降でのみ使用可能です。

STATSD_SOCKET_PATH

DogStatsD デーモンの UNIX ドメインソケットを指定します。この変数が指定されておらず、 DogStatsD が有効になっている場合、この値はデフォルトで の DogStatsD デーモン IP アドレスポートになります127.0.0.1:8125。統計シンク設定を含む ENVOY_STATS_SINKS_CFG_FILE変数が指定されている場合、すべての DogStatsD 変数が上書きされます。この変数は、Envoy イメージバージョン v1.19.1.0-prod 以降でサポートされています。

App Mesh 変数

次の変数は、App Mesh の設定に役立ちます。

APPMESH_PREVIEW

値を 1 に設定して、App Mesh プレビューチャネルエンドポイントに接続します。App Mesh プレビューチャネルの使用の詳細については、「 App Mesh プレビューチャネル 」を参照してください。

APPMESH_RESOURCE_CLUSTER

デフォルトでは、App Mesh は、Envoy によってメトリクスとトレースでそれ自体が参照されるとき、APPMESH_RESOURCE_ARN で指定したリソースの名前を使用します。APPMESH_RESOURCE_CLUSTER 環境変数に独自の名前を設定することで、この動作を上書きできます。この変数は、Envoy イメージのバージョン 1.15.0 以降でのみ使用可能です。

APPMESH_METRIC_EXTENSION_VERSION

値を 1 に設定して、AppMeshメトリック拡張機能を有効にします。App Mesh メトリクス拡張機能の使用方法の詳細については、「 App Mesh のメトリクス拡張機能 」を参照してください。

APPMESH_DUALSTACK_ENDPOINT

値を 1 に設定して、App Mesh Dual Stack エンドポイントに接続します。このフラグを設定すると、Envoy はデュアルスタック対応ドメインを使用します。デフォルトでは、このフラグは false に設定されており、IPv4 ドメインにのみ接続します。この変数は、Envoy イメージのバージョン 1.22.0 以降でのみ使用可能です。

Envoy 統計変数

次の環境変数は、Envoy Stats で App Mesh を設定するために使用します。詳細については、Envoy 統計 のドキュメントを参照してください。

ENABLE_ENVOY_STATS_TAGS

App Mesh 定義タグ appmesh.meshappmesh.virtual_node の使用を有効にします。詳細については、Envoy ドキュメントの「config.metrics.v3TagSpecifier」を参照してください。有効にするには、値を 1 に設定します。

ENVOY_STATS_CONFIG_FILE

Envoy コンテナファイルシステム内のファイルパスを指定して、デフォルトの Stats タグ設定ファイルを独自の設定ファイルで上書きします。詳細については、「config.metrics.v3」を参照してくださいStatsConfig

注記

統計フィルターを含むカスタマイズされた統計設定で設定すると、Envoy がワールドの App Mesh 状態と適切に同期しなくなる状態になる可能性があります。これは、Envoy のバグです。Envoy で統計のフィルターを実行しないようお勧めします。フィルターが絶対に必要な場合のために、この問題のいくつかの回避策をロードマップにリストしました。

ENVOY_STATS_SINKS_CFG_FILE

Envoy コンテナファイルシステム内のファイルパスを指定して、デフォルト設定を独自の設定で上書きします。詳細については、Envoy ドキュメントの「config.metrics.v3StatsSink」を参照してください。

廃止された変数

環境変数 APPMESH_VIRTUAL_NODE_NAMEAPPMESH_RESOURCE_NAME は、Envoy バージョン 1.15.0 以降ではサポートされなくなりました。ただし、既存のメッシュではまだサポートされています。Envoy バージョン 1.15.0 以降でこれらの変数を使用する代わりに、すべての App Mesh エンドポイントに対して APPMESH_RESOURCE_ARN を使用してください。