クイック スタート: Bicep ファイルを使用して Microsoft Foundry リソースをデプロイする

このクイック スタートでは、Microsoft Bicep テンプレートを使用して、Microsoft Foundry リソースとプロジェクトをデプロイします。 Bicepは、1 つの調整されたデプロイで関連リソースを作成し、環境間で同じ構成を再利用するのに役立ちます。

Azure ポータルで Foundry リソースを既に構成している場合は、テンプレートを最初から作成する代わりにBicep ファイルとしてその構成をエクスポートできます。

ヒント

Foundry の一般的なデプロイ シナリオに対応する運用対応のBicep テンプレートについては、Foundry サンプル リポジトリの infrastructure-setup-bicep フォルダーを参照してください。 リポジトリを複製し、最初からではなくテンプレートをカスタマイズします。

前提 条件

アクティブなサブスクリプションを持つAzure アカウント。 お持ちでない場合は、無料試用版サブスクリプションを含む無料Azure アカウントを作成します。

  • 所有者などのロールの割り当てを完了できるロールへのアクセス。 アクセス許可の詳細については、「Microsoft Foundry の Role ベースのアクセス制御」を参照してください。
  • Bicep CLI をインストールします。

サンプル ファイルを取得します。

git clone https://github.com/microsoft-foundry/foundry-samples
cd foundry-samples/infrastructure/infrastructure-setup-bicep/00-basic

Bicep ファイルをデプロイする

Azure CLIまたはAzure PowerShellを使用して、Bicep ファイルをデプロイします。

az group create --name exampleRG --location eastus
az deployment group create --resource-group exampleRG --template-file main.bicep --parameters aiFoundryName=myai aiProjectName=myai-proj 

リファレンス: az group createaz deployment group create

メモ

myaiをリソースの名前に置き換えます。 exampleRG はリソース グループの名前であり、eastus はリソースがデプロイされるAzureリージョンです。

デプロイが完了すると、デプロイが成功したことを示すメッセージが表示されます (出力が表示されます: "provisioningState": "Succeeded")。 これにより、Foundry リソースとプロジェクトが作成されたことが確認されます。

既存のリソースをBicep ファイルにエクスポートする

Azure ポータルで Foundry リソースを既に構成している場合は、その構成をBicep ファイルとしてエクスポートできます。 エクスポートされたファイルは、ネットワーク ルール、ID 構成、プロジェクトの関連付けを含む、現在のリソース設定をキャプチャします。 環境間で繰り返し可能なデプロイの開始点として使用します。

  1. Azure ポータルで、Foundry リソースに移動します。

  2. 左側のメニューで、[ Automation] を展開し、[ テンプレートのエクスポート] を選択します。

    [Automation] グループが展開され、[テンプレートのエクスポート] が選択されている Foundry リソースの左側のメニューのスクリーンショット。

  3. Bicep タブを選択して、生成されたBicep コードを表示します。

    [Bicep] タブが選択された Foundry Export テンプレート ページのスクリーンショット。生成された Bicep コードの上に [ダウンロード] ボタンと [コピー] ボタンが表示されています。

  4. [ ダウンロード ] を選択してファイルをローカルに保存するか、[ コピー] を選択してコードをクリップボードにコピーします。

メモ

一部のリソースの種類で完全なエクスポートがサポートされていない場合、エクスポートは警告で完了する可能性があります。 出力を確認し、不足しているプロパティを手動で入力します。

エクスポートされたテンプレートをカスタマイズする

エクスポートされたBicep ファイルには、サブスクリプションとリソース グループに固有のハードコーディングされた値が含まれています。 テンプレートを再利用する前に、次の内容を確認して更新します。

  • ハードコードされたサブスクリプション ID、リソース グループ名、およびリソース ID を Bicep パラメーターに置き換えます。
  • 不要なプロパティ、またはデプロイ スコープ外のリソースを参照するプロパティを削除します。
  • 組織の要件に合わせてセキュリティ構成を追加または調整します。

エンタープライズ セキュリティ構成が既に組み込まれている運用対応のBicep テンプレートについては、Foundry サンプル リポジトリの infrastructure-setup-bicep フォルダーを参照してください。

テンプレートをカスタマイズするときは、次のセキュリティ構成を追加することを検討してください。 ガバナンス要件に基づいて選択します。

コントロール 追加するタイミング 詳細情報
プライベート エンドポイント (ネットワーク分離) 組織がパブリック エンドポイントを禁止しているか、コンプライアンス (HIPAA、PCI、FedRAMP) のために仮想ネットワーク上のトラフィックを保持する必要があります。 プライベート エンドポイントを使用してネットワーク分離を構成する
暗号化用のカスタマー マネージド キー (CMK) 暗号化キーのライフサイクル、ローテーションの周期、または失効を制御する必要があります。または、データ分類に Bring Your Own-Key が必要です。 暗号化用にカスタマー マネージド キーを設定する
ロールベースのアクセス制御 (RBAC) ビルダーと管理者の最小特権アクセスが必要です。または、Foundry リソースを共有する複数のチームにアクセス権を付与します。 Foundry のロールベースのアクセス制御を構成する
Azure Policy のカスタム定義 プラットフォーム チームは、組織が作成するすべての Foundry リソースにセキュリティ ベースライン (許可されたリージョン、必要なタグ、許可された SKU、必須の CMK、またはプライベート リンク) を適用します。 カスタム Azure Policy定義を作成します

Bicep ファイルを確認する (省略可能)

必要に応じて、Bicep テンプレートを確認して、リソース定義を理解します。

この記事で使用されているBicep ファイルは、https://github.com/microsoft-foundry/foundry-samples/tree/main/infrastructure/infrastructure-setup-bicep/00-basic にあります。

このテンプレートでは、次のリソースが作成されます。

デプロイされたリソースを確認する

Foundry ポータルを使用して、作成されたリソースを表示します。 Azure CLIまたはAzure PowerShellを使用してリソースを一覧表示することもできます。

az resource list --resource-group exampleRG

リソースのクリーンアップ

後続のクイック スタートとチュートリアルを引き続き使用する予定の場合は、このクイック スタートで作成したリソースを保持できます。 リソースを削除する場合は、次のコマンドを使用します。

az group delete --name exampleRG

リファレンス: az group delete

Troubleshooting

症状: 原因 Resolution
ServiceModelDeprecating デプロイ中にエラーが発生する Bicep テンプレートには、廃止された、または非推奨になりつつあるモデル バージョンを参照するモデルのデプロイが含まれています。 main.bicepを開き、modelDeployment リソース ブロックを見つけてコメント アウトするか、モデルのnameを更新して、現在使用可能なモデルにversionします。 az cognitiveservices model list --location <your-location> --query "[?model.lifecycleStatus=='GenerallyAvailable']"を実行して、使用可能なモデルを見つけます。
The content for this response was already consumed Azure CLI バージョン 2.74 から 2.75 には、実際のデプロイ エラーをマスクする既知のバグがあります。 --debugコマンドをもう一度実行し、出力でException Details:を検索して実際のエラーを見つけます。
AccountNameInvalid によるデプロイの失敗 aiFoundryName値はグローバルに一意で、2 ~ 64 文字である必要があり、小文字、数字、ハイフンのみを含めることができます。 <your-name>-foundry-<random-suffix>など、別の名前を選択します。
リソース がリソース グループとは異なるリージョンにデプロイされる Bicep テンプレートの location パラメーターの既定値は eastus2 ですが、リソース グループが別のリージョンにある可能性があります。 location パラメーターを明示的に渡します。 たとえば、 location=eastus--parameters リストに追加します。