次の方法で共有


Azure Data Explorer のデータ フロー エンドポイントを構成する

重要

このページには、プレビュー段階にある Kubernetes デプロイ マニフェストを使用して Azure IoT Operations コンポーネントを管理する手順が含まれます。 この機能は、いくつかの制限を設けて提供されているため、運用環境のワークロードには使用しないでください。

ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの使用条件に関する補足」を参照してください。

Azure IoT Operations で Azure Data Explorer にデータを送信するには、データ フロー エンドポイントを構成できます。 この構成では、宛先エンドポイント、認証方法、テーブル、その他の設定を指定できます。

前提条件

  • Azure IoT Operations のインスタンス
  • Azure Data Explorer クラスター。 「クイック スタート: Azure Data Explorer クラスターとデータベースを作成する」の完全なクラスターに関する手順に従います。 このシナリオでは、"無料クラスター" オプションは機能しません。

Azure Data Explorer データベースを作成する

  1. Azure portal で、Azure Data Explorer の "完全な" クラスターにデータベースを作成します。

  2. データのためのテーブルをデータベース内に作成します。 Azure portal を使用して手動で列を作成することも、[クエリ] タブで KQL を使用することもできます。たとえば、サンプル サーモスタット データのテーブルを作成するには、次のコマンドを実行します。

    .create table thermostat (
        externalAssetId: string,
        assetName: string,
        CurrentTemperature: real,
        Pressure: real,
        MqttTopic: string,
        Timestamp: datetime
    )
    
  3. テーブルとデータベースでストリーミング インジェストを有効にします。 クエリ タブで、次のコマンドを実行し、<DATABASE_NAME> を自分のデータベース名に置き換えます。

    .alter database ['<DATABASE_NAME>'] policy streamingingestion enable
    

    または、クラスター全体に対してストリーミング インジェストを有効にします。 「既存のクラスターでストリーミング インジェストを有効にする」を参照してください。

マネージド ID にアクセス許可を割り当てる

Azure Data Explorer のデータ フロー エンドポイントを構成するには、ユーザー割り当てマネージド ID またはシステム割り当てマネージド ID のいずれかを使用することをお勧めします。 この方法は安全であり、認証情報を手動で管理する必要がありません。

Azure Data Explorer データベースが作成された後で、そのデータベースへの書き込みを行うためのアクセス許可が付与されるロールを、Azure IoT Operations マネージド ID に割り当てる必要があります。

システム割り当てマネージド ID を使用する場合は、Azure portal で、Azure IoT Operations インスタンスに移動し、[概要] を選択します。 Azure IoT Operations Arc 拡張機能の後に一覧表示されている拡張機能の名前をコピーします。 たとえば、azure-iot-operations-xxxx7 などです。 システム割り当てマネージド ID は、Azure IoT Operations Arc 拡張機能と同じ名前を使用して、見つけることができます。

  1. (クラスターではなく) [Azure Data Explorer データベース] 内で、[概要] の下にある [アクセス許可]>[追加] を選択し、続いてロールとして [インジェスター] を選択します。 これにより、Azure Data Explorer データベースへの書き込みに必要なアクセス許可がマネージド ID に付与されます。 詳細については、「ロール ベースのアクセス制御」を参照してください。
  2. クラウド接続用に設定されたユーザー割り当てマネージド ID またはシステム割り当てマネージド ID の名前を検索します。 たとえば、azure-iot-operations-xxxx7 などです。
  3. 続いて [選択] を選択します。

Azure Data Explorer のためのデータ フロー エンドポイントを作成する

  1. 操作エクスペリエンスで、[データ フロー エンドポイント] タブを選択します。

  2. [新しいデータ フロー エンドポイントの作成] で、[Azure Data Explorer]>[新規] を選びます。

    操作エクスペリエンスを使用して Azure Data Explorer データ フロー エンドポイントを作成するスクリーンショット。

  3. エンドポイントに関する次の設定を入力します。

    設定 説明
    名前 データ フロー エンドポイントの名前。
    ホスト <cluster>.<region>.kusto.windows.net 形式の Azure Data Explorer エンドポイントのホスト名。
    認証方法 認証に使用する方式。 [システム割り当てマネージド ID] または [ユーザー割り当てマネージド ID] を選択します。
    クライアント ID ユーザー割り当てマネージド ID のクライアント ID。 "ユーザー割り当てマネージド ID" を使用する場合は必須です。
    テナント ID ユーザー割り当てマネージド ID のテナント ID。 "ユーザー割り当てマネージド ID" を使用する場合は必須です。
  4. [適用] を選択してエンドポイントをプロビジョニングします。

