5.3. 외부 Ceph 통합

DCN(Distributed Compute node) 아키텍처의 중앙 위치를 배포하고 사전 배포된 Red Hat Ceph Storage 솔루션을 통합할 수 있습니다.

사전 요구 사항

  • Ceph 클러스터의 하드웨어는 중앙 위치 및 각 가용성 영역 또는 스토리지 서비스가 필요한 각 지리적 위치에 있습니다.
  • 에지 사이트를 하이퍼 컨버지드 아키텍처에 배포해야 합니다.
  • 하드웨어는 중앙 위치와 각 가용성 영역에 있는 세 개의 이미지 서비스 서버 또는 스토리지 서비스가 필요한 각 지리적 위치에 대한 하드웨어입니다.

다음은 두 개 이상의 스택 배포의 예입니다.

  • 중앙 위치에 있는 스택 중 중앙 위치를 중앙이라고 합니다.
  • dcn0 이라는 에지 사이트에 있는 하나의 스택.
  • dcn 1, dcn2 등과 같이 dcn 0 과 유사하게 배포되는 추가 스택.

dcn external ceph at central

오버클라우드와 기존 Red Hat Ceph Cluster 통합에 설명된 프로세스에 따라 기존 Red Hat Ceph Storage 솔루션과 통합 되도록 중앙 위치를 설치할 수 있습니다. Red Hat Ceph Storage를 DCN 배포의 중앙 사이트와 통합하기 위한 특별한 요구 사항은 없지만 오버클라우드를 배포하기 전에 DCN별 단계를 완료해야 합니다.

  1. 홈 디렉토리에서 배포하려는 각 스택의 디렉터리를 생성합니다. 이를 사용하여 각 사이트에 맞게 설계된 별도의 템플릿을 사용합니다.

    mkdir /home/stack/central
    mkdir /home/stack/dcn0
    mkdir /home/stack/dcn1
  2. Red Hat OpenStack Platform director가 관리하는 역할을 사용하여 중앙 위치에 대한 역할을 생성합니다. 외부 Ceph와 통합할 때 Ceph 역할을 사용하지 마십시오.

    cat > /home/stack/central/role-counts.yaml << EOF
    parameter_defaults:
      ControllerCount: 3
      ComputeCount: 2
    EOF
  3. 환경 파일 ~/central/central-images-env.yaml을 생성합니다.

    sudo openstack tripleo container image prepare \
    -e containers.yaml \
    --output-env-file ~/central/central-images-env.yaml
  4. site-name.yaml 환경 파일에서 사이트의 이름 지정 규칙을 구성합니다. Nova 가용성 영역 및 Cinder 스토리지 가용성 영역은 다음과 같아야 합니다.

    cat > /home/stack/central/site-name.yaml << EOF
    parameter_defaults:
        NovaComputeAvailabilityZone: central
        ControllerExtraConfig:
            nova::availability_zone::default_schedule_zone: central
        NovaCrossAZAttach: false
        CinderStorageAvailabilityZone: central
        GlanceBackendID: central
    EOF
  5. 다음과 유사한 콘텐츠를 사용하여 glance.yaml 템플릿을 구성합니다.

    parameter_defaults:
        GlanceEnabledImportMethods: web-download,copy-image
        GlanceBackend: rbd
        GlanceStoreDescription: 'central rbd glance store'
        GlanceBackendID: central
        CephClusterName: central
  6. Red Hat OpenStack Platform director 없이 Ceph를 배포하면 ceph-ansible.yaml 환경 파일을 사용하지 마십시오. 대신 ceph-ansible-external.yaml 환경 파일을 사용합니다.

    openstack overcloud deploy \
           --stack central \
           --templates /usr/share/openstack-tripleo-heat-templates/ \
           -r ~/central/central_roles.yaml \
        ...
           -e /usr/share/openstack-tripleo-heat-templates/environments/ceph-ansible/ceph-ansible-external.yaml \
           -e /usr/share/openstack-tripleo-heat-templates/environments/nova-az-config.yaml \
           -e ~/central/central-images-env.yaml \
           -e ~/central/role-counts.yaml \
           -e ~/central/site-name.yaml \
           -e ~/central/ceph.yaml \
           -e ~/central/glance.yaml