作为虚拟机本地运行 Amazon Linux 2 - Amazon Elastic Compute Cloud
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

作为虚拟机本地运行 Amazon Linux 2

使用 Amazon Linux 2 虚拟机 (VM) 映像进行本地开发和测试。这些映像适用于以下虚拟化平台:

  • VMWare

  • KVM

  • VirtualBox (Oracle VM)

  • Microsoft Hyper-V

要将 Amazon Linux 2 虚拟机映像用于受支持的虚拟化平台之一,请执行以下操作:

步骤 1:准备 seed.iso 启动映像

seed.iso 启动映像包含启动新虚拟机所需的初始配置信息,如网络配置、主机名和用户数据。

注意

seed.iso 启动映像仅包括启动 VM 所需的配置信息。不包括 Amazon Linux 2 操作系统文件。

要生成 seed.iso 启动映像,需要两个配置文件:

  • meta-data — 此文件包括 VM 主机名和静态网络设置。

  • user-data — 此文件配置用户账户,并指定其密码、密钥对以及访问机制。默认情况下,Amazon Linux 2 VM 映像会创建 ec2-user 用户账户。使用 user-data 配置文件设置默认用户账户的密码。

创建 seed.iso 启动盘

  1. 创建一个名为 seedconfig 的新文件夹并导航到该文件夹。

  2. 创建 meta-data 配置文件。

    1. 创建名为 meta-data 的新文件。

    2. 使用首选编辑器打开 meta-data 文件,并添加以下内容。

      local-hostname: vm_hostname # eth0 is the default network interface enabled in the image. You can configure static network settings with an entry like the following. network-interfaces: | auto eth0 iface eth0 inet static address 192.168.1.10 network 192.168.1.0 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.254

      vm_hostname 替换为您选择的 VM 主机名,并根据需要配置网络设置。

    3. 保存并关闭 meta-data 配置文件。

    有关示例 meta-data 配置文件(用于指定 VM 主机名 (amazonlinux.onprem) 、配置默认网络接口 (eth0) 并为必要的网络设备指定静态 IP 地址),请参阅示例 Seed.iso 文件

  3. 创建 user-data 配置文件。

    1. 创建名为 user-data 的新文件。

    2. 使用首选编辑器打开 user-data 文件,并添加以下内容。

      #cloud-config #vim:syntax=yaml users: # A user by the name `ec2-user` is created in the image by default. - default chpasswd: list: | ec2-user:plain_text_password # In the above line, do not add any spaces after 'ec2-user:'.

      plain_text_password 替换为您为默认 ec2-user 用户帐户选择的密码。

    3. (可选)默认情况下,VM 每次启动时,cloud-init 都会应用网络设置。添加以下内容,以防止 cloud-init 在每次启动时都应用网络设置,并保留首次启动期间应用的网络设置。

      # NOTE: Cloud-init applies network settings on every boot by default. To retain network settings from first boot, add following ‘write_files’ section: write_files: - path: /etc/cloud/cloud.cfg.d/80_disable_network_after_firstboot.cfg content: | # Disable network configuration after first boot network: config: disabled
    4. 保存并关闭 user-data 配置文件。

    还可以创建其他用户账户并指定其访问机制、密码和密钥对。有关支持的指令的更多信息,请参阅模块。有关创建三个其他用户并为默认 ec2-user 用户帐户指定自定义密码的示例 user-data 文件,请参阅示例 Seed.iso 文件

  4. 使用 seed.isometa-data 配置文件创建 user-data 启动映像。

    对于 Linux,请使用类似 genisoimage 的工具。导航到 seedconfig 文件夹,并执行以下命令。

    $ genisoimage -output seed.iso -volid cidata -joliet -rock user-data meta-data

    对于 macOS,请使用类似 hdiutil 的工具。从 seedconfig 文件夹往上导航一级,执行以下命令。

    $ hdiutil makehybrid -o seed.iso -hfs -joliet -iso -default-volume-name cidata seedconfig/

步骤 2:下载 Amazon Linux 2 VM 映像

我们为受支持的每个虚拟化平台提供不同的 Amazon Linux 2 VM 映像。下载所选平台对应的 VM 映像:

步骤 3:启动并连接到新 VM

要启动和连接到新 VM,必须要有 seed.iso 启动映像(在步骤 1 中创建)和 Amazon Linux 2 VM 映像(在步骤 2 中下载)。具体步骤因您选择的 VM 平台而异。

VMWare vSphere

适用于 VMware 的虚拟机映像以 OVF 格式提供。

