Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

7.3.3. 从角色添加和删除服务

添加或删除服务的基本方法涉及为节点角色创建默认服务列表的副本,然后添加或删除服务。例如,您可能会从 Controller 节点中删除 OpenStack Orchestration (heat)。在这种情况下,创建 默认角色 目录的自定义副本:

$ cp -r /usr/share/openstack-tripleo-heat-templates/roles ~/.

编辑 ~/roles/Controller.yaml 文件并修改 ServicesDefault 参数的服务列表。滚动到 OpenStack 编排服务并移除它们:

    - OS::TripleO::Services::GlanceApi
    - OS::TripleO::Services::GlanceRegistry
    - OS::TripleO::Services::HeatApi            # Remove this service
    - OS::TripleO::Services::HeatApiCfn         # Remove this service
    - OS::TripleO::Services::HeatApiCloudwatch  # Remove this service
    - OS::TripleO::Services::HeatEngine         # Remove this service
    - OS::TripleO::Services::MySQL
    - OS::TripleO::Services::NeutronDhcpAgent

生成新的 roles_data 文件。例如:

$ openstack overcloud roles generate -o roles_data-no_heat.yaml \
  --roles-path ~/roles \
  Controller Compute Networker

在运行 openstack overcloud deploy 命令时包含这个新的 roles_data 文件。例如:

$ openstack overcloud deploy --templates -r ~/templates/roles_data-no_heat.yaml

这会部署一个没有安装在 Controller 节点上的 OpenStack Orchestration 服务的 Overcloud。

注意

您还可以使用自定义环境文件在 roles_data 文件中禁用服务。重定向服务,以禁用 OS::Heat::None 资源。例如:

resource_registry:
  OS::TripleO::Services::HeatApi: OS::Heat::None
  OS::TripleO::Services::HeatApiCfn: OS::Heat::None
  OS::TripleO::Services::HeatApiCloudwatch: OS::Heat::None
  OS::TripleO::Services::HeatEngine: OS::Heat::None