この記事では、Azure portal で Azure Resource Manager テンプレートを使用して、環境内に Azure Local をデプロイする方法について詳しく説明します。 この記事には、デプロイを開始するために必要な前提条件と準備手順も含まれています。
重要
Azure ローカル システムの Azure Resource Manager テンプレートのデプロイは、大規模なデプロイを対象としています。 このデプロイの対象ユーザーは、Azure ローカル インスタンスのデプロイ経験がある IT 管理者です。 最初に Azure portal を使用してシステムをデプロイしてから、Resource Manager テンプレートを使用して後続のデプロイを実行することをお勧めします。
前提条件
- [ マシンを Azure Arc に登録し、デプロイアクセス許可を割り当てる] が完了しました。 次の点を確認します。
- すべてのマシンで同じバージョンの OS が実行されています。
- すべてのマシンに同じネットワーク アダプター構成があります。
- Azure Local 2411.3 以前のバージョンの場合は、デプロイ用の create-cluster-2411.3 テンプレートを必ず選択してください。
- Azure Local 2503 以降のバージョンの場合は、デプロイ用の create-cluster テンプレートを必ず選択してください。
手順 1: Azure リソースを準備する
デプロイに必要な Azure リソースを準備するには、次の手順に従います。
サービス プリンシパルとクライアント シークレットを作成する
システムを認証するには、Arc Resource Bridge (ARB) のサービス プリンシパルと対応する Client シークレット を作成する必要があります。
ARB 用のサービス プリンシパルを作成する
Azure portal 経由でリソースにアクセスできる Microsoft Entra アプリケーションとサービス プリンシパルを作成するの手順に従って、サービス プリンシパルを作成し、ロールを割り当てます。 または、PowerShell の手順を使用して、Azure PowerShell で Azure サービス プリンシパルを作成。
手順も次のようにまとめられています。
Microsoft Entra 管理センター少なくともクラウド アプリケーション管理者としてサインインします。 Identity > Applications > アプリの登録に移動し、[ 新規登録を選択します。
アプリケーションの Name を指定し、 サポートされているアカウントの種類を選択し、 Register を選択します。
サービス プリンシパルが作成されたら、 Enterprise アプリケーション ページに移動します。 作成した SPN を検索して選択します。
プロパティで、このサービス プリンシパルの Application (クライアント) ID と Object ID をコピーします。
リソース マネージャー テンプレートでは、アプリケーション (クライアント) ID を
arbDeploymentAppID
に、および オブジェクト ID をarbDeploymentSPNObjectID
に対して使用します。
ARB サービス プリンシパルのクライアント シークレットを作成する
作成したアプリケーションの登録に移動し、[証明書 & シークレット] > [クライアント シークレット] を参照します。
+ 新しいクライアント シークレットを選択します。
クライアント シークレットの Description を追加し、Expires の期限を指定します。 [] を選択し、[] を追加します。
後で使用するときに、 client シークレット値 コピーします。
注
アプリケーション クライアント ID には、シークレット値が必要です。 クライアント シークレットの値は、作成直後を除いて表示できません。 ページを離れる前に、必ず作成時にこの値を保存してください。
Resource Manager テンプレートの パラメーターに対して
arbDeploymentAppSecret
client シークレット値を使用します。
Azure ローカル リソース プロバイダーのオブジェクト ID を取得する
Azure Local Resource Provide (RP) のこのオブジェクト ID は、Azure テナントごとに一意です。
Azure portal で、[Microsoft Entra ID] を検索してそこに移動します。
[ 概要 ] タブに移動し、 Microsoft.AzureStackHCI リソース プロバイダーを検索します。
一覧表示されているサービス プリンシパル名を選択し、 オブジェクト ID をコピーします。
または、PowerShell を使用して、Azure ローカル RP サービス プリンシパルのオブジェクト ID を取得することもできます。 PowerShell で次のコマンドを実行します。
Get-AzADServicePrincipal -DisplayName "Microsoft.AzureStackHCI Resource Provider"
Resource Manager テンプレートの パラメーターに対して
hciResourceProviderObjectID
Object ID を使用します。
手順 2: Azure Resource Manager テンプレートを使用してデプロイする
Resource Manager テンプレートは、デプロイに必要なすべてのリソース アクセス許可を作成して割り当てます。
前提条件と準備手順がすべて完了したら、既知の適切でテスト済みの Resource Manager デプロイ テンプレートと対応するパラメーター JSON ファイルを使用してデプロイする準備が整いました。 JSON ファイルに含まれるパラメーターを使用して、以前に生成された値を含むすべての値を入力します。
重要
このリリースでは、JSON 値に含まれるすべてのパラメーターが、null 値を持つパラメーターを含めて入力されていることを確認します。 null 値がある場合は、これらのパラメーターを設定する必要があります。そうしないと、検証が失敗します。
Azure portal で [ ホーム ] に移動し、[ + リソースの作成] を選択します。
[テンプレートのデプロイ] で [ 作成 ] を選択します (カスタム テンプレートを使用してデプロイします)。
ページの下部にある [ クイック スタート テンプレートまたはテンプレート スペック ] セクションを見つけます。 [クイック スタート テンプレート] オプションを選択します。
[クイック スタート テンプレート (免責事項)] ドロップダウン リストから、create-cluster-2411.3 テンプレートを選択します。
完了したら、[ テンプレートの選択 ] ボタンを選択します。
[ 基本 ] タブには、[ カスタム デプロイ ] ページが表示されます。 ドロップダウン リストからさまざまなパラメーターを選択するか、[ パラメーターの編集] を選択できます。
注
ArcNodeResourceId
など、さまざまな入力の形式を示すパラメーター ファイルの例については、azuredeploy.parameters.jsonを参照してください。
クイック スタート テンプレート (免責事項) フィールドを使用して、適切なテンプレートをフィルター処理します。 フィルターに 「azurestackhci/create-cluster 」と入力します。
完了したら、[ テンプレートの選択 ] ボタンを選択します。
[ 基本 ] タブには、[ カスタム デプロイ ] ページが表示されます。 ドロップダウン リストからさまざまなパラメーターを選択するか、[ パラメーターの編集] を選択できます。
注
ArcNodeResourceId
など、さまざまな入力の形式を示すパラメーター ファイルの例については、azuredeploy.parameters.jsonを参照してください。
ネットワークインテントやストレージネットワークインテントなどのパラメータを編集します。 パラメーターがすべて入力されたら、パラメーター ファイルを 保存します 。
環境に適したリソース グループを選択します。
一番下までスクロールし、[ 展開モード] = [検証] であることを確認します。
[ 確認と作成] を選択します。
[ 確認と作成 ] タブで、[ 作成] を選択します。 これにより、残りの前提条件リソースが作成され、デプロイが検証されます。 検証が完了するまでに約 10 分かかります。
検証が完了したら、[ 再デプロイ] を選択します。
[ カスタム デプロイ ] 画面で、[ パラメーターの編集] を選択します。 以前に保存したパラメーターを読み込み、[ 保存] を選択します。
ワークスペースの下部で、JSON の最終的な値を [検証 ] から [ デプロイ] に変更します( デプロイ モード = デプロイ)。
Resource Manager デプロイ テンプレートのすべてのフィールドが Parameters JSON によって入力されていることを確認します。
環境に適したリソース グループを選択します。
一番下までスクロールし、 展開モード = デプロイを確認します。
[ 確認と作成] を選択します。
作成 を選択します。 デプロイは、 検証 手順で作成された既存の前提条件リソースを使用して開始されます。
デプロイ画面では、デプロイ中にクラスター リソースが循環します。
デプロイが開始されると、環境チェッカーの実行が制限され、完全な環境チェッカーが実行され、クラウドのデプロイが開始されます。 数分後に、ポータルでデプロイを監視できます。
新しいブラウザー ウィンドウで、環境のリソース グループに移動します。 クラスター リソースを選択します。
デプロイメント を選択します。
最初のマシン (シード マシンとも呼ばれ、クラスターをデプロイした最初のマシン) からデプロイの進行状況を最新の情報に更新して監視します。 デプロイには 2.5 から 3 時間かかります。 いくつかの手順には 40 ~ 50 分以上かかります。
最も時間がかかるデプロイの手順は、moc と ARB Stack のデプロイです。 この手順には 40 ~ 45 分かかります。
完了すると、上部のタスクが状態と終了時刻で更新されます。
このコミュニティソースのテンプレートを確認して、 Bicep を使用して Azure ローカル インスタンスをデプロイすることもできます。
デプロイに関する問題のトラブルシューティング
デプロイが失敗した場合は、デプロイ ページにエラー メッセージが表示されます。
[ デプロイの詳細] で、 エラーの詳細を選択します。
エラー ブレードからエラーメッセージをコピーします。 このエラー メッセージは、Microsoft サポートに提供してさらにサポートを受けることができます。
ARM テンプレートのデプロイに関する既知の問題
このセクションには、ARM テンプレートのデプロイに関する既知の問題と回避策が含まれています。
ロールの割り当ては既に存在しています
問題: このリリースでは、 ロールの割り当てが既に存在するエラーが 表示される場合があります。 このエラーは、Azure ローカル インスタンスのデプロイが最初にポータルから試行され、ARM テンプレートのデプロイに同じリソース グループが使用された場合に発生します。 このエラーは、該当するリソースの [概要] > [デプロイの詳細 ] ページに表示されます。 このエラーは、同じリソース グループ スコープの別の ID によって同等のロールの割り当てが既に行われ、ARM テンプレートのデプロイでロールの割り当てを実行できないことを示します。
回避策: [デプロイの詳細] ページにおいて、失敗したリソースはロール割り当て名を明記しています。 リソース名が AzureStackHCIDeviceManagementRole-RoleAssignment の場合、 Azure Stack HCI デバイス管理ロールのロールの割り当てが失敗しました。 このロール名を書き留め 、リソース グループ > アクセス制御 (IAM) > ロールの割り当てに移動します。 対応する名前を検索し、そこで既存のロールの割り当てを削除します。 テンプレートを再デプロイします。
テナント ID、アプリケーション ID、プリンシパル ID、およびスコープの更新は許可されていません
問題: ロールの割り当てがエラー テナント ID、アプリケーション ID、プリンシパル ID、スコープの更新が許可されず によって失敗する。 このエラーは、該当するリソースの [概要] > [デプロイの詳細 ] ページに表示されます。 このエラーは、同じリソース グループにゾンビ ロールの割り当てがある場合に表示される可能性があります。 たとえば、以前のデプロイが実行され、そのデプロイに対応するリソースが削除されたが、ロールの割り当てリソースが残っている場合などです。
回避策: ゾンビ ロールの割り当てを特定するには、[ アクセス制御 (IAM)] > [ロールの割り当て] > [種類: 不明 ] タブに移動します。これらの割り当ては、 ID が見つからないと表示されます。ID が見つかりません。 このようなロールの割り当てを削除してから、ARM テンプレートのデプロイを再試行します。
ライセンス同期の問題
問題: このリリースでは、ARM テンプレートのデプロイを使用するときにライセンス同期の問題が発生する可能性があります。
回避策: システムが検証ステージを完了した後、システムがデプロイ失敗状態の場合は、 検証 モードで別の ARM テンプレート のデプロイ を開始しないことをお勧めします。 別の展開を開始すると、システムプロパティがリセットされ、ライセンス同期の問題が発生する可能性があります。