使用 VMWare vSphere 引导虚拟机

  1. seed.iso 文件创建新的数据存储,或将其添加到现有的数据存储中。

  2. 部署 OVF 模板,但先不启动虚拟机。

  3. Navigator (导航器) 面板中,右键单击新虚拟机,然后选择 Edit Settings (编辑设置)

  4. Virtual Hardware (虚拟硬件) 选项卡上,为 New device (新设备) 选择 CD/DVD Drive (CD/DVD 驱动器),然后选择 Add (添加)

  5. 对于 New CD/DVD Drive (新 CD/DVD 驱动器),请选择 Datastore ISO File (数据存储 ISO 文件)。选择将 seed.iso 文件添加到的数据存储,浏览到并选择 seed.iso 文件,然后选择 OK (确定)

  6. 对于新 CD/DVD 驱动器,请选择连接,然后选择确定

在将数据存储与虚拟机关联后,您应该能够引导该虚拟机。

KVM

使用 KVM 引导虚拟机

  1. 打开 Create new VM (创建新的虚拟机) 向导。

  2. 对于步骤 1,选择 Import existing disk image (导入现有的磁盘映像)

  3. 对于步骤 2,浏览到并选择虚拟机映像。对于 OS type (操作系统类型)Version (版本),分别选择 LinuxRed Hat Enterprise Linux 7.0

  4. 对于步骤 3,指定要使用的 RAM 量和 CPU 数量。

  5. 对于步骤 4,输入新虚拟机的名称,然后选择 Customize configuration before install (安装前自定义配置),然后选择 Finish (完成)

  6. 在虚拟机的 Configuration (配置) 窗口中,选择 Add Hardware (添加硬件)

  7. Add New Virtual Hardware (添加新的虚拟硬件) 窗口中,选择 Storage (存储)

  8. 在 Storage configuration (存储配置) 中,选择 Select or create custom storage (选择或创建自定义存储)。对于 Device type (设备类型),选择 CDROM device (CDROM 设备)。选择 Manage (管理),选择 Browse Local (浏览本地),然后导航到并选择 seed.iso 文件。选择 Finish

  9. 选择 Begin Installation (开始安装)

Oracle VirtualBox

使用 Oracle VirtualBox 引导虚拟机

  1. 打开 Oracle VirtualBox,然后选择新建

  2. 名称中,输入虚拟机的描述性名称,对于类型版本,分别选择 LinuxRed Hat (64 位)。选择 Continue (继续)

  3. 对于内存大小,指定要分配给虚拟机的内存容量,然后选择继续

  4. 对于硬盘,选择使用现有虚拟硬盘文件,浏览并打开虚拟机映像,然后选择创建

  5. 在启动虚拟机之前,您必须在虚拟机的虚拟光驱中加载 seed.iso 文件:

    1. 选择新的虚拟机,选择 Settings (设置),然后选择 Storage (存储)

    2. 存储设备列表中,在控制器: IDE 下选择空的光驱。

    3. 在光驱的 Attributes (属性) 部分中,选择浏览按钮,选择 Choose Virtual Optical Disk File (选择虚拟光盘文件),然后选择 seed.iso 文件。选择确定,以应用更改并关闭“设置”。

在将 seed.iso 文件添加到虚拟光驱后,您应该能够启动该虚拟机。

Microsoft Hyper-V

Microsoft Hyper-V 的虚拟机映像压缩为一个 zip 文件。您必须提取该 zip 文件的内容。

使用 Microsoft Hyper-V 引导虚拟机

  1. 打开新建虚拟机向导

  2. 在提示您选择代时,选择 Generation 1 (第一代)

  3. 在提示您配置网络适配器时,为 Connection (连接) 选择 External (外部)

  4. 在提示您连接虚拟硬盘时,选择 Use an existing virtual hard disk (使用现有的虚拟硬盘),选择 Browse (浏览),然后导航到并选择虚拟机映像。选择 Finish (完成) 以创建虚拟机。

  5. 右键单击新虚拟机,然后选择 Settings (设置)。在 Settings (设置) 窗口中,在 IDE Controller 1 (IDE 控制器 1) 下面选择 DVD Drive (DVD 驱动器)

  6. 对于 DVD 驱动器,选择 Image file (映像文件),然后浏览到并选择 seed.iso 文件。

  7. 应用更改并启动虚拟机。

在 VM 启动后,使用在 user-data 配置文件中定义的用户账户之一登录。对于 VMWare 之外的虚拟化平台,在首次登录后,可以将 seed.iso 启动映像与 VM 断开连接。