藉由啟用效能 Plus,為 513 GiB 以上的 Azure 進階固態硬碟 (SSD)、標準 SSD 和標準硬碟 (HDD) 提升每秒輸入/輸出作業數 (IOPS) 和輸送量限制。 啟用效能 Plus 可改善需要高 IOPS 和輸送量的工作負載體驗,例如資料庫和交易式工作負載。 在磁碟上啟用 Performance Plus 不需要額外費用。
啟用之後,合格磁碟的 IOPS 和輸送量限制會提高到較高的上限。 若要查看合格磁碟的新 IOPS 和輸送量限制,請參閱 VM 磁碟的延展性和效能目標 一文中以「*展開」開頭的數據行。
局限性
- 只能在 513 GiB 或更大的標準 HDD、標準 SSD 和進階 SSD 受控磁碟上啟用
- 只能在磁碟建立期間啟用
- 若要解決此問題,請建立磁碟的快照集,然後從快照集建立新的磁碟
- 無法在虛擬機器建立期間建立的磁碟上啟用。
- 不支援使用 Azure Site Recovery 復原的磁碟
先決條件
使用 Azure Cloud Shell 執行命令,或安裝 Azure PowerShell 模組 9.5 或更新版本,或 2.44.0 或更新版本的 Azure CLI 。
啟用效能增強功能
您必須建立新的磁碟,才能使用效能 Plus。 下列腳本示範如何建立啟用了效能加強功能的磁碟,並視需要將其連結至虛擬機器。 命令已組織成獨立的步驟,以取得可靠性。
建立資源群組
此步驟會建立具有唯一名稱的資源群組。
export RANDOM_SUFFIX=$(openssl rand -hex 3)
export MY_RG="PerfPlusRG$RANDOM_SUFFIX"
export REGION="WestUS2"
az group create -g $MY_RG -l $REGION
結果:
{
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusRGxxx",
"location": "WestUS2",
"name": "PerfPlusRGxxx",
"properties": {
"provisioningState": "Succeeded"
}
}
建立啟用了效能加強功能的新磁碟
此步驟會建立 513 GiB(或更大)的新磁碟,使用有效的 SKU 值來啟用增強效能功能。
export MY_DISK="PerfPlusDisk$RANDOM_SUFFIX"
export SKU="Premium_LRS"
export DISK_SIZE=513
az disk create -g $MY_RG -n $MY_DISK --size-gb $DISK_SIZE --sku $SKU -l $REGION --performance-plus true
結果:
{
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusRGxxx/providers/Microsoft.Compute/disks/PerfPlusDiskxxx",
"location": "WestUS2",
"name": "PerfPlusDiskxxx",
"properties": {
"provisioningState": "Succeeded",
"diskSizeGb": 513,
"sku": "Premium_LRS",
"performancePlus": true
},
"type": "Microsoft.Compute/disks"
}
嘗試將磁碟連結至 VM
這個選擇性步驟會嘗試將磁碟連結至現有的 VM。 它會先檢查 VM 是否存在,然後據以繼續進行。
export MY_VM="NonExistentVM"
if az vm show -g $MY_RG -n $MY_VM --query "name" --output tsv >/dev/null 2>&1; then
az vm disk attach --vm-name $MY_VM --name $MY_DISK --resource-group $MY_RG
else
echo "VM $MY_VM not found. Skipping disk attachment."
fi
結果:
VM NonExistentVM not found. Skipping disk attachment.
從現有的磁碟或快照集建立已啟用效能提升功能的新磁碟
這一系列步驟會建立個別的資源群組,然後從現有的磁碟或快照集建立新的磁碟。 將SOURCE_URI替換為屬於與磁碟相同區域(WestUS2)的有效的來源 Blob URI。
建立遷移用的資源群組
export RANDOM_SUFFIX=$(openssl rand -hex 3)
export MY_MIG_RG="PerfPlusMigrRG$RANDOM_SUFFIX"
export REGION="WestUS2"
az group create -g $MY_MIG_RG -l $REGION
結果:
{
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusMigrRGxxx",
"location": "WestUS2",
"name": "PerfPlusMigrRGxxx",
"properties": {
"provisioningState": "Succeeded"
}
}
從現有的快照集或磁碟建立磁碟
# Create a snapshot from the original disk
export MY_SNAPSHOT_NAME="PerfPlusSnapshot$RANDOM_SUFFIX"
echo "Creating snapshot from original disk..."
az snapshot create \
--name $MY_SNAPSHOT_NAME \
--resource-group $MY_RG \
--source $MY_DISK
# Get the snapshot ID for use as source
SNAPSHOT_ID=$(az snapshot show \
--name $MY_SNAPSHOT_NAME \
--resource-group $MY_RG \
--query id \
--output tsv)
echo "Using snapshot ID: $SNAPSHOT_ID"
# Create the new disk using the snapshot as source
export MY_MIG_DISK="PerfPlusMigrDisk$RANDOM_SUFFIX"
export SKU="Premium_LRS"
export DISK_SIZE=513
az disk create \
--name $MY_MIG_DISK \
--resource-group $MY_MIG_RG \
--size-gb $DISK_SIZE \
--performance-plus true \
--sku $SKU \
--source $SNAPSHOT_ID \
--location $REGION
結果:
{
"id": "/subscriptions/xxxxx/resourceGroups/PerfPlusMigrRGxxx/providers/Microsoft.Compute/disks/PerfPlusMigrDiskxxx",
"location": "WestUS2",
"name": "PerfPlusMigrDiskxxx",
"properties": {
"provisioningState": "Succeeded",
"diskSizeGb": 513,
"sku": "Premium_LRS",
"performancePlus": true,
"source": "https://examplestorageaccount.blob.core.windows.net/snapshots/sample-westus2.vhd"
},
"type": "Microsoft.Compute/disks"
}