你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
创建 Azure Cosmos DB for NoSQL 帐户、数据库和容器(具有自动缩放功能)
适用范围: NoSQL
本文中的脚本创建具有自动缩放功能的 Azure Cosmos DB for NoSQL 帐户、数据库和容器。
先决条件
-
如果没有 Azure 订阅,请在开始之前创建一个 Azure 免费帐户。
此脚本需要使用 Azure CLI 2.0.73 或更高版本。
可以在 Azure Cloud Shell的 Bash 环境中运行脚本。 Cloud Shell 打开时,请确保 Bash 显示在 shell 窗口左上角的环境字段中。 Cloud Shell 始终有最新版本的 Azure CLI。
Cloud Shell 会自动使用你在登录 Azure 门户时使用的帐户进行身份验证。 可以使用 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="East US"
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
此脚本使用以下命令:
- 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