5.3. 配置 DCN 数据平面


在 data plane 节点可以使用前,必须将 Red Hat Ceph Storage 配置为存储解决方案。

先决条件

流程

  1. 编辑 OpenStackDataPlaneNodeSet CR。
  2. 要使 cephx 密钥和配置文件可用于计算服务(nova),请使用 extraMounts 参数。

    以下是为此目的使用 extraMounts 参数的示例:

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneNodeSet
    spec:
      ...
      nodeTemplate:
        extraMounts:
        - extraVolType: Ceph
          volumes:
          - name: ceph
            secret:
              secretName: ceph-conf-files
          mounts:
          - name: ceph
            mountPath: "/etc/ceph"
            readOnly: true
    Copy to Clipboard Toggle word wrap
  3. 创建 ConfigMap,将所需的配置详情添加到计算服务(nova)。创建名为 ceph-nova-az0.yaml 的文件,并添加类似以下内容的内容:您必须为本地可用区添加 Image 服务(glance)端点,并将 cross_az_attach 参数设置为 false :

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: ceph-nova-az0
      namespace: openstack
    data:
      03-ceph-nova.conf:
        [libvirt]
        images_type = rbd
        images_rbd_pool = vms
        images_rbd_ceph_conf = /etc/ceph/az0.conf
        images_rbd_glance_store_name = az0
        images_rbd_glance_copy_poll_interval = 15
        images_rbd_glance_copy_timeout = 600
        rbd_user = openstack
        rbd_secret_uuid = 9cfb3a03-3f91-516a-881e-a675f67c30ea
        hw_disk_discard = unmap
        volume_use_multipath = False
        [glance]
        endpoint_override = http://glance-az0-internal.openstack.svc:9292
        valid_interfaces = internal
        [cinder]
        cross_az_attach = False
        catalog_info = volumev3:cinderv3:internalURL
    Copy to Clipboard Toggle word wrap
  4. 创建 ConfigMap

    oc create -f ceph-nova-az0.yaml
    Copy to Clipboard Toggle word wrap
  5. 创建自定义 Compute (nova)服务以使用 ConfigMap。创建名为 nova-custom-az0.yaml 的文件,并添加类似以下内容的内容:您必须在 dataSources 字段中添加您刚才创建的 ConfigMap 的名称:

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneService
    metadata:
      name: nova-custom-ceph-az0
    spec:
      addCertMounts: false
      caCerts: combined-ca-bundle
      dataSources:
      - configMapRef:
          name: ceph-nova-az0
      - secretRef:
          name: nova-cell1-compute-config
      - secretRef:
          name: nova-migration-ssh-key
      edpmServiceType: nova
      playbook: osp.edpm.nova
      tlsCerts:
        default:
          contents:
          - dnsnames
          - ips
          edpmRoleServiceName: nova
          issuer: osp-rootca-issuer-internal
          networks:
          - ctlplane
    Copy to Clipboard Toggle word wrap
  6. 创建自定义服务:

    oc create -f nova-custom-ceph-az0.yaml
    Copy to Clipboard Toggle word wrap
    注意

    您必须为每个可用区创建一个唯一的 ConfigMap 和自定义 Compute 服务。如前面的步骤所示,将可用区附加到这些文件名的末尾。

  7. 在 CR 中找到 服务列表
  8. 编辑 服务列表,以恢复 配置 data plane 节点网络 中描述的所有服务。恢复完整 服务列表 可让剩余的作业完成 HCI 环境的配置。

    以下是一个完整 服务列表 的示例,其额外服务以粗体显示:

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneNodeSet
    spec:
      ...
      services:
        - bootstrap
        - configure-network
        - validate-network
        - install-os
        - ceph-hci-pre
        - configure-os
        - ssh-known-hosts
        - run-os
        - reboot-os
        - install-certs
        - ceph-client
        - ovn
        - neutron-metadata
        - libvirt
        - nova-custom-ceph-az0
    Copy to Clipboard Toggle word wrap
    注意

    除了恢复默认服务列表外,ceph-client 服务也会在 run-os 服务后添加。ceph-client 服务将 EDPM 节点配置为 Red Hat Ceph Storage 服务器的客户端。此服务分发客户端连接到 Red Hat Ceph Storage 服务器所需的文件。只有在部署 HCI 时,才需要 ceph-hci-pre 服务。

  9. 可选: 您可以将计算节点分配给 Compute 服务(nova)单元,与在任何其他环境中相同的单元。将 OpenStackDataPlaneNodeSet CR 中的 nova 服务替换为您的自定义 nova 服务:

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneNodeSet
    metadata:
      name: openstack-cell2
    spec:
      services:
        - download-cache
        - bootstrap
        - configure-network
        - validate-network
        - install-os
        - configure-os
        - ssh-known-hosts
        - run-os
        - ovn
        - libvirt
        - *nova-cell-custom*
    Copy to Clipboard Toggle word wrap

    如需更多信息,请参阅 将 OpenStackDataPlaneNodeSetSR 连接到计算单元

    注意

    如果您使用单元,则 neutron-metadata 服务为每个单元是唯一的,并单独定义。例如,neutron-metadata-cell1

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneService
    metadata:
     labels:
        app.kubernetes.io/instance: neutron-metadata-cell1
        app.kubernetes.io/name: openstackdataplaneservice
        app.kubernetes.io/part-of: openstack-operator
      name: neutron-metadata-cell1
      ...
    Copy to Clipboard Toggle word wrap

    nova-custom-ceph 服务对于每个可用区是唯一的,并单独定义。例如,nova-custom-ceph-az0

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneService
    metadata:
      labels:
        app.kubernetes.io/instance: nova-custom-ceph-az0
        app.kubernetes.io/name: openstackdataplaneservice
        app.kubernetes.io/part-of: openstack-operator
      name: nova-custom-ceph-az0
      namespace: openstack
    Copy to Clipboard Toggle word wrap
  10. 可选: 如果您要将 Red Hat Ceph Storage (RHCS)部署为超融合解决方案,请完成以下步骤:

    1. 创建一个 ConfigMap,将 reserved_host_memory_mb 参数设置为适合您配置的值:

      以下是用于此目的的 ConfigMap 示例:

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: reserved-memory-nova
      data:
        04-reserved-memory-nova.conf: |
          [DEFAULT]
          reserved_host_memory_mb=75000
      Copy to Clipboard Toggle word wrap
      注意

      可以设置 reserved_host_memory_mb 参数的值,以便计算服务调度程序不会将内存提供给同一服务器上的 Ceph OSD 所需的虚拟机。除了虚拟机监控程序的默认保留内存外,示例还为每个主机保留 5 GB 的 OSD 为 10 个 OSD。在 IOPS 优化的集群中,您可以通过为每个 OSD 保留更多内存来提高性能。5 GB 数字作为起点提供,必要时可以进一步调整。

    2. 编辑 OpenStackDataPlaneService/nova-custom-ceph-az 文件。将 reserved-memory-nova 添加到之前创建的 OpenStackDataPlaneService CR 中的 configMaps 列表中,名为 ceph-nova-az0

      kind: OpenStackDataPlaneService
      <...>
      spec:
        configMaps:
        - ceph-nova
        - reserved-memory-nova
      Copy to Clipboard Toggle word wrap
  11. 应用 CR 更改。

    $ oc apply -f <dataplane_cr_file>
    Copy to Clipboard Toggle word wrap
    • <dataplane_cr_file > 替换为您的文件的名称。

      注意

      Ansible 在创建 OpenStackDataPlaneDeployment CRD 之前,不会配置或验证网络。

  12. 创建 OpenStackDataPlaneDeployment CRD,如在 OpenShift 上部署 Red Hat OpenStack Services on OpenShift 指南中的创建 data plane 所述,它定义了 OpenStackDataPlaneNodeSet CRD 文件,以便 Ansible 配置 data plane 节点上的服务。

example-node-set-resource

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat