準備適用於 Azure 本機虛擬機的 Red Hat Enterprise 映射 (預覽)
適用於:Azure 本機版本 23H2
本文說明如何準備 Red Hat Enterprise Linux 映射,以在 Azure 本機上建立虛擬機(VM)。 您可以使用 Azure CLI 來建立 VM 映射。
必要條件
開始之前,請先符合下列必要條件:
- 可以存取 Azure 本機實例。 此系統已部署、註冊並連線至 Azure Arc。移至 Azure 本機資源中的 [概觀 ] 頁面。 在右窗格的 [ 伺服器 ] 索引卷標上, Azure Arc 應顯示為 [ 已連線]。
- 在 Azure 本機實例上下載最新支援的 Red Hat Enterprise 伺服器映像 。 我們支援所有 Red Hat Enterprise Linux 7.x、8.x 和 9.x 版本。 在這裡,我們下載了 rhel-9.4-x86_64-boot.iso 檔案。 您可以使用此映像來建立 VM 映像。
工作流程
若要準備 Red Hat Enterprise 映射並建立 VM 映射:
下列各節提供工作流程中每個步驟的詳細指示。
從 Red Hat Enterprise 映射建立 VM 映像
重要
- 請勿使用 Azure 虛擬機器 VHD 磁碟來準備 Azure 本機的 VM 映像。
- 如果您想要在 VM 上啟用來賓管理,建議您準備 Red Hat Enterprise 映射。
請遵循 Azure 本機系統上的下列步驟,使用 Azure CLI 建立 VM 映射。
步驟 1:建立 Red Hat Enterprise VM
若要使用下載的 Red Hat Enterprise 映射來布建 VM:
使用下載的映像來建立具有下列規格的 VM:
為您的 VM 提供易記名稱。
當您在這裡使用 VHDX 映射時,請為 VM 指定 第 2 代。
選取 [指派記憶體],然後針對 [啟動記憶體] 輸入 4096。
選取 [設定網络]。 從下拉式清單中,選取 VM 用於連線的虛擬交換器。
接受 [連線虛擬硬碟] 頁面上的預設值。
選取 [安裝選項],然後從可開機映射檔選取 [安裝操作系統]。 指向您稍早下載的 ISO。
如需逐步指示,請參閱 使用 Hyper-V 管理員布建 VM。
使用 UEFI 憑證來保護 VM 開機。
建立 VM 之後,它會顯示在 Hyper-V 管理員中。 選取 VM,以滑鼠右鍵按下它,然後選取 [ 設定]。
在左窗格中,選取 [安全性] 索引標籤。然後在 [安全開機] 下拉式清單中,選取 [Microsoft UEFI 證書頒發機構單位]。
選取 [確定] 儲存變更。
從 Hyper-V 管理員選取 VM,然後啟動 VM。 VM 會從您提供的 ISO 映像開機。
步驟 2:連線到 VM 並安裝 Red Hat OS
執行 VM 之後,請遵循下列步驟:
從 Hyper-V 管理員選取 VM,以滑鼠右鍵按鍵按下它以開啟功能表,然後選取 [ 連線]。
從開機功能表中選取 [ 安裝 Red Hat Enterprise Linux 9.4 ]。
選取語言,然後選取 [ 繼續]。
在 [ 安裝摘要 ] 頁面上,您可能會看到其他可採取動作的專案。
選取 [ 連線至 Red Hat ] 並建立認證。 選取 [ 註冊] ,然後選取 [ 完成]。
選取 [ 軟體選取]、保留預設值,然後選取 [ 完成]。
選取 [ 安裝目的地 ],然後選取 [ 完成]。
選取 [ 網络與主機名]。
啟用網路介面的 ON 交換器,然後選取 [完成]。
選取 [ 用戶設定 ] 並設定根密碼。 輸入密碼、確認密碼,然後選取 [ 完成]。
選取 [ 開始安裝]。
安裝完成後,選取 [重新啟動系統 ] 以重新啟動 VM。
如需逐步指示,請參閱 使用 Hyper-V 管理員布建 VM。
步驟 3:設定 VM
若要設定 VM:
使用您在 Red Hat Enterprise 安裝期間建立的根密碼連線並登入 VM。
請確定
cloud-init
未安裝。Sudo yum list installed | grep cloud-init
cloud-init
安裝工具,並確認已安裝的版本cloud-init
。Sudo yum install -y cloud-init cloud-init --version
以下是範例輸出:
[hcitest@localhost ~]$ sudo yum install -y cloud-init Installed: cloud-init-23.4-7.el9_4.noarch dhcp-client-12:4.4.2-19.bl.el9.x86_64 dhcp-common-12:4.4.2-19.bl.el9.noarch geolite2-city-20191217-6.el9.noarch geolite2-country-20191217-6.el9.noarch ipcalc-l.0.0-5.el9.x86_64 python3-attrs-20.3.0-7.el9.noarch python3-babel-2.9.1-2.el9.noarch python3-configob j-5.0.6-25.el9.noarch python3-jinja2-2.11.3-5.el9.noarch python3-j sonpatch-1.21-16.el9.noarch python3-j sonpointer-2.0-4.el9.noarch python3-j sonschema-3.2.0-13.el9.noarch python3-markupsafe-l.1.1-12.el9.x86_64 python3-netifaces-0.10.6-15.el9.x86_64 python3-oauthlib-3.1.1-5.el9.noarch python3-prettytable-0.7.2-27.el9.noarch python3-pyrsistent-0.17.3-8.el9.x86_64 python3-pyserial-3.4-12.el9.noarch python3-pytz-2021.1-5.el9.noarch Complete! [hcitest@localhost ~]$ cloud-init —version /usr/bin/cloud-init 23.4-7.el9_4
步驟 4:清除剩餘組態
從您的 VM 刪除電腦特定的檔案和數據,以便您建立全新的 VM 映射,而不需要任何歷程記錄或預設組態。 請遵循 Azure 本機上的這些步驟來清除剩餘組態。
清除
cloud-init
預設組態。sudo yum clean all sudo cloud-init clean
以下是範例輸出:
[hcitest@localhost ~]$ sudo yum clean all Updating Subscription Management repositories. 17 files removed [hcitest@localhost ~]$ sudo cloud-init clean
清除記錄和快取。
sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
取消註冊 VM。
sudo subscription-manager unregister sudo Subscription-manager clean
以下是範例輸出:
[hcitest@localhost ~]$ sudo subscription-manager unregister Unregistering from: subscription.rhsm.redhat.com:443/subscription System has been unregistered. [hcitest@localhost ~]$ sudo subscription-manager clean All local data removed
清除任何主機特定的詳細數據。
sudo rm -f /etc/sysconfig/network-scripts/* sudo rm -f /etc/ssh/ssh_host* sudo rm /etc/lvm/devices/system.devices
拿掉Bash歷程記錄。
sudo rm -f ~/.bash_history export HISTSIZE=0 exit
關閉 VM。 在 Hyper-V 管理員中,移至 [動作>關機]。
匯出 VHDX,或從您的 VM 複製 VHDX。 您可以使用下列方法:
- 將 VHDX 複製到 Azure 本機上叢集共用磁碟區上的使用者記憶體。
- 或者,將 VHDX 當做分頁 Blob 複製到 Azure 儲存體 帳戶中的容器。
步驟 5:建立 VM 映射
請遵循 Azure 本機上的下列步驟,從您稍早建立的 VHDX 建立 VM 映射。
使用 Azure CLI 建立 VM 映射:
以系統管理員身分執行 PowerShell。
登入。 執行下列 Cmdlet:
az login
設定您的訂用帳戶。 執行下列 Cmdlet:
az account set --subscription <Subscription ID>
為您的訂用帳戶、資源群組、自定義位置、位置、映像的OS類型、映像名稱,以及映射所在的路徑設定參數。 將中的
< >
參數取代為適當的值。$subscription = "<Subscription ID>" $resource_group = "<Resource group>" $customLocation = "<Custom location>" $location = "<Location for your Azure Local>" $osType = "<OS of source image>"
下表說明參數。
參數 描述 subscription
與您的 Azure 本機實例相關聯的訂用帳戶。 resource_group
您與此映像相關聯的 Azure 本機實例資源群組。 location
Azure 本機實例的位置。 例如,位置可以是 eastus
或westreurope
。os-type
與來源映像相關聯的操作系統。 此系統可以是 Windows 或 Linux。 使用 VM 的 VHDX 來建立資源庫映像。 使用此 VM 映像在 Azure 本機上建立 Azure Arc 虛擬機。
請務必複製 Azure 本機叢集共用磁碟區中使用者記憶體中的 VHDX。 例如,路徑看起來可能像
C:\ClusterStorage\UserStorage_1\linuxvhdx
。$imagePath = "Path to user storage in CSV" $imageName = "mylinuxvmimg" $osType = "Linux" az stack-hci-vm image create --subscription $subscription -g $resource_group --custom-location $customLocation --location $location --image-path $imagePath --name $imageName --debug --os-type $osType
確認映像已建立。