Red Hat Training

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

4.3. 用于其他服务的容器镜像

director 仅为核心 OpenStack Platform 服务准备容器镜像。些额外的功能使用需要额外容器镜像的服务。您可以使用环境文件启用这些服务。openstack overcloud 容器镜像准备命令使用以下选项包含环境文件及其相应容器镜像:

-e
包括环境文件以启用额外容器镜像。

下表提供了使用容器镜像及其对应环境文件位于 /usr/share/openstack-tripleo-heat-templates 目录中的相应服务的示例列表。

Service环境文件

Ceph Storage

environments/ceph-ansible/ceph-ansible.yaml

collectd

environments/services-docker/collectd.yaml

Congress

environments/services-docker/congress.yaml

Fluentd

environments/services-docker/fluentd.yaml

OpenStack Bare Metal (ironic)

environments/services-docker/ironic.yaml

OpenStack 数据处理(sahara)

environments/services-docker/sahara.yaml

OpenStack EC2-API

environments/services-docker/ec2-api.yaml

OpenStack Key Manager (barbican)

environments/services-docker/barbican.yaml

OpenStack Load Balancing-as-a-Service (octavia)

environments/services-docker/octavia.yaml

OpenStack Shared File System Storage (manila)

environments/manila-{backend-name}-config.yaml

注意:如需更多信息,请参阅 OpenStack 共享文件系统服务(manila)

Open Virtual Network (OVN)

environments/services-docker/neutron-ovn-dvr-ha.yaml

Sensu

environments/services-docker/sensu-client.yaml

下面几节提供了包括其他服务的示例。

Ceph Storage

如果使用 overcloud 部署 Red Hat Ceph Storage 集群,您需要包含 /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible.yaml 环境文件。此文件可以在 overcloud 中启用可组合容器化服务,而 director 需要知道这些服务需要被启用来准备其镜像。

除了此环境文件外,您还需要定义 Ceph Storage 容器位置,这与 OpenStack Platform 服务不同。使用 --set 选项设置特定于 Ceph Storage 的以下参数:

--set ceph_namespace
定义 Ceph Storage 容器镜像的命名空间。这个功能与 --namespace 选项类似。
--set ceph_image
定义 Ceph Storage 容器镜像的名称。通常,这是 rhceph-3-rhel7
--set ceph_tag
定义用于 Ceph Storage 容器镜像的标签。这个功能与 --tag 选项类似。当指定 --tag-from-label 时,从该标签开始发现 versioned 标签。

以下片段是在容器镜像文件中包含 Ceph Storage 的示例:

$ openstack overcloud container image prepare \
  ...
  -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible.yaml \
  --set ceph_namespace=registry.redhat.io/rhceph \
  --set ceph_image=rhceph-3-rhel7 \
  --tag-from-label {version}-{release} \
  ...

OpenStack Bare Metal (ironic)

如果在 overcloud 中部署 OpenStack Bare Metal (ironic),您需要包含 /usr/share/openstack-tripleo-heat-templates/environments/services-docker/ironic.yaml 环境文件,以便 director 能够准备镜像。以下片段是一个如何包含此环境文件的示例:

$ openstack overcloud container image prepare \
  ...
  -e /usr/share/openstack-tripleo-heat-templates/environments/services-docker/ironic.yaml \
  ...

OpenStack 数据处理(sahara)

如果在 overcloud 中部署 OpenStack 数据处理(sahara),您需要包含 /usr/share/openstack-tripleo-heat-templates/environments/services-docker/sahara.yaml 环境文件,以便 director 能够准备镜像。以下片段是一个如何包含此环境文件的示例:

$ openstack overcloud container image prepare \
  ...
  -e /usr/share/openstack-tripleo-heat-templates/environments/services-docker/sahara.yaml \
  ...

OpenStack Neutron SR-IOV

如果在 overcloud 中部署 OpenStack Neutron SR-IOV,请包含 /usr/share/openstack-tripleo-heat-templates/environments/services-docker/neutron-sriov.yaml 环境文件,以便 director 能够准备镜像。默认 Controller 和 Compute 角色不支持 SR-IOV 服务,因此您必须使用 -r 选项包括包含 SR-IOV 服务的自定义角色文件。以下片段是一个如何包含此环境文件的示例:

$ openstack overcloud container image prepare \
  ...
  -r ~/custom_roles_data.yaml
  -e /usr/share/openstack-tripleo-heat-templates/environments/services-docker/neutron-sriov.yaml \
  ...

OpenStack Load Balancing-as-a-Service (octavia)

如果在 overcloud 中部署 OpenStack Load Balancing-as-a-Service,请包含 /usr/share/openstack-tripleo-heat-templates/environments/services-docker/octavia.yaml 环境文件,以便 director 能够准备镜像。以下片段是一个如何包含此环境文件的示例:

$ openstack overcloud container image prepare \
  ...
  -e /usr/share/openstack-tripleo-heat-templates/environments/services-docker/octavia.yaml
\
  ...

OpenStack Shared File System (manila)

使用格式 manila-{backend-name}-config.yaml,您可以选择受支持的后端来部署具有该后端的 Shared File System。通过包括以下任何环境文件,可以准备共享文件系统服务容器:

  environments/manila-isilon-config.yaml
  environments/manila-netapp-config.yaml
  environments/manila-vmax-config.yaml
  environments/manila-cephfsnative-config.yaml
  environments/manila-cephfsganesha-config.yaml
  environments/manila-unity-config.yaml
  environments/manila-vnx-config.yaml

有关自定义和部署环境文件的更多信息,请参阅以下资源: