ARM テンプレートをデプロイする
テンプレートをテスト環境または運用環境にデプロイする場合でも、Azure Cloud Shell またはコマンド ラインからデプロイする機能は非常に重要です。 このユニットでは、テンプレートをデプロイする次の方法について説明します。
- Azure PowerShell
- Azure CLI(Azure コマンドライン インターフェイス)
- GitHub のアクション
場合によっては、さまざまな場所からデプロイする必要があります。 例えば次が挙げられます。
- ローカル ファイルから。
- Uri (Uniform Resource Identifier) を使用して、外部またはリモートの場所から。
どちらの方法にも、パラメーター ファイルを使用するオプションが含まれています。
テンプレートをデプロイするときは、リソースを含むリソース グループを指定する必要があります。 デプロイ コマンドを実行する前に、Azure CLI または Azure PowerShell を使用してリソース グループを作成します。
また、デプロイ履歴で簡単に識別できるように、デプロイに名前を付ける必要があります。 デプロイの名前を指定しない場合、テンプレート ファイルの名前が既定で使用されます。 たとえば、 azuredeploy.json という名前のテンプレートをデプロイし、デプロイ名を指定しない場合、デプロイには azuredeploy という名前が付けられます。
便宜上、テンプレート ファイルへのパスを格納する変数を作成することもできます。 この変数を使用すると、デプロイのたびにパスを指定する必要がないため、デプロイ コマンドを簡単に実行できます。
ARM テンプレート機能を使用して複数の Azure 環境にデプロイするモジュールでは、ARM テンプレート パラメーター ファイルを使用して値を保持する方法について学習しました。 その後、テンプレートのデプロイ時に値が ARM テンプレートに渡されます。 または、コマンド自体の一部としてパラメーターをインライン パラメーターとして渡すことができます。 インライン パラメーターは、パラメーターがプログラムによって生成されるスクリプト環境の一部として、自動デプロイに適しています。
Azure PowerShell
Azure PowerShell を使用して ARM テンプレートを使用してリソースを Azure にデプロイする場合は、いくつかのスコープに注意する必要があります。 デプロイのスコープに応じて、さまざまなコマンドを使用してデプロイを対象とします。
- リソース グループにデプロイするには、New-AzResourceGroupDeployment を使用します。
- サブスクリプションにデプロイするには、 New-AzSubscriptionDeployment を使用します。
- 管理グループにデプロイするには、 New-AzManagementGroupDeployment を使用します。
- テナントにデプロイするには、 New-AzTenantDeployment を使用します。
ほとんどの場合、デプロイの対象はリソース グループ (このモジュールの焦点) です。 より大きなスコープにわたってポリシーまたはロールの割り当てを適用する必要がある場合は、サブスクリプション、管理グループ、またはテナントにデプロイをターゲットにすることができます。
Azure CLI(Azure コマンドライン インターフェイス)
Azure CLI デプロイには、同じデプロイ スコープが存在します。
- リソース グループにデプロイするには、az deployment group create を使用します。
- サブスクリプションにデプロイするには、 az deployment sub create を使用します。
- 管理グループにデプロイするには、 az deployment mg create を使用します。
- テナントにデプロイするには、 az deployment tenant create を使用します。