部署裝載於 Vagrant 的本機 Ubuntu 伺服器,並將其連線至 Azure Arc

本文提供使用 Vagrant 部署本機 Ubuntu 虛擬機的指引,並將它連線為已啟用 Azure Arc 的伺服器資源。

必要條件

  1. 複製 Azure Arc Jumpstart 存放庫。

    git clone https://github.com/microsoft/azure_arc.git
    
  2. 將 Azure CLI 安裝或更新為 2.7 版和更新版本。 使用下列命令來檢查您目前的已安裝版本。

    az --version
    
  3. Vagrant 依賴基礎 Hypervisor。 針對本指南,我們使用 Oracle VM VirtualBox。

    1. 安裝 VirtualBox

      • 如果您是macOS使用者,請執行 brew cask install virtualbox
      • 如果您是 Windows 使用者,您可以使用 Chocolatey 套件
      • 如果您是 Linux 使用者,您可以在下載適用於 Linux 主機的 VirtualBox 中找到所有套件安裝方法。
    2. 安裝 Vagrant

      • 如果您是macOS使用者,請執行 brew cask install vagrant
      • 如果您是 Windows 使用者,您可以使用 Chocolatey 套件
      • 如果您是Linux使用者,請流覽 Vagrant 下載頁面
  4. 建立 Azure 服務主體。

    若要將 Vagrant 虛擬機連線到 Azure Arc,則需要指派參與者角色的 Azure 服務主體。 若要建立它,請登入您的 Azure 帳戶,然後執行下列命令。 您也可以在 Azure Cloud Shell執行此命令。

    az login
    az account set -s <Your Subscription ID>
    az ad sp create-for-rbac -n "<Unique SP Name>" --role contributor --scopes "/subscriptions/<Your Subscription ID>"
    

    例如:

    az ad sp create-for-rbac -n "http://AzureArcServers" --role contributor --scopes "/subscriptions/00000000-0000-0000-0000-000000000000"
    

    輸出應該看起來像這樣:

    {
      "appId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "displayName": "http://AzureArcServers",
      "password": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
      "tenant": "XXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    }
    

    注意

    強烈建議您將服務主體的範圍設定為特定的 Azure 訂用帳戶和資源群組

  5. Vagrant 檔案會在 VM OS 上執行腳本,以安裝所有必要的成品,並插入環境變數。 scripts/vars.sh編輯殼層腳本,以符合您所建立的 Azure 服務主體。

    • subscriptionId = 您的 Azure 訂用帳戶識別碼
    • appId = 您的 Azure 服務主體名稱
    • password = 您的 Azure 服務主體密碼
    • tenantId = 您的 Azure 租使用者識別碼
    • resourceGroup = Azure 資源組名
    • location = Azure 區域

部署

如同任何 Vagrant 部署, 需要 VagrantfileVagrant 方 塊。 在高層級,部署會:

編輯 scripts/vars.sh 文稿以符合您的環境之後,請從 Vagrantfile 資料夾執行 vagrant up。 由於這是第一次建立 VM,因此第一次執行的速度會 比後續執行慢 得多,因為部署會第一次下載 Ubuntu 方塊。

A screenshot of the vagrant up command.

下載完成後,布建就會開始。 如下列螢幕快照所示,此程式不需要超過三分鐘。

A screenshot of a completed vagrant up command.

完成後,您會在新的資源群組內,部署本機 Ubuntu VM,並連線為已啟用 Azure Arc 的新伺服器。

A screenshot of an Azure Arc-enabled server in the Azure portal.

A screenshot of details from an Azure Arc-enabled server in the Azure portal.

半自動化部署(選擇性)

最後一個步驟是將 VM 註冊為已啟用 Azure Arc 的新伺服器資源。

Another screenshot of the vagrant up command.

如果您想要示範/控制實際的註冊程式,請完成下列步驟:

  1. 在殼層腳本中 install_arc_agent ,將 run connect command 區段批注化並儲存盤案。 您也可以批註化或變更資源群組的建立。

    A screenshot of the azcmagent connect command.

    A screenshot of the az group create command.

  2. 使用 vagrant ssh 命令透過 SSH 連線至 VM。

    A screenshot of an SSH key connecting to the Vagrant machine.

  3. 執行您使用環境變數批註的相同 azcmagent connect 命令。

    Another screenshot of the azcmagent connect command.

刪除部署

若要刪除整個部署,請執行 vagrant destroy -f 命令。 vagrantfile 包含 before: destroy Vagrant 觸發程式,它會執行腳本來刪除 Azure 資源群組,再終結實際的 VM。

A screenshot of the vagrant destroy command.