6.2. 在没有存储的情况下部署边缘节点
当您在边缘站点部署 Compute 节点时,您可以使用中央位置作为 control plane。您可以将新的 DCN 堆栈添加到部署中,并从中央位置重复使用配置文件来创建新环境文件。
先决条件
-
您必须创建特定于环境的
network_data.yaml
文件。您可以在/usr/share/openstack-tripleo-heat-templates/network-data-samples
中找到示例文件。 -
您必须创建一个特定于您的环境的
overcloud-baremetal-deploy.yaml
文件。有关更多信息,请参阅为 overcloud 置备裸机节点。
流程
- 以 stack 用户身份登录 undercloud。
查找 stackrc 文件:
[stack@director ~]$ source ~/stackrc
生成环境文件 ~/dcn0/dcn0-images-env.yaml[d]:
sudo[e] openstack tripleo container image prepare \ -e containers.yaml \ --output-env-file ~/dcn0/dcn0-images-env.yaml
为边缘位置生成角色文件。使用适合您的环境的角色为边缘位置生成角色:
(undercloud)$ openstack overcloud roles \ generate Compute \ -o /home/stack/dcn0/dcn0_roles.yaml
如果将 ML2/OVS 用于网络覆盖,您必须编辑 Compute 角色包括
NeutronDhcpAgent
和NeutronMetadataAgent
服务:为 Compute 角色创建角色文件:
openstack overcloud roles \ generate Compute \ -o /home/stack/dcn0/dcn0_roles.yaml
编辑 /home/stack/dcn0/dcn0_roles.yaml 文件,使其包含
NeutronDhcpAgent
和NeutronMetadataAgent
服务:... - OS::TripleO::Services::MySQLClient - OS::TripleO::Services::NeutronBgpVpnBagpipe + - OS::TripleO::Services::NeutronDhcpAgent + - OS::TripleO::Services::NeutronMetadataAgent - OS::TripleO::Services::NeutronLinuxbridgeAgent - OS::TripleO::Services::NeutronVppAgent - OS::TripleO::Services::NovaAZConfig - OS::TripleO::Services::NovaCompute ...
如需更多信息,请参阅准备路由供应商网络。
为 overcloud 置备网络。此命令为 overcloud 网络使用一个定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud network provision \ --output /home/stack/dcn0/overcloud-networks-deployed.yaml \ /home/stack/dcn0/network_data.yaml
置备裸机实例。该命令为裸机节点使用一个定义文件作为输入。您必须使用命令中的输出文件来部署 overcloud:
(undercloud)$ openstack overcloud node provision \ --stack dcn0 \ --network-config \ -o /home/stack/dcn0/deployed_metal.yaml \ ~/overcloud-baremetal-deploy.yaml
在 site-name.yaml 环境文件中为站点配置命名约定。
parameter_defaults: NovaComputeAvailabilityZone: dcn0 ControllerExtraConfig: nova::availability_zone::default_schedule_zone: dcn0 NovaCrossAZAttach: false
为 dcn0 边缘站点部署堆栈:
openstack overcloud deploy \ --deployed-server \ --stack dcn0 \ --templates /usr/share/openstack-tripleo-heat-templates/ \ -r /home/stack/dcn0/dcn0_roles.yaml \ -n /home/stack/network_data.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/network-environment.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/podman.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/nova-az-config.yaml \ -e /home/stack/overcloud-deploy/central/central-export.yaml \ -e /home/stack/dcn0/overcloud-networks-deployed.yaml \ -e /home/stack/dcn0/overcloud-vip-deployed.yaml \ -e /home/stack/dcn0/deployed_metal.yaml