5.3. Configuring the DCN data plane


Configure the data plane to integrate with your Red Hat Ceph Storage backend. This configuration enables data plane nodes to access Ceph for persistent storage operations.

Prerequisites

Procedure

  1. Edit the OpenStackDataPlaneNodeSet CR.
  2. To make the cephx key and configuration file available for the Compute service (nova), use the extraMounts parameter.

    The following is an example of using the extraMounts parameter for this purpose:

    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
  3. Create a ConfigMap to add required configuration details to the Compute service (nova). Create a file called ceph-nova-az0.yaml and add contents similar to the following. You must add the Image service (glance) endpoint for the local availability zone, as well as set the cross_az_attach parameter to 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
  4. Create the ConfigMap:

    oc create -f ceph-nova-az0.yaml
  5. Create a custom Compute (nova) service to use the ConfigMap. Create a file called nova-custom-az0.yaml and add contents similar to the following. You must add the name of the ConfigMap that you just created under the dataSources field:

    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
  6. Create the custom service:

    oc create -f nova-custom-ceph-az0.yaml
    참고

    You must create a unique ConfigMap and custom Compute service for each availability zone. Append the availability zone to the end of these file names as shown in the previous steps.

  7. Locate the services list in the CR.
  8. Edit the services list to restore all of the services removed in Configuring the data plane node networks. Restoring the full services list allows the remaining jobs to be run that complete the configuration of the HCI environment.

    The following is an example of a full services list with the additional services in bold:

    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
    참고

    In addition to restoring the default service list, the ceph-client service is added after the run-os service. The ceph-client service configures EDPM nodes as clients of a Red Hat Ceph Storage server. This service distributes the files necessary for the clients to connect to the Red Hat Ceph Storage server. The ceph-hci-pre service is only needed when you deploy HCI.

  9. Optional: You can assign compute nodes to Compute service (nova) cells the same as you can in any other environment. Replace the nova service in your OpenStackDataPlaneNodeSet CR with your custom nova service:

    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*

    For more information, see Connecting an OpenStackDataPlaneNodeSetSR to a Compute cell.

    참고

    If you are using cells, then the neutron-metadata service is unique per cell and defined separately. For example 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
      ...

    The nova-custom-ceph service is unique for each availability zone and defined separately. For example, 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
  10. Optional: If you are deploying Red Hat Ceph Storage (RHCS) as a hyperconverged solution, complete the following steps:

    1. Create a ConfigMap to set the reserved_host_memory_mb parameter to a value appropriate for your configuration:

      The following is an example of a ConfigMap used for this purpose:

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: reserved-memory-nova
      data:
        04-reserved-memory-nova.conf: |
          [DEFAULT]
          reserved_host_memory_mb=75000
      참고

      The value for the reserved_host_memory_mb parameter may be set so that the Compute service scheduler does not give memory to a virtual machine that a Ceph OSD on the same server needs. The example reserves 5 GB per OSD for 10 OSDs per host in addition to the default reserved memory for the hypervisor. In an IOPS-optimized cluster, you can improve performance by reserving more memory for each OSD. The 5 GB number is provided as a starting point which can be further tuned if necessary.

    2. Edit the OpenStackDataPlaneService/nova-custom-ceph-az file. Add reserved-memory-nova to the configMaps list in the OpenStackDataPlaneService CR called ceph-nova-az0 that you created earlier:

      kind: OpenStackDataPlaneService
      <...>
      spec:
        configMaps:
        - ceph-nova
        - reserved-memory-nova
  11. Apply the CR changes.

    $ oc apply -f <dataplane_cr_file>
    • Replace <dataplane_cr_file> with the name of your file.

      참고

      Ansible does not configure or validate the networks until the OpenStackDataPlaneDeployment CRD is created.

  12. Create an OpenStackDataPlaneDeployment CRD, as described in Creating the data plane in the Deploying Red Hat OpenStack Services on OpenShift guide, which has the OpenStackDataPlaneNodeSet CRD file defined above to have Ansible configure the services on the data plane nodes.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동