第 53 章 使用 nm-cloud-setup 在公有云中自动配置网络接口
通常,虚拟机(VM)只有一个可被 DHCP 配置的接口。但是,DHCP 无法使用多个网络实体,如接口、IP 子网和 IP 地址来配置虚拟机。另外,您无法在虚拟机实例运行时应用设置。要解决这个运行时配置问题,nm-cloud-setup 工具会自动从云服务提供商的元数据服务器检索配置信息,并更新主机的网络配置。工具自动获取一个接口上的多个网络接口、多个 IP 地址或 IP 子网,并帮助重新配置正在运行的虚拟机实例的网络。
53.1. 配置和预部署 nm-cloud-setup 复制链接链接已复制到粘贴板!
要在公有云中启用和配置网络接口,请运行 nm-cloud-setup 作为计时器和服务。
在 Red Hat Enterprise Linux On Demand 和 AWS 黄金镜像上,nn-cloud-setup 已启用,无需任何操作。
先决条件
- 存在网络连接。
连接使用 DHCP。
默认情况下,NetworkManager 会创建一个使用 DHCP 的连接配置文件。如果因为您在
/etc/NetworkManager/NetworkManager.conf中设置了no-auto-default参数而没有创建配置文件,请手动创建此初始连接。
流程
安装
nm-cloud-setup软件包:yum install NetworkManager-cloud-setup
# yum install NetworkManager-cloud-setupCopy to Clipboard Copied! Toggle word wrap Toggle overflow 为
nm-cloud-setup服务创建并运行 管理单元文件:使用以下命令开始编辑管理单元文件:
systemctl edit nm-cloud-setup.service
# systemctl edit nm-cloud-setup.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 显式启动服务或重启系统,以使配置设置生效是非常重要的。
使用
systemd管理单元文件来在nm-cloud-setup中配置云提供商。例如,要使用 Amazon EC2,请输入:[Service] Environment=NM_CLOUD_SETUP_EC2=yes
[Service] Environment=NM_CLOUD_SETUP_EC2=yesCopy to Clipboard Copied! Toggle word wrap Toggle overflow 您可以设置以下环境变量来启用您所使用的云提供商:
-
用于 Alibaba Cloud (Aliyun) 的
NM_CLOUD_SETUP_ALIYUN -
用于 Microsoft Azure 的
NM_CLOUD_SETUP_AZURE -
用于 Amazon EC2(AWS)的
NM_CLOUD_SETUP_EC2 -
用于 Google Cloud Platform(GCP)的
NM_CLOUD_SETUP_GCP
-
用于 Alibaba Cloud (Aliyun) 的
- 保存文件并退出编辑器。
重新载入
systemd配置:systemctl daemon-reload
# systemctl daemon-reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 启用并启动
nm-cloud-setup服务:systemctl enable --now nm-cloud-setup.service
# systemctl enable --now nm-cloud-setup.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 启用并启动
nm-cloud-setup计时器:systemctl enable --now nm-cloud-setup.timer
# systemctl enable --now nm-cloud-setup.timerCopy to Clipboard Copied! Toggle word wrap Toggle overflow