Cloud-init 是一个 Linux 软件包,负责处理实例的早期初始化。如果在发行版中提供了此软件包,则在安装后可直接使用它来配置实例的许多常用参数。这会创建一个完全正常运行的实例,该实例基于一系列输入进行配置。cloud-init 配置由两个主要配置文件组成,即,元数据文件和用户数据文件。元数据包含 Edge 的网络配置,用户数据包含 Edge 软件配置。cloud-init 文件提供了相应的信息以标识要安装的 VMware 虚拟 Edge。

可以通过用户数据配置 cloud-init 的行为。user-data 文件可由用户在启动实例时提供。通常,可以通过连接 cloud-init 将在首次引导时查找的 ISO 格式的辅助磁盘来完成此操作。此磁盘中包含将在首次引导时应用的所有早期配置数据。

VMware 虚拟 Edge 支持 cloud-init 以及在 ISO 映像中打包的所有基本配置。

创建 cloud-init 元数据和用户数据文件

最终安装配置选项通过一对 cloud-init 配置文件进行设置。第一个安装配置文件中包含元数据。使用文本编辑器创建此文件,并将其命名为 meta-data。该文件提供了相应的信息以标识要安装的 VMware 虚拟 Edge 实例。instance-id 可以是任何标识名称,而 local-hostname 应该是遵循您的站点标准的主机名。

  1. 创建包含实例的 meta-data 文件:

    name.instance-id: vedge1

    local-hostname: vedge1

  2. 添加下面显示的 network-interfaces 部分以指定 WAN 配置。此处只需要指定那些需要静态 IP 寻址的 WAN 接口。默认情况下,将为所有 SD-WAN Edge WAN 接口配置 DHCP。可以指定多个接口。
    root@ubuntu# cat meta-data
    instance-id: Virtual-Edge
    local-hostname: Virtual-Edge
    network-interfaces:
          GE1:
             mac_address: 52:54:00:79:19:3d
          GE2:
             mac_address: 52:54:00:67:a2:53
          GE3:
             type: static
             ipaddr: 11.32.33.1
             mac_address: 52:54:00:e4:a4:3d
             netmask: 255.255.255.0
             gateway: 11.32.33.254
          GE4:
             type: static
             ipaddr: 11.32.34.1
             mac_address: 52:54:00:14:e5:bd
             netmask: 255.255.255.0
             gateway: 11.32.34.254
    
  3. 创建 user-data 文件。该文件包含三个主要模块:SD-WAN Orchestrator、“激活码”和“忽略证书错误”。
    模块 描述
    vco SD-WAN Orchestrator 的 IP 地址/URL。
    activation_code 虚拟 Edge 的激活码。在 SD-WAN Orchestrator 上创建 Edge 实例时,将生成激活码。
    vco_ignore_cert_errors 用于验证或忽略任何证书有效性错误的选项。

    SD-WAN Orchestrator 上创建 Edge 实例时,将生成激活码。

    重要说明:SD-WAN Edge 映像中没有默认密码。必须在 cloud-config 中提供该密码:
    #cloud-config 
    password: passw0rd 
    chpasswd: { expire: False }
    ssh_pwauth: True
    velocloud:
          vce: 
                vco: 10.32.0.3 
                activation_code: F54F-GG4S-XGFI 
                vco_ignore_cert_errors: true 

创建 ISO 文件

完成上述文件后,需要将这些文件打包到一个 ISO 映像中。此 ISO 映像用作虚拟机的虚拟配置 CD。此 ISO 映像(在以下示例中称为 seed.iso)在 Linux 系统上使用以下命令来创建:

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

包含 network-interfaces 部分是可选的。如果该区域不存在,系统将默认使用 DHCP 选项。

生成 ISO 映像后,请将映像传输到主机上的数据存储中。