创建 Azure Cosmos DB for NoSQL 帐户、数据库和容器(具有自动缩放功能)
适用范围: NoSQL
本文中的脚本创建具有自动缩放功能的 Azure Cosmos DB for NoSQL 帐户、数据库和容器。
先决条件
-
如果没有 Azure 试用版订阅,请在开始前创建一个试用版订阅。
此脚本需要使用 Azure CLI 2.0.73 或更高版本。
注意
在可以在由世纪互联运营的 Microsoft Azure 中使用 Azure CLI 之前,请先运行
az cloud set -n AzureChinaCloud
来更改云环境。 若要切换回 Azure 公有云,请再次运行az cloud set -n AzureCloud
。可以使用 az account set 通过其他订阅登录,将
<subscriptionId>
替换为你的 Azure 订阅 ID。subscription="<subscriptionId>" # add subscription here az account set -s $subscription # ...or use 'az login'
如果愿意,可以安装 Azure CLI 以在本地运行脚本。 运行 az version 以查找安装的 Azure CLI 版本和依赖库。如果需要升级,请运行 az upgrade。 安装 Azure CLI 扩展(如果系统提示)。 如果你是在运行 Windows 或 macOS,请考虑在 Docker 容器中运行 Azure CLI。
如果使用的是本地安装,请通过运行 az login 并按提示操作登录到 Azure。 有关其他登录选项,请参阅使用 Azure CLI 登录。
示例脚本
运行以下脚本以创建 Azure 资源组、Azure Cosmos DB for NoSQL 帐户和数据库,以及具有自动缩放功能的容器。 资源的创建可能需要一点时间。
# Create a SQL API database and container with autoscale
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="chinaeast2"
resourceGroup="msdocs-cosmosdb-rg-$randomIdentifier"
tag="autoscale-sql-cosmosdb"
account="msdocs-account-cosmos-$randomIdentifier" #needs to be lower case
database="msdocs-db-sql-cosmos"
container="container1"
partitionKey="/partitionKey"
maxThroughput=1000 #minimum = 1000
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
# Create a Cosmos account for SQL API
echo "Creating $account"
az cosmosdb create --name $account --resource-group $resourceGroup --default-consistency-level Eventual --locations regionName="$location" failoverPriority=0 isZoneRedundant=False
# Create a SQL API database
echo "Creating $database"
az cosmosdb sql database create --account-name $account --resource-group $resourceGroup --name $database
# Create a SQL API container with autoscale
echo "Creating $container with $maxThroughput"
az cosmosdb sql container create --account-name $account --resource-group $resourceGroup --database-name $database --name $container --partition-key-path $partitionKey --max-throughput $maxThroughput
# </FullScript>
# echo "Deleting all resources"
# az group delete --name $resourceGroup -y
此脚本使用以下命令:
- az group create 创建资源组来存储所有资源。
- az cosmosdb create 创建适用于 API for NoSQL 的 Azure Cosmos DB 帐户。
- az cosmosdb sql database create 创建 Azure Cosmos DB for NoSQL 数据库。
- az cosmosdb sql container create 与
--max-throughput 1000
配合使用可创建一个具有自动缩放功能的 Azure Cosmos DB for NoSQL 容器。
清理资源
如果不再需要创建的资源,请使用 az group delete 命令删除资源组及其包含的所有资源。 这些资源包括 Azure Cosmos DB 帐户、数据库和容器。 资源的删除可能需要一点时间。
az group delete --name $resourceGroup