Azure リソースについて

完了

すべての Azure リソースは、特定の 種類でデプロイされます。 この型は、リソースの種類を識別します。 リソース ID は、Azure がリソースの特定のインスタンスを識別する方法です。 リソースの種類とリソース ID の構造を理解しておくことが重要です。これは、Bicep テンプレートを記述するときに重要な情報を提供するためです。

リソース プロバイダー

Azure Resource Manager は、Resource Manager API と Azure Resource Manager (ARM) テンプレートを使用してさまざまな リソース プロバイダー を管理できるように設計されています。 リソース プロバイダーは、通常、1 つまたは複数の Azure サービスに関連するリソースの種類を論理的にグループ化したものです。 リソース プロバイダーの例を次に示します。

  • Microsoft.Computeは、仮想マシンに使用されます。
  • Microsoft.Networkは、仮想ネットワーク、ネットワーク セキュリティ グループ、ルート テーブルなどのネットワーク リソースに使用されます。
  • Microsoft.Cacheは、Azure Cache for Redis に使用されます。
  • Microsoft.Sqlは、Azure SQL に使用されます。
  • Microsoft.Webは、Azure App Service と Azure Functions に使用されます。
  • Microsoft.DocumentDBは、Azure Cosmos DB に使用されます。

リソース プロバイダー名とリソースの種類名が、使用している Azure サービスの名前と一致しない場合や、古い製品またはリソース名である場合があります。 たとえば、Log Analytics ワークスペースのリソース プロバイダーは Microsoft.OperationalInsights

各リソースの種類の ARM テンプレート構文のドキュメントは、リソース プロバイダーに従って編成されています。

リソース プロバイダーが公開するリソースの種類を使用するには、サブスクリプションに対してリソース プロバイダーを登録する必要があります。 登録は通常、1 回限りのプロセスです。 Bicep デプロイを送信すると、Resource Manager によって、ファイルで使用されるリソース プロバイダーが自動的に登録されます。 Azure portal、Azure CLI、または Azure PowerShell を使用してリソース プロバイダーを登録 することもできます。

リソースの種類

リソース プロバイダーは、複数の異なる種類を公開します。 各リソースの種類には、リソースと実行できる操作を定義する独自のプロパティと動作のセットがあります。 たとえば、 Microsoft.Web リソース プロバイダー内には、次のようないくつかのリソースの種類があります。

  • sites。 App Service アプリケーションまたは Azure Functions アプリケーションを定義します。 プロパティには、アプリケーションが使用する環境変数と、アプリケーションにアクセスするためにサポートされているプロトコル (HTTP および HTTPS) が含まれます。
  • serverFarms。 アプリケーションを実行するインフラストラクチャである App Service プランを定義します。 プロパティには、サーバーのサイズと SKU、デプロイするプランのインスタンスの数が含まれます。

Bicep でリソースを定義するときは、リソースの種類と、Bicep でリソースに使用するリソース プロバイダーの API のバージョンを指定する必要があります。 この情報は、Bicep ツールと Resource Manager がリソース定義で提供する必要があるプロパティを決定するのに役立ちます。

ヒント

リソースごとに最新の API バージョンを使用することをお勧めします。 Azure サービスの新機能は、新しい API バージョンでのみ使用できる場合があります。

リソース プロバイダーと型名を組み合わせて、完全修飾リソースの種類名を作成します。 完全修飾型名は、リソース プロバイダー名、スラッシュ (/)、およびリソースの種類で構成されます。 たとえば、ストレージ アカウントの完全修飾型名は Microsoft.Storage/storageAccounts。 このインスタンスでは、そのリソース プロバイダー名が Microsoft.Storage され、リソースの種類が storageAccounts

リソース ID

すべての Azure リソースには一意のリソース ID があります。 この ID には、同じ種類の他のリソース、または同じ名前を共有する可能性のある異なるリソースからリソースを明確に区別するのに役立つ情報が含まれます。 ストレージ アカウントのリソース ID は次のようになります。

/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ToyDevelopment/providers/Microsoft.Storage/storageAccounts/secrettoys

同じ情報の視覚的な表現を次に示します。

ストレージ アカウントのリソース ID を示す図。ID の各コンポーネントは、個別の行に表示されます。

リソース ID に、リソースの種類とデプロイした特定のリソースに関する情報が含まれていることを確認できます。 このリソース ID の例のコンポーネントの内訳を次に示します。

  • subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e は、リソースが ID aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4eを持つ Azure サブスクリプションにあることを示します。
  • resourceGroups/ToyDevelopment は、リソースが ToyDevelopment という名前のリソース グループ内にあることを示します。
  • providers/Microsoft.Storage は、リソースが Microsoft.Storage リソース プロバイダーの型を使用していることを示します。
  • storageAccounts はリソースの種類です。
  • secrettoys はストレージ アカウントの名前です。

ヒント

シンボリック名と id プロパティを使用して、Bicep 内の任意のリソースの ID にアクセスできます。 たとえば、シンボリック名が toyDesignDocumentsStorageAccountストレージ アカウントを定義する場合は、式 toyDesignDocumentsStorageAccount.idを使用してそのリソース ID にアクセスできます。

リソースの種類とリソース ID の基本を理解したら、子リソースについて説明します。