Azure portal を使用してルートとエンドポイントを作成および削除する
この記事では、Azure IoT Hub のハブでルートとエンドポイントを作成する方法と、ルートとエンドポイントを削除する方法について説明します。 Azure portal を使用して、Azure Event Hubs、Azure Service Bus キューとトピック、Azure Storage、Azure Cosmos DB に対してルートとエンドポイントを作成する方法について説明します。
IoT Hub のルーティングのしくみについては、「IoT Hub メッセージ ルーティングを使用して device-to-cloud メッセージを別のエンドポイントに送信する」を参照してください。 ストレージにメッセージを送信するルートを設定し、シミュレートされたデバイスでテストする手順については、「チュートリアル: IoT Hub メッセージ ルーティングを使用してデバイス データを Azure Storage に送信する」を参照してください。
前提条件
この記事で説明する手順では、次のリソースを使用します。
- Azure ポータル
- IoT ハブ
- Azure のエンドポイント サービス
Azure portal
この記事では、Azure portal を使って IoT Hub や他の Azure サービスを操作します。 Azure portal を使用する方法の詳細については、「Azure portal とは」を参照してください。
IoT ハブ
IoT ハブ ルートを作成するには、Azure IoT Hub を使用して作成した IoT ハブが必要です。 デバイス メッセージとイベントは、IoT ハブで生成されます。
IoT ハブ ルートを作成するときに使用する次のハブ リソースがあることを確認してください。
- Azure サブスクリプション内の IoT ハブ。 ハブがまだない場合は、「IoT ハブの作成」の手順に従うことができます。
エンドポイント サービス
IoT ハブ ルートを作成するには、ルートへのエンドポイントとして使用する他の Azure サービスが少なくとも 1 つ必要です。 エンドポイントは、デバイス メッセージとイベントを受信します。 IoT ハブ ルートと接続するエンドポイントに使用する Azure サービス (Event Hubs、Service Bus キューまたはトピック、Azure Storage、Azure Cosmos DB) を選択できます。
IoT ハブ ルートでエンドポイントを作成するときに使用する次のリソースの "いずれか" があることを確認してください。
Event Hubs リソース (名前空間とエンティティ)。 新しい Event Hubs リソースを作成する必要がある場合は、「クイック スタート: Azure portal を使用したイベント ハブの作成」を参照してください。
Service Bus キュー リソース (名前空間とキュー)。 新しい Service Bus キューを作成する必要がある場合は、「Azure portal を使用して Service Bus 名前空間とキューを作成する」を参照してください。
Service Bus トピック リソース (名前空間とトピック)。 新しい Service Bus トピックを作成する必要がある場合は、「Azure portal を使用して Service Bus トピックとそのサブスクリプションを作成する」を参照してください。
Azure Storage リソース (アカウントとコンテナー)。 Azure で新しいストレージ アカウントを作成する必要がある場合は、「ストレージ アカウントを作成する」を参照してください。 ストレージ アカウントを作成するときには、多くのオプションがありますが、この記事で必要なのは、アカウント内の新しいコンテナーのみです。
Azure Cosmos DB リソース (アカウント、データベース、コンテナー)。 Azure Cosmos DB の新しいインスタンスを作成する必要がある場合は、「Azure Cosmos DB アカウントを作成する」を参照してください。 API オプションには [Azure Cosmos DB for NoSQL] を選びます。
ルートとエンドポイントを作成する
ルートによって、メッセージまたはイベント ログがストレージまたは処理のために Azure サービスに送信されます。 各ルートには、メッセージまたはイベントが発生する場所であるデータ ソースと、メッセージまたはイベントが終了する場所であるエンドポイントがあります。 ルーティング クエリを使うと、メッセージまたはイベントがエンドポイントに移動する前にフィルター処理できます。 エンドポイントとしては、イベント ハブ、Service Bus キューまたはトピック、ストレージ アカウント、Azure Cosmos DB リソースを使用できます。
Azure portal で IoT Hub に移動します。
リソース メニューの [ハブ設定] で、[メッセージ ルーティング] を選択し、[追加] を選択します。
[Endpoint] (エンドポイント) タブで、既存のエンドポイントを選択するか、次の情報を指定して新たに作成します。
パラメーター 値 [エンドポイントの種類] [Cosmos DB] を選択します。 [エンドポイント名] 新しいエンドポイントの一意の名前を指定するか、[既存のものを選択] を選択して既存の Storage エンドポイントを選択します。 Cosmos DB アカウント ドロップダウン メニューを使用して、サブスクリプション内の既存の Cosmos DB アカウントを選択します。 [データベース] ドロップダウン メニューを使用して、Cosmos DB アカウントの既存のデータベースを選択します。 コレクション ドロップダウン メニューを使用して、既存のコレクション (またはコンテナー) を選択します。 Generate a synthetic partition key for messages (メッセージの合成パーティション キーを生成する) 大規模なシナリオのデータ ストレージをサポートするには、[Enable] (有効) を選択します。 それ以外の場合は、[Disable] (無効) を選択します。詳細については、「Azure Cosmos DB でのパーティション分割と水平方向のスケーリング」と「合成パーティション キー」を参照してください。 Partition key name (パーティション キー名) 合成パーティション キーを有効にする場合は、パーティション キーの名前を指定します。 パーティション キーのプロパティ名はコンテナー レベルで定義されており、いったん設定した後は変更できません。 Partition key template (パーティション キー テンプレート) 合成パーティション キー値の構成に使用するテンプレートを指定します。 生成されたパーティション キーの値は、新しい Cosmos DB レコードごとにパーティション キー プロパティに自動的に追加されます。
[Create + next] (作成 + 次へ) を選択して、エンドポイントを作成し、続けてルートを作成します。
[ルート] タブで、次の情報を指定して、エンドポイントへの新しいルートを作成します。
パラメーター 値 名前 ルートの一意の名前を指定します。 データ ソース ドロップダウン メニューを使用して、ルートのデータ ソースを選択します。 テレメトリ メッセージまたはテレメトリ以外のイベントからのデータをルーティングできます ルーティング クエリ 必要に応じて、ルーティングの前にデータをフィルター処理するクエリを追加します。 詳細については、「IoT Hub メッセージ ルーティングのクエリ構文」を参照してください。 ルーティング クエリを追加した場合は、テスト機能を使用してサンプル メッセージを提供し、それに対するルートをテストします。
メッセージ エンリッチメントをルートに追加する場合は、[Create + add enrichments] (エンリッチメントの作成 + 追加) を選択します。 詳細については、「メッセージ エンリッチメント」に関するページを参照してください。 そうでない場合は、[Create + skip enrichments] (エンリッチメントの作成 + スキップ) を選択します。
[Message routing] (メッセージ ルーティング) の概要に戻り、[ルート] タブに新しいルートが表示され、[カスタム エンドポイント] タブに新しいエンドポイントが表示されることを確認します。
ルートを更新する
Azure portal でルートを更新するには:
Azure portal で IoT Hub に移動します。
リソース メニューの [ハブ設定] で、[メッセージ ルーティング] を選択します。
[ルート] タブで、変更するルートを選択します。
既存のルートの次のパラメーターを変更できます。
- エンドポイント: 新しいエンドポイントを作成するか、別の既存のエンドポイントを選択できます。
- [データ ソース]。
- ルートの有効化。
- ルーティング クエリ。
[保存] を選択します。
ルートの削除
Azure portal でルートを削除するには:
カスタム エンドポイントを更新する
Azure portal でカスタム エンドポイントを削除するには、次のようにします。
Azure portal で IoT Hub に移動します。
リソース メニューの [ハブ設定] で、[メッセージ ルーティング] を選択します。
[カスタム エンドポイント] タブで、変更するエンドポイントを選択します。
既存のエンドポイントの次のパラメーターを変更できます。
- Generate a synthetic partition key for messages (メッセージの合成パーティション キーを生成する)
- Partition key name (パーティション キー名)
- Partition key template (パーティション キー テンプレート)
- [保存] を選択します。
カスタム エンドポイントを削除する
Azure portal でカスタム エンドポイントを削除するには:
Azure portal で IoT Hub に移動します。
リソース メニューの [ハブ設定] で、[メッセージ ルーティング] を選択します。
[カスタム エンドポイント] タブで、チェック ボックスを使用して、削除するエンドポイントを選択します。
[削除] を選択します。
次の手順
メッセージ ルーティングの詳細については、「チュートリアル: IoT Hub メッセージ ルーティングを使用してデバイス データを Azure Storage に送信する」を参照してください。 このチュートリアルでは、ストレージ ルートを作成し、IoT ハブでデバイスを使ってテストします。