クイック スタート: Bicep を使用して Azure AI Search をデプロイする

この記事では、Azure portal で Bicep ファイルを使って Azure AI Search リソースをデプロイする手順について説明します。

Bicep は、宣言型の構文を使用して Azure リソースをデプロイするドメイン固有言語 (DSL) です。 簡潔な構文、信頼性の高いタイプ セーフ、およびコードの再利用のサポートが提供されます。 Bicep により、Azure のコード ソリューションとしてのインフラストラクチャに最適な作成エクスペリエンスが実現します。

テンプレートに含まれているプロパティのみが、デプロイで使用されます。 ネットワーク セキュリティの設定など、カスタマイズがさらに必要な場合は、デプロイ後のタスクとして、サービスを更新することができます。 既存のサービスを最も少ない手順でカスタマイズするには、Azure CLI または Azure PowerShell を使用します。 プレビュー機能を評価する場合は、Management REST API を使用します。

ヒント

事前構成済みのインデクサーを使用して Azure AI Search を Cosmos DB for NoSQL にデプロイする別の Bicep テンプレートについては、「Azure AI Search の Bicep デプロイ」を参照してください。 インデックスの作成などの Azure AI 検索データ プレーン操作に対する bicep テンプレートのサポートはありませんが、REST API を呼び出すモジュールを追加できます。 このサンプルには、インデックス、データ ソース コネクタと、Cosmos DB から 5 分間隔で更新されるインデクサーを作成するモジュールが含まれています。

前提条件

Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

Bicep ファイルを確認する

このクイックスタートで使用される Bicep ファイルは、Azure クイックスタート テンプレートからのものです。

@description('Service name must only contain lowercase letters, digits or dashes, cannot use dash as the first two or last one characters, cannot contain consecutive dashes, and is limited between 2 and 60 characters in length.')
@minLength(2)
@maxLength(60)
param name string

@allowed([
  'free'
  'basic'
  'standard'
  'standard2'
  'standard3'
  'storage_optimized_l1'
  'storage_optimized_l2'
])
@description('The pricing tier of the search service you want to create (for example, basic or standard).')
param sku string = 'standard'

@description('Replicas distribute search workloads across the service. You need at least two replicas to support high availability of query workloads (not applicable to the free tier).')
@minValue(1)
@maxValue(12)
param replicaCount int = 1

@description('Partitions allow for scaling of document count as well as faster indexing by sharding your index over multiple search units.')
@allowed([
  1
  2
  3
  4
  6
  12
])
param partitionCount int = 1

@description('Applicable only for SKUs set to standard3. You can set this property to enable a single, high density partition that allows up to 1000 indexes, which is much higher than the maximum indexes allowed for any other SKU.')
@allowed([
  'default'
  'highDensity'
])
param hostingMode string = 'default'

@description('Location for all resources.')
param location string = resourceGroup().location

resource search 'Microsoft.Search/searchServices@2020-08-01' = {
  name: name
  location: location
  sku: {
    name: sku
  }
  properties: {
    replicaCount: replicaCount
    partitionCount: partitionCount
    hostingMode: hostingMode
  }
}

この Bicep ファイルで定義されている Azure リソースは次のとおりです。

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

  1. Bicep ファイルを main.bicep としてローカル コンピューターに保存します。

  2. Azure CLI または Azure PowerShell のどちらかを使用して Bicep ファイルをデプロイします。

    az group create --name exampleRG --location eastus
    az deployment group create --resource-group exampleRG --template-file main.bicep --parameters serviceName=<service-name>
    

    注意

    <service-name> を Search Service の名前に置き換えます。 サービス名に使用できるのは、小文字、数字、ダッシュのみです 最初の 2 文字または最後の文字としてダッシュを使うことはできません。 名前の最小長は 2 文字、最大長は 60 文字です。

    デプロイが完了すると、デプロイが成功したことを示すメッセージが表示されます。

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

Azure portal、Azure CLI、または Azure PowerShell を使用して、リソースグループ内のデプロイ済みリソースをリスト表示します。

az resource list --resource-group exampleRG

リソースをクリーンアップする

Azure AI Search は課金対象のリソースです。 不要になった場合は、課金されないようにサブスクリプションから削除してください。 Azure portal、Azure CLI、または Azure PowerShell を使用して、リソース グループとそのリソースを削除できます。

az group delete --name exampleRG

次のステップ

このクイックスタートでは、Bicep ファイルを使って Azure AI Search サービスを作成した後、デプロイを検証しました。 Azure AI 検索と Azure Resource Manager の詳細については、これらの記事に進んでください。