本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
本節說明如何建立和使用seed.iso
映像來設定在 KVM或 上執行的 Amazon Linux 2023VMware。由於 KVM和 VMware環境沒有 Amazon EC2 執行個體中繼資料服務 (IMDS),因此需要另一種方法來設定 Amazon Linux 2023,而提供seed.iso
映像是這些方法之一。
seed.iso
開機映像包括虛擬機器開機和設定所需的初始組態資訊,例如網路組態、主機名稱和使用者資料。
注意
seed.iso
開機映像僅包括 VM 開機所需的組態資訊。不包括 Amazon Linux 2023 作業系統檔案。
若要產生 seed.iso
映像,您至少需要兩個組態檔案,有時需要三個:
-
meta-data
-
此檔案通常會包含虛擬機器的主機名稱。
-
user-data
-
此檔案通常會設定使用者帳戶,並指定其密碼、ssh 金鑰對和/或存取機制。預設情況下,Amazon Linux 2023 KVM 映像會建立
ec2-user
使用者帳戶。您可以使用user-data
組態檔案來設定此預設使用者帳戶的密碼和/或 SSH 金鑰。 -
network-config
(選用) -
此檔案通常會為虛擬機器提供網路組態,該設定將覆寫預設的組態。預設組態是在第一個可用的網路介面上使用 DHCP。
建立 seed.iso
磁碟映像
-
在 Linux 或 macOS 電腦上,建立名為
seedconfig
的新資料夾並導覽到該資料夾。注意
Windows 或其他作業系統也可以用來完成這些步驟,但您必須找到與
mkisofs
等效的工具,才能完成建立seed.iso
映像。 -
建立
meta-data
組態檔案。-
建立名為
meta-data
的新檔案。 -
使用您偏好的編輯器開啟
meta-data
檔案、新增下列命令,然後將vm-hostname
替換成虛擬機器的主機名稱:#cloud-config local-hostname:
vm-hostname
-
儲存並關閉
meta-data
組態檔案。
-
-
建立
user-data
組態檔案。-
建立名為
user-data
的新檔案。 -
使用您偏好的編輯器開啟
user-data
檔案,然後新增下列項目,以及視需要進行取代:#cloud-config #vim:syntax=yaml users: # A user by the name 'ec2-user' is created in the image by default. - default - name: ec2-user ssh_authorized_keys: - ssh-rsa
ssh-key
# In the above line, replacessh key
with the content of your ssh public key. -
您可以選擇將更多使用者帳戶新增至
user-data
組態檔案。您也可以指定其他使用者帳戶、其存取機制、密碼和金鑰對。如需支援指令的詳細資訊,請參閱上游
cloud-init
文件。 -
儲存並關閉
user-data
組態檔案。
-
-
(選擇性) 建立
network-config
組態檔-
建立名為
network-config
的新檔案。 -
使用您偏好的編輯器開啟
network-config
檔案、新增下列命令,然後將各種 IP 地址替換成適合您設定的 IP 地址。#cloud-config version: 2 ethernets: enp1s0: addresses: -
192.168.122.161/24
gateway4:192.168.122.1
nameservers: addresses:192.168.122.1
注意
cloud-init
網路組態提供與介面 MAC 位址相符的機制,而不是指定可根據 VM 組態變更的介面名稱。如需此 (及其他)cloud-init
網路設定功能的詳細資訊,請參閱上游cloud-init
Network Config Version 2 說明文件。 -
儲存並關閉
network-config
組態檔案。
-
-
使用在先前步驟中建立的
meta-data
、user-data
和選用的network-config
組態檔,以建立seed.iso
磁碟映像。根據您建立
seed.iso
磁碟映像的作業系統,執行下列其中一個動作。-
在 Linux 系統上,使用
mkisofs
或genisoimage
等的工具來建立完成的seed.iso
檔案。導覽至seedconfig
資料夾並執行下列命令:$
mkisofs -output seed.iso -volid cidata -joliet -rock user-data meta-data
-
如果您使用
network-config
,請將其包含在mkisofs
的調用中:$
mkisofs -output seed.iso -volid cidata -joliet -rock user-data meta-data network-config
-
在 macOS 系統上,您可以使用
hdiutil
等的工具來產生完成的seed.iso
檔案。由於hdiutil
採用路徑名稱而非檔案清單,因此無論是否建立network-config
組態檔案,都可以使用相同的調用。$
hdiutil makehybrid -o seed.iso -hfs -joliet -iso -default-volume-name cidata seedconfig/
-
-
產生的
seed.iso
檔案現在可以使用虛擬 CD-ROM 磁碟機連接至新的 Amazon Linux 2023 虛擬機器cloud-init
,讓 在第一次開機時尋找 並將組態套用至系統。