使用 Cloud-Init 在 AWS 中自动初始化 vSRX 虚拟防火墙实例
从 Junos OS 版本 17.4R1 开始,云初始化软件包(版本 0.7x)预安装在适用于 AWS 的 vSRX 虚拟防火墙映像中,以帮助简化根据指定的用户数据文件在 AWS 上运行的新 vSRX 虚拟防火墙实例的配置。云初始化在首次引导 vSRX 虚拟防火墙实例期间执行。
Cloud-init 是一个开源应用程序,用于在启动时自动初始化云实例。Cloud-init 旨在支持多个不同的云环境,例如 Amazon EC2,以便同一虚拟机 (VM) 映像可以直接在多个云实例中使用,而无需进行任何修改。VM 实例中的云初始化支持在启动时运行(首次启动),并根据指定的用户数据文件初始化 VM 实例。
用户数据文件是元数据服务中的一个特殊键,其中包含 VM 实例中的云感知应用程序可以在首次启动时访问的文件。在这种情况下,您打算将经过验证的 Junos OS 配置文件作为活动配置上传到 vSRX 虚拟防火墙实例。此文件使用标准 Junos OS 命令语法来定义配置详细信息,例如 root 密码、管理 IP 地址、默认网关和其他配置语句。
创建 vSRX 虚拟防火墙实例时,可以使用 AWS 上的服务将 cloud-init 有效的 Junos OS 配置文件作为用户数据传递,以初始化新的 vSRX 虚拟防火墙实例。用户数据文件使用标准 Junos OS 语法定义 vSRX 虚拟防火墙实例的所有配置详细信息。在 vSRX 虚拟防火墙实例启动期间,默认 Junos OS 配置将替换为您以用户数据文件形式提供的经过验证的 Junos OS 配置。
用户数据文件不能超过 16 KB。如果用户数据文件超过此限制,则必须使用 gzip 压缩文件并使用压缩文件。例如,gzip junos.conf 命令会生成 junos.conf.gz 文件。
配置必须经过验证,并包含 fxp0 接口、登录名和身份验证的详细信息。它还必须具有 fxp0 上流量的默认路由。此信息必须与启动实例的 AWS VPC 和子网的详细信息匹配。如果其中任何信息缺失或不正确,则无法访问该实例,您必须启动一个新实例。
确保用户数据配置文件未配置为使用动态主机配置协议 (DHCP) 在接口上执行自动安装,以便为 vSRX 虚拟防火墙分配 IP 地址。使用 DHCP 自动安装将导致用户数据配置文件的“提交失败”。
要从 AWS 启动 vSRX 虚拟防火墙实例的自动设置,请执行以下操作: