共用方式為


在 Linux VM 中新增磁碟

適用於:✔️ Linux VM ✔️ 彈性擴展集

本文說明如何將持續性磁碟連結至虛擬機器 (VM) 以保留資料,即使您的 VM 因維護或調整大小而重新佈建也一樣。

將新磁碟附加至 VM

如果您想要將一個新的空白資料磁碟新增至 VM,請使用 az vm disk attach 命令並搭配 --new 參數。 如果您的 VM 位於可用性區域,系統會自動在與 VM 相同的區域中建立磁碟。 如需詳細資訊,請參閱可用性區域概觀。 下列範例會建立名為 myDataDisk 的磁碟,其大小為 50 GB:

az vm disk attach \
   -g myResourceGroup \
   --vm-name myVM \
   --name myDataDisk \
   --new \
   --size-gb 50

更低的延遲性

在選取的區域中,磁碟連接延遲會減少。 在這些地區,進步高達 15%。 如果您在 VM 之間進行計劃性或非計劃性容錯移轉、正在調整工作負載,或正在執行大規模可設定狀態工作負載,例如 Azure Kubernetes Service,則此改進非常有用。 不過,這項改善僅限於明確的磁碟連結命令 az vm disk attach。 如果您呼叫可能會隱含執行連結的命令 (例如 az vm update),則不會看到效能改善。 您無須採取呼叫明確連結命令以外的動作,即可看到這項改進。

較低延遲目前在每個公用區域都可以使用,但下列區域除外:

  • 加拿大中部
  • 美國中部
  • 美國東部
  • 美國東部 2
  • 美國中南部
  • 美國西部 2
  • 德國北部
  • 印度西部
  • 北歐
  • 西歐

連接現有磁碟

若要連結現有磁碟,請找出磁碟識別碼,並將識別碼傳遞到 az vm disk attach 命令。 下列範例會查詢 myResourceGroup 中名為 myDataDisk 的磁碟,然後將其連結至名為 myVM 的 VM:

diskId=$(az disk show -g myResourceGroup -n myDataDisk --query 'id' -o tsv)

az vm disk attach -g myResourceGroup --vm-name myVM --name $diskId

識別磁碟

Azure Linux VM 會根據 VM 大小和世代使用不同的磁碟介面:

  • VM 規格 v6 和更新版本:使用 NVMe 介面來改善效能
  • VM 規格 v5 和更早版本:使用 SCSI 介面進行磁碟管理

如需 SCSI 與 NVMe 差異的詳細資訊、請參閱 “ SCSI 至 NVMe 轉換”。

連接至虛擬機器

若要識別與 Linux VM 相關聯的磁碟,請使用 SSH 連線到 VM。 如需詳細資訊,請參閱 如何搭配 Azure 上的 Linux 使用 SSH。 下列範例會連線到公用 IP 位址為 10.123.123.25 且使用者名稱為 azureuser 的 VM:

ssh azureuser@10.123.123.25

附註

在識別特定磁碟之前,請先判斷您的 VM 是否使用 SCSI、NVMe 或這兩個介面的組合。

azure-vm-utils 套件提供公用程式來優化 Azure VM 上的 Linux 體驗,讓磁碟識別在不同的 VM 設定中更可靠。

使用下列命令來列出 VM 上的磁碟:

# List all disks
sudo azure-disk-list

# List NVMe disks with detailed information
sudo azure-nvme-id

輸出 azure-nvme-id 類似於:

/dev/nvme0n1: type=os
/dev/nvme0n2: type=data, lun=0
/dev/nvme1n1: type=local, index=1, name=nvme-50G-1

後續步驟