5.3. 외부 Ceph 통합
DCN(Distributed Compute node) 아키텍처의 중앙 위치를 배포하고 사전 배포된 Red Hat Ceph Storage 솔루션을 통합할 수 있습니다.
사전 요구 사항
- Ceph 클러스터의 하드웨어는 중앙 위치 및 각 가용성 영역 또는 스토리지 서비스가 필요한 각 지리적 위치에 있습니다.
- 에지 사이트를 하이퍼 컨버지드 아키텍처에 배포해야 합니다.
- 하드웨어는 중앙 위치와 각 가용성 영역에 있는 세 개의 이미지 서비스 서버 또는 스토리지 서비스가 필요한 각 지리적 위치에 대한 하드웨어입니다.
다음은 두 개 이상의 스택 배포의 예입니다.
-
중앙 위치에 있는 스택 중 중앙 위치를
중앙
이라고 합니다. -
dcn0
이라는 에지 사이트에 있는 하나의 스택. -
dcn
1,
과 유사하게 배포되는 추가 스택.dcn
02
등과 같이 dcn
오버클라우드와 기존 Red Hat Ceph Cluster 통합에 설명된 프로세스에 따라 기존 Red Hat Ceph Storage 솔루션과 통합 되도록 중앙 위치를 설치할 수 있습니다. Red Hat Ceph Storage를 DCN 배포의 중앙 사이트와 통합하기 위한 특별한 요구 사항은 없지만 오버클라우드를 배포하기 전에 DCN별 단계를 완료해야 합니다.
홈 디렉토리에서 배포하려는 각 스택의 디렉터리를 생성합니다. 이를 사용하여 각 사이트에 맞게 설계된 별도의 템플릿을 사용합니다.
mkdir /home/stack/central mkdir /home/stack/dcn0 mkdir /home/stack/dcn1
Red Hat OpenStack Platform director가 관리하는 역할을 사용하여 중앙 위치에 대한 역할을 생성합니다. 외부 Ceph와 통합할 때 Ceph 역할을 사용하지 마십시오.
cat > /home/stack/central/role-counts.yaml << EOF parameter_defaults: ControllerCount: 3 ComputeCount: 2 EOF
환경 파일 ~/central/central-images-env.yaml을 생성합니다.
sudo openstack tripleo container image prepare \ -e containers.yaml \ --output-env-file ~/central/central-images-env.yaml
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
다음과 유사한 콘텐츠를 사용하여 glance.yaml 템플릿을 구성합니다.
parameter_defaults: GlanceEnabledImportMethods: web-download,copy-image GlanceBackend: rbd GlanceStoreDescription: 'central rbd glance store' GlanceBackendID: central CephClusterName: central
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