Azure IoT Operations をデプロイするときは、Azure Arc 対応 Kubernetes クラスターにサービス スイートをインストールします。 この記事では、シナリオで考慮すべきさまざまなデプロイ オプションの概要について説明します。
サポートされている環境
Microsoft は、Azure IoT Operations デプロイについて次の環境をサポートしています。
環境 | 最小バージョン | 可用性 |
---|---|---|
Ubuntu 24.04 上の K3s | K3s バージョン 1.31.1 | 一般公開 |
Windows 11 IoT Enterprise 上の Azure Kubernetes Service (AKS) Edge Essentials | AksEdge-K3s-1.29.6-1.8.202.0 | パブリック プレビュー |
Azure Local 上の Azure Kubernetes Service (AKS) | Azure Stack HCI OS バージョン 23H2 (ビルド 2411) | パブリック プレビュー |
管理クラスター 2.5.2 を使用した Tanzu Kubernetes Grid での Tanzu Kubernetes リリース (TKr) | TKr バージョン 1.28.11 | 一般公開 |
Von Bedeutung
Azure IoT Operations デプロイのサポートは、TKr のバージョン 1.28.11 でのみ利用できます。
注
課金使用量レコードは、サポートや可用性レベルに関係なく、Azure IoT Operations がインストールされているすべての環境で収集されます。
Azure IoT Operations をインストールするには、Azure IoT Operations を使用できる次のハードウェア要件を満たしている必要があります。 フォールト トレランスを有効にするマルチノード クラスターを使用している場合は、パフォーマンスを向上させるために推奨容量までスケールアップします。
仕様 | 最小 | 推奨 |
---|---|---|
ハードウェア メモリ容量 (RAM) | 16 GB | 32 GB |
Azure IoT Operations の使用可能なメモリ (RAM) | 10 GB | 使用状況によって異なる |
CPU | 4 つの vCPU | 8 つの vCPU |
注
最小構成は、AIO のみを実行する場合に適しています。
機能を選択する
Azure IoT Operations には、2 つのデプロイ モードが用意されています。 "テスト設定" (評価シナリオの場合に作業を開始しやすい、基本的な機能のサブセット) を使用してデプロイすることを選択できます。 または、完全な機能セットである "セキュリティで保護された設定" を使用してデプロイすることもできます。
テスト設定のデプロイ
テスト設定のみを使用する展開には、次の特性があります。
- シークレットやユーザー割り当てマネージド ID 機能は構成されません。
- これは、評価目的でエンドツーエンドのクイック スタート サンプルを有効にすることを目的としているため、OPC PLC シミュレーターをサポートし、システム割り当てマネージド ID を使用してクラウド リソースに接続します。
- セキュリティで保護された設定を使用するようにアップグレードできます。
クイックスタート エクスペリエンスについては、「 クイック スタート: GitHub Codespaces で K3s シナリオで Azure IoT Operations を実行する 」を使用できます。 このシナリオでは、軽量の Kubernetes ディストリビューション (K3s) を使用し、GitHub Codespaces で実行されるため、クラスターを設定したり、ツールをローカルにインストールしたりする必要はありません。
テスト設定を使用して Azure IoT Operations をデプロイするには、次の記事に従います。
- 「Azure Arc 対応 Kubernetes クラスターを準備する」から始めて、クラスターを構成して Arc 対応にします。
- 次に、「 Azure IoT Operations をテスト クラスターにデプロイする」の手順に従います。
ヒント
いつでも、セキュリティで保護された設定を有効にするの手順に従って、セキュリティで保護された設定を使用するように Azure IoT Operations インスタンスをアップグレードできます。
セキュリティで保護された設定のデプロイ
セキュリティで保護された設定を使用した展開には、次の特性があります。
- これは、運用環境に対応したシナリオ向けです。
- これにより、シークレットとユーザー割り当てマネージド ID が有効になります。これらはどちらも、運用環境に対応したシナリオを開発するための重要な機能です。 シークレットは、Azure IoT Operations コンポーネントがクラスター外のリソース、たとえば OPC UA サーバーやデータ フロー エンドポイントなどに接続するときに使用されます。
セキュリティで保護された設定を使って Azure IoT Operations をデプロイするには、次の記事に従ってください。
- 「Azure Arc 対応 Kubernetes クラスターを準備する」から始めて、クラスターを構成して Arc 対応にします。
- 次に、「 Azure IoT Operations を運用クラスターにデプロイする」の手順に従います。
必要なアクセス許可
次の表では、昇格されたアクセス許可を必要とする Azure IoT Operations のデプロイと管理タスクについて説明します。 ユーザーへのロールの割り当てについては、「Azure ロールを割り当てる手順」をご覧ください。
タスク | 必要なアクセス許可 | コメント |
---|---|---|
Azure IoT Operations をデプロイする | Azure IoT Operations Onboarding ロール | このロールには、Azure IoT 操作と Azure Device Registry リソースの読み取りと書き込みに必要なすべてのアクセス許可があります。 このロールには Microsoft.Authorization/roleAssignments/write アクセス許可があります。 |
リソース プロバイダーを登録する | サブスクリプション レベルでの共同作成者ロール | サブスクリプションごとに 1 回行うだけで済みます。
Microsoft.ExtendedLocation 、Microsoft.SecretSyncController 、Microsoft.Kubernetes 、Microsoft.KubernetesConfiguration 、Microsoft.IoTOperations 、Microsoft.DeviceRegistry の各リソース プロバイダーを登録する必要があります。 |
Key Vault にシークレットを作成する | リソース レベルでの Key Vault Secrets Officer ロール | Azure Key Vault からシークレットを同期するためにセキュリティで保護された設定のデプロイにのみ必要です。 |
ストレージ アカウントの作成と管理 | ストレージ アカウント共同作成者ロール | Azure IoT Operations のデプロイに必要です。 |
リソース グループを作成する | リソース グループ共同作成者ロール | Azure IoT Operations リソースを格納するためのリソース グループを作成するために必要です。 |
クラスターを Azure Arc にオンボードする | Kubernetes クラスター - Azure Arc Onboarding ロール | Azure IoT Operations をデプロイするには、Arc 対応クラスターが必要です。 |
Azure リソース ブリッジのデプロイを管理する | Azure Resource Bridge のデプロイ ロール | Azure IoT Operations をデプロイするために必要です。 |
デプロイに対するアクセス許可を提供する | Azure Arc 対応 Kubernetes クラスター ユーザー ロール | Azure Arc 対応 Kubernetes クラスターにデプロイのアクセス許可を付与するために必要です。 |
ヒント
Akri サービスの自動資産検出機能を使用するには、Azure IoT Operations インスタンスでリソース同期規則を有効にする必要があります。 詳細については、「 OPC UA 資産検出 (プレビュー)とは」を参照してください。
Azure CLI を使用してロールを割り当てる場合は、az role assignment create コマンドを使ってアクセス許可を付与します。 たとえば、az role assignment create --assignee sp_name --role "Role Based Access Control Administrator" --scope subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyResourceGroup
のように指定します。
Azure portal を使用してユーザーまたはプリンシパルに特権管理者ロールを割り当てる場合は、条件を使ってアクセスを制限するように求められます。 このシナリオでは、[ロールの割り当ての追加] ページで [Allow user to assign all roles] (ユーザーがすべてのロールを割り当てることを許可する) という条件を選択します。
サイトを使用してインスタンスを整理する
Azure IoT Operations では、インスタンスを整理するための Azure Arc サイトがサポートされています。 "サイト" は、リソース グループのような Azure のクラスター リソースですが、通常、サイトは物理的な場所によってインスタンスをグループ化し、OT ユーザーが資産を簡単に見つけて管理できるようにします。 IT 管理者がサイトを作成し、サブスクリプションまたはリソース グループにスコープを設定します。 その後、Arc 対応クラスターにデプロイされた Azure IoT Operations は、サブスクリプションまたはリソース グループに関連付けられたサイトに自動的に収集されます
詳細については、「Azure Arc サイト マネージャーとは (プレビュー)」を参照してください
Azure IoT Operations エンドポイント
エンタープライズ ファイアウォールまたはプロキシを使用して送信トラフィックを管理する場合は、Azure IoT Operations をデプロイする前に次のエンドポイントを構成します。
Azure Arc 対応 Kubernetes エンドポイントのエンドポイント。
注
Azure Arc Gateway を使用してクラスターを Arc に接続する場合は、Arc Gateway のガイダンスに基づいて、より小規模なエンドポイント セットを構成できます。
Azure CLI エンドポイント内のエンドポイント。
このエンドポイント一覧の
graph.windows.net
、*.azurecr.io
、*.blob.core.windows.net
、*.vault.azure.net
が必要です。Azure IoT Operations には次のエンドポイントが特に必要です。
エンドポイント (DNS) 説明 <customer-specific>.blob.core.windows.net
スキーマ レジストリのストレージ。 エンドポイントのお客様固有のサブドメインを特定するには、「ストレージ アカウント エンドポイント」を参照してください。 データをクラウドにプッシュするには、選択したデータ プラットフォームに基づいて次のエンドポイントを有効にします。
- Microsoft Fabric OneLake: Fabric URL を許可リストに追加します。
- Event Hubs: 接続に関する問題のトラブルシューティング - Azure Event Hubs。
- Event Grid: 接続に関する問題のトラブルシューティング - Azure Event Grid。
- Azure Data Lake Storage Gen 2: ストレージ アカウントの Standard エンドポイント。
次のステップ
Azure Arc 対応 Kubernetes クラスターを準備して、Azure IoT Operations のクラスターを構成し、Arc 対応にします。