10장. Ceph 클러스터 확장
10.1. Ceph 클러스터 확장
필요한 Ceph Storage 노드 수로 배포를 다시 실행하여 오버클라우드의 Ceph Storage 노드 수를 확장할 수 있습니다.
이 작업을 수행하기 전에 업데이트된 배포에 사용할 노드가 충분한지 확인합니다. 이러한 노드는 director에 등록하고 그에 따라 태그를 지정해야 합니다.
새 Ceph Storage 노드 등록
director에 새 Ceph 스토리지 노드를 등록하려면 다음 단계를 따르십시오.
stack
사용자로 director 호스트에 로그인하고 director 설정을 초기화합니다.$ source ~/stackrc
-
새 노드 정의 템플릿에 새 노드의 하드웨어 및 전원 관리 세부 정보(예:
instackenv-scale.json
)를 정의합니다. 이 파일을 OpenStack director로 가져옵니다.
$ openstack overcloud node import ~/instackenv-scale.json
노드 정의 템플릿을 가져오면 여기에 정의된 각 노드가 director에 등록됩니다.
커널 및 ramdisk 이미지를 모든 노드에 할당합니다.
$ openstack overcloud node configure
새 노드 등록에 대한 자세한 내용은 2.2절. “노드 등록” 을 참조하십시오.
새 노드 수동 태그 지정
각 노드를 등록한 후 하드웨어를 검사하고 노드를 특정 프로필에 태그해야 합니다. 프로필 태그는 플레이버에 따라 노드에 일치하며, 그런 다음 플레이버가 배포 역할에 할당됩니다.
새 노드를 검사하고 태그를 지정하려면 다음 단계를 수행합니다.
하드웨어 인트로스펙션을 트리거하여 각 노드의 하드웨어 속성을 검색합니다.
$ openstack overcloud node introspect --all-manageable --provide
-
--all-manageable
옵션은 관리 상태의 노드만 인트로스펙션합니다. 이 예제에서는 모든 것입니다. --provide
옵션은 인트로스펙션 이후 모든 노드를활성
상태로 재설정합니다.중요이 프로세스가 완료되었는지 확인합니다. 베어 메탈 노드의 경우 이 프로세스는 일반적으로 15분 정도 걸립니다.
-
노드 목록을 검색하여 해당 UUID를 확인합니다.
$ openstack baremetal node list
각 노드의
properties/capabilities
매개변수에 profile 옵션을 추가하여 노드를 특정 프로필에 수동으로 태그합니다.예를 들어 다음 명령은
ceph-storage
프로필을 사용하여 세 개의 추가 노드를 태그합니다.$ ironic node-update 551d81f5-4df2-4e0f-93da-6c5de0b868f7 add properties/capabilities='profile:ceph-storage,boot_option:local' $ ironic node-update 5e735154-bd6b-42dd-9cc2-b6195c4196d7 add properties/capabilities='profile:ceph-storage,boot_option:local' $ ironic node-update 1a2b090c-299d-4c20-a25d-57dd21a7085b add properties/capabilities='profile:ceph-storage,boot_option:local'
방금 태그하고 등록한 노드에서 여러 디스크를 사용하는 경우 각 노드에서 특정 루트 디스크를 사용하도록 director를 설정할 수 있습니다. 이를 수행하는 방법에 대한 지침은 2.5절. “루트 디스크 정의” 을 참조하십시오.
추가 Ceph Storage 노드를 사용하여 오버클라우드 재배포
새 노드를 등록하고 태그를 지정한 후 오버클라우드를 다시 배포하여 Ceph Storage 노드 수를 확장할 수 있습니다. 이 작업을 수행하는 경우 환경 파일의 parameter_defaults
(이 경우 ~/templates/storage-config.yaml
)에서 CephStorageCount
매개변수를 설정합니다. 7.1절. “역할에 노드 및 플레이버 할당” 에서 오버클라우드는 3개의 Ceph Storage 노드로 배포하도록 구성되어 있습니다. 대신 노드를 최대 6개의 노드로 확장하려면 다음을 사용합니다.
parameter_defaults:
ControllerCount: 3
OvercloudControlFlavor: control
ComputeCount: 3
OvercloudComputeFlavor: compute
CephStorageCount: 6
OvercloudCephStorageFlavor: ceph-storage
CephMonCount: 3
OvercloudCephMonFlavor: ceph-mon
이 설정을 사용하여 재배포하면 오버클라우드에 3개가 아닌 6개의 Ceph Storage 노드가 있어야 합니다.