Share via


Azure Arc テレメトリ ルーターをデプロイする

Note

  • テレメトリ ルーターはパブリック プレビュー段階であり、テスト目的でのみデプロイする必要があります。
  • テレメトリ ルーターがパブリック プレビュー段階にある間、将来のプレビュー リリースには、CRD 仕様、CLI コマンド、テレメトリ ルーター メッセージの変更が含まれる可能性があることに留意してください。
  • 現在のプレビューでは、Arc テレメトリ ルーターが有効になっている状態でデプロイされたデータ コントローラーのインプレース アップグレードはサポートされていません。 将来のリリースでデータ コントローラーをインストールまたはアップグレードするには、データ コントローラーをアンインストールしてから再インストールする必要があります。

Azure Arc テレメトリ ルーターとは

Azure Arc テレメトリ ルーターを使用すると、テレメトリ データを他の監視ソリューションにエクスポートできます。 このパブリック プレビューでは、Kafka または Elasticsearch へのログ データのエクスポートと、Kafka へのメトリック データのエクスポートのみがサポートされます。

このドキュメントでは、テレメトリ ルーターをデプロイし、サポートされているエクスポーターと連携するように構成する方法が示されています。

展開

Note

テレメトリ ルーターでは現在、間接接続モードのみがサポートされています。

カスタム構成プロファイルを作成する

Kubernetes クラスターを設定したら、カスタム構成プロファイルを作成する必要があります。 次に、データ コントローラーの作成時にテレメトリ ルーターをデプロイする一時的な機能フラグを有効にします。

機能フラグを有効にする

カスタム構成プロファイルを作成した後、プロファイルを編集して、enableOpenTelemetry フラグが true に設定された monitoring プロパティを追加する必要があります。 機能フラグを設定するには、次の az CLI コマンドを実行します (必要に応じて --path パラメーターを編集します)。

az arcdata dc config add --path ./control.json --json-values ".spec.monitoring={}"
az arcdata dc config add --path ./control.json --json-values ".spec.monitoring.enableOpenTelemetry=true"

フラグが正しく設定されたことを確認するには、control.json ファイルを開き、monitoring オブジェクトが spec オブジェクトに追加され、enableOpenTelemetrytrue に設定されていることを確認します。

spec:
    monitoring:
        enableOpenTelemetry: true

この機能フラグの要件は、今後のリリースで削除される予定です。

データ コントローラーを作成する

カスタム構成プロファイルを作成し、機能フラグを設定したら、間接接続モードを使用してデータ コントローラーを作成する準備ができています。 --profile-name パラメーターは、必ずカスタム control.json ファイルをポイントする --path パラメーターに置き換えてください (「Azure Arc 対応データ コントローラーをデプロイするためのカスタム control.json ファイルを使用する」を参照してください)

テレメトリ ルーターのデプロイを確認する

データ コントローラーが作成されると、TelemetryRouter カスタム リソースも作成されます。 両方のカスタム リソースのデプロイが完了すると、データ コントローラーのデプロイは準備完了としてマークされます。 データ コントローラーのデプロイが完了したら、次のコマンドを使用して TelemetryRouter が存在することを確認できます。

kubectl describe telemetryrouter arc-telemetry-router -n <namespace>
apiVersion: arcdata.microsoft.com/v1beta4
  kind: TelemetryRouter
  metadata:
    name: arc-telemetry-router
    namespace: <namespace>
  spec:
    credentials:
    exporters:
    pipelines:

作成時に、パイプラインまたはエクスポーターは設定されません。 独自のパイプラインとエクスポーターを設定して、メトリック データとログ データを Kafka と Elasticsearch の独自のインスタンスにルーティングできます。

TelemetryRouter をデプロイした後、Kafka (arc-router-kafka) のインスタンスと TelemetryCollector (collector-inbound) の単一インスタンスをデプロイし、準備完了状態にする必要があります。 これらのリソースはシステムで管理されており、編集はサポートされていません。 この結果、次のポッドがデプロイされます。

  • 受信コレクター ポッド - arctc-collector-inbound-0
  • kakfa ブローカー ポッド - arck-arc-router-kafka-broker-0
  • kakfa コントローラー ポッド - arck-arc-router-kafka-controller-0

Note

送信コレクター ポッドは、テレメトリ ルーターに少なくとも 1 つのパイプラインが追加されるまで作成されません。

最初のパイプラインを作成すると、追加の TelemetryCollector リソース (collector-outbound) とポッド arctc-collector-outbound-0 がデプロイされます。

kubectl get pods -n <namespace>

NAME                                 READY   STATUS      RESTARTS   AGE
arc-bootstrapper-job-4z2vr           0/1     Completed   0          15h
arc-webhook-job-facc4-z7dd7          0/1     Completed   0          15h
arck-arc-router-kafka-broker-0       2/2     Running     0          15h
arck-arc-router-kafka-controller-0   2/2     Running     0          15h
arctc-collector-inbound-0            2/2     Running     0          15h
bootstrapper-8d5bff6f7-7w88j         1/1     Running     0          15h
control-vpfr9                        2/2     Running     0          15h
controldb-0                          2/2     Running     0          15h
logsdb-0                             3/3     Running     0          15h
logsui-fwrh9                         3/3     Running     0          15h
metricsdb-0                          2/2     Running     0          15h
metricsdc-bc4df                      2/2     Running     0          15h
metricsdc-fm7jh                      2/2     Running     0          15h
metricsui-qqgbv                      2/2     Running     0          15h