使用可能な認証方法

Azure Data Explorer エンドポイントでは、次の認証方法を使用できます。

システム割り当てマネージド ID

データ フロー エンドポイントを構成する前に、Azure Data Explorer データベースに対する書き込みアクセス許可が付与されるロールを Azure IoT Operations マネージド ID に割り当てます。

  1. Azure portal で、Azure IoT Operations インスタンスに移動し、[概要] を選択します。
  2. Azure IoT Operations Arc 拡張機能の後に一覧表示されている拡張機能の名前をコピーします。 たとえば、azure-iot-operations-xxxx7 などです。
  3. (クラスターではなく) [Azure Data Explorer データベース] に移動し、[概要] の下にある [アクセス許可]>[追加] を選択し、続いて適切なロールを選択します。
  4. システム割り当てマネージド ID の名前を検索します。 たとえば、azure-iot-operations-xxxx7 などです。
  5. [選択] を選択します。

次に、システム割り当てマネージド ID の設定を使用してデータ フロー エンドポイントを構成します。

操作エクスペリエンスのデータ フロー エンドポイント設定ページで、[基本] タブを選択し、[認証方法]>[システム割り当てマネージド ID] を選択します。

システム割り当てマネージド ID の対象ユーザーをオーバーライドする必要がある場合は、audience 設定を指定できます。

ほとんどの場合、他の設定を指定する必要はありません。 この構成では、既定の対象ユーザー https://api.kusto.windows.net を使用してマネージド ID が作成されます。

ユーザー割り当てマネージド ID

認証にユーザー割り当てマネージド ID を使用するには、まず、セキュリティで保護された設定を有効にして Azure IoT Operations を展開する必要があります。 次に、クラウド接続用にユーザー割り当てマネージド ID を設定する必要があります。 詳細については、「Azure IoT Operations の展開でセキュリティで保護された設定を有効にする」を参照してください。

データ フロー エンドポイントを構成する前に、Azure Data Explorer データベースに対する書き込みアクセス許可が付与されるロールをユーザー割り当てマネージド ID に割り当てます。

  1. Azure portal で、(クラスターではなく) [Azure Data Explorer データベース] に移動し、[概要] の下にある [アクセス許可]>[追加] を選択し、続いて適切なロールを選択します。
  2. ユーザー割り当てマネージド ID の名前を検索します。
  3. [選択] を選択します。

次に、ユーザー割り当てマネージド ID の設定を使用してデータ フロー エンドポイントを構成します。

操作エクスペリエンスのデータ フロー エンドポイント設定ページで、[基本] タブを選択し、[認証方法]>[ユーザー割り当てマネージド ID] を選択します。

該当するフィールドに、ユーザー割り当てマネージド ID のクライアント ID とテナント ID を入力します。

ここでは、"scope" は省略可能であり、既定値は https://api.kusto.windows.net/.default です。 既定のスコープをオーバーライドする必要がある場合は、Bicep または Kubernetes を使用して scope 設定を指定します。

詳細設定

バッチ処理の待機時間やメッセージ数など、Azure Data Explorer エンドポイントの詳細設定を設定できます。

メッセージの最大数と、メッセージが宛先に送信されるまでの最大待機時間を構成するには、batching 設定を使用します。 この設定は、ネットワーク帯域幅を最適化し、宛先への要求数を減らす場合に役立ちます。

フィールド 説明 必須
latencySeconds メッセージを宛先に送信するまでの最大待機時間 (秒数)。 既定値は 60 秒です。 いいえ
maxMessages 宛先に送信するメッセージの最大数。 既定値は、100,000 メッセージです。 いいえ

たとえば、メッセージの最大数を 1,000 に構成し、最大待機時間を 100 秒に設定するには、次の設定を使用します。

操作エクスペリエンスで、データ フロー エンドポイントの [詳細] タブを選択します。

操作エクスペリエンスを使用して Azure Data Explorer の詳細設定を設定するスクリーンショット。

次のステップ

データ フローの詳細については、「データ フローの作成」を参照してください。