クイック スタート: Bicep テンプレートを使用して Azure Cosmos DB for MongoDB 仮想コア クラスターを作成する

適用対象: MongoDB 仮想コア

このクイックスタートでは、新しい Azure Cosmos DB for MongoDB 仮想コア クラスターを作成します。 このクラスターには、データベース、コレクション、ドキュメントなど、すべての MongoDB リソースが含まれています。 このクラスターは、Azure Cosmos DB に接続し、日常的な操作を実行するためのさまざまなツールと SDK に固有のエンドポイントを提供します。

前提条件

Bicep ファイルを確認する

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

@description('Azure Cosmos DB MongoDB vCore cluster name')
@maxLength(44)
param clusterName string = 'msdocs-${uniqueString(resourceGroup().id)}'

@description('Location for the cluster.')
param location string = resourceGroup().location

@description('Username for admin user')
param adminUsername string

@secure()
@description('Password for admin user')
@minLength(8)
@maxLength(128)
param adminPassword string

resource cluster 'Microsoft.DocumentDB/mongoClusters@2022-10-15-preview' = {
  name: clusterName
  location: location
  properties: {
    administratorLogin: adminUsername
    administratorLoginPassword: adminPassword
    nodeGroupSpecs: [
        {
            kind: 'Shard'
            shardCount: 1
            sku: 'M40'
            diskSizeGB: 128
            enableHa: false
        }
    ]
  }
}

resource firewallRules 'Microsoft.DocumentDB/mongoClusters/firewallRules@2022-10-15-preview' = {
  parent: cluster
  name: 'AllowAllAzureServices'
  properties: {
    startIpAddress: '0.0.0.0'
    endIpAddress: '0.0.0.0'
  }
}

Note

上記のコードでは、shardGroupSpecs は nodeGroupSpecs と呼ばれていることに注意してください。

Bicep ファイルには、次の 2 つの Azure リソースが定義されています。

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

Bicep テンプレートを使用して Azure Cosmos DB for MongoDB 仮想コア クラスターを作成します。

  1. resourceGroupNamelocation のシェル変数を作成する

    # Variable for resource group name and location
    resourceGroupName="msdocs-cosmos-quickstart-rg"
    location="eastus"
    
  2. az login コマンドを使用して Azure CLI にサインインします (まだ行っていない場合)。

  3. az group create コマンドを使用して、サブスクリプションに新しいリソース グループを作成します。

    az group create \
        --name $resourceGroupName \
        --location $location
    
  4. az deployment group create を使用して Bicep テンプレートをデプロイします。 その後、adminUsernameadminPassword パラメーターの値を入力するように求められます。

    az deployment group create \
        --resource-group $resourceGroupName \
        --template-file 'main.bicep'
    

    ヒント

    または、--parameters オプションを使用して、定義済みの値を持つパラメーター ファイルを渡します。

    az deployment group create \
        --resource-group $resourceGroupName \
        --template-file 'main.bicep' \
        --parameters @main.parameters.json
    

    この JSON ファイルの例では、adminUsernameadminPassword パラメーターの clusteradminP@ssw.rd 値をそれぞれ挿入します。

    {
      "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "adminUsername": {
          "value": "clusteradmin"
        },
        "adminPassword": {
          "value": "P@ssw.rd"
        }
      }
    }
    
  5. デプロイ操作が完了するまで待ってから移動してください。

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

Bicep テンプレートによってデプロイされたリソースをターゲット リソース グループに一覧表示します。

  1. az resource list を使用して、リソース グループ内のリソースの一覧を取得します。

    az resource list \
        --resource-group $resourceGroupName \
        --location $location \
        --output tsv
    
  2. 出力例で、Microsoft.DocumentDB/mongoClusters 型のリソースを探します。 想定される出力の種類の例を次に示します。

    Name                  ResourceGroup                Location    Type                                Status
    --------------------  ---------------------------  ----------  ----------------------------------  --------
    msdocs-sz2dac3xtwzzu  msdocs-cosmos-quickstart-rg  eastus      Microsoft.DocumentDB/mongoClusters
    

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

Azure Cosmos DB for MongoDB 仮想コア クラスターの使用を完了したら、それ以上料金がかからないように、作成した Azure リソースを削除できます。

  1. az group delete を使用して、サブスクリプションからリソース グループを削除します。

    az group delete \
        --name $resourceGroupName
    

次のステップ

このガイドでは、Azure Cosmos DB for MongoDB 仮想コア クラスターを作成する方法について説明しました。 これで、クラスターにデータを移行できるようになりました。