9.3. 创建 roles_data 文件
虽然您可以手动创建自定义 roles_data
文件,但您也可以使用单独的角色模板自动生成文件。director 提供 openstack overcloud role generate
命令来加入多个预定义角色,并自动生成自定义 roles_data
文件。
流程
列出默认角色模板:
$ openstack overcloud role list BlockStorage CephStorage Compute ComputeHCI ComputeOvsDpdk Controller ...
查看角色定义:
$ openstack overcloud role show Compute
生成包含
Controller
、Compute
和Networker
角色的自定义roles_data.yaml
文件:$ openstack overcloud roles \ generate -o <custom_role_file> \ Controller Compute Networker
将
<custom_role_file
> 替换为要生成的新角色文件的名称和位置,如/home/stack/templates/roles_data.yaml
。注意Controller
和Networker
角色包含相同的网络代理。这意味着网络服务从Controller
角色扩展到Networker
角色,overcloud 会平衡Controller
和Networker
节点之间网络服务的负载。要使此
Networker
角色独立,您可以创建自己的自定义角色角色,以及您需要的任何其他角色。这可让您从您自己的自定义角色生成
roles_data.yaml
文件。
将
roles
目录从核心 heat 模板集合复制到stack
用户的主目录:$ cp -r /usr/share/openstack-tripleo-heat-templates/roles/. /home/stack/templates/roles/
在此目录中添加或修改自定义角色文件。将
--roles-path
选项与任何 role 子命令一起使用,将这个目录用作自定义角色的源:$ openstack overcloud role \ generate -o my_roles_data.yaml \ --roles-path /home/stack/templates/roles \ Controller Compute Networker
此命令从
~/roles
目录中的单独角色生成单个my_roles_data.yaml
文件。
默认角色集合还包含 ControllerOpenstack
角色,该角色不包括 Networker
、Message、database 角色的服务。
您可以将
ControllerOpenstack
与独立 Networker
、messaging 和数据库角色结合使用。