分享方式:


使用 Azure CLI 在可用性設定組中建立和部署虛擬機器

適用於: ✔️ Linux VM

在本教學課程中,您會學到如何使用稱為「可用性設定組」的功能,增加 Azure 虛擬機器解決方案的可用性和可靠性。 可用性設定組可確保您在 Azure 上部署的 VM 會分散到多個各自獨立的硬體叢集中。 這麼做可以確保當 Azure 發生硬體或軟體故障時,受到影響的只會是一部分的 VM 子集,您整體的解決方案則會維持可用且正常運作。

在本教學課程中,您會了解如何:

  • 建立可用性設定組
  • 在可用性設定組中建立 VM
  • 檢查可用的 VM 大小

本教學課程會使用 Azure Cloud Shell 內的 CLI,這會不斷更新至最新版本。 若要開啟 Cloud Shell,請選取任何程式碼區塊頂端的 [試試看]。

如果您選擇在本機安裝和使用 CLI,本教學課程會要求您執行 Azure CLI 2.0.30 版或更新版本。 執行 az --version 以尋找版本。 如果您需要安裝或升級,請參閱安裝 Azure CLI

建立可用性設定組

您可以使用 az vm availability-set create 來建立可用性設定組。 在此範例中,我們會針對 myResourceGroupAvailability 資源群組中名為 myAvailabilitySet 的可用性設定組,將更新和容錯網域數目設定為 2。

首先,使用 az group create 建立資源群組,然後建立可用性設定組:

az group create --name myResourceGroupAvailability --location eastus

az vm availability-set create \
    --resource-group myResourceGroupAvailability \
    --name myAvailabilitySet \
    --platform-fault-domain-count 2 \
    --platform-update-domain-count 2

可用性設定組可讓您跨容錯網域和更新網域來隔離資源。 容錯網域代表以隔離方式集合在一起的伺服器、網路和儲存體資源。 在前面的範例中,在部署 VM 時,可用性設定組會分散到至少兩個容錯網域。 可用性設定組也會分散到兩個更新網域。 兩個更新網域可確保當 Azure 執行軟體更新時,VM 資源是隔離的,以免在 VM 上執行的所有軟體同時更新。

建立位於可用性設定組內的 VM

您必須將 VM 建立於可用性設定組內,才能確保 VM 會在硬體中正確地分散。 建立可用性設定組之後,就無法在其中新增現有的 VM。

透過 az vm create 建立 VM 時,使用 --availability-set 參數來指定可用性設定組的名稱。

for i in `seq 1 2`; do
   az vm create \
     --resource-group myResourceGroupAvailability \
     --name myVM$i \
     --availability-set myAvailabilitySet \
     --size Standard_DS1_v2  \
     --vnet-name myVnet \
     --subnet mySubnet \
     --image UbuntuLTS \
     --admin-username azureuser \
     --generate-ssh-keys
done

可用性設定組內有兩部虛擬機器。 由於它們位於相同的可用性設定組內,Azure 會確保 VM 和其所有資源 (包括資料磁碟) 會分散到隔離開來的實體硬體中。 這樣的分佈方式有助於確保 VM 解決方案整體有更高的可用性。

移至資源群組 >myResourceGroupAvailability> myAvailabilitySet,即可在入口網站中檢視可用性設定組分佈方式。 VM 會分散到兩個容錯和更新網域,如下列範例所示:

入口網站中的可用性設定組

檢查可用的 VM 大小

稍後可以將其他 VM 新增至可用性設定組,其中的 VM 大小可用於硬體上。 針對可用性設定組,使用 az vm availability-set list-sizes 列出硬體叢集上所有可用的大小。

az vm availability-set list-sizes \
     --resource-group myResourceGroupAvailability \
     --name myAvailabilitySet \
	 --output table

後續步驟

在本教學課程中,您已了解如何:

  • 建立可用性設定組
  • 在可用性設定組中建立 VM
  • 檢查可用的 VM 大小

請前進到下一個教學課程,以了解虛擬機器擴展集。