3.2. Ceph Orchestrator를 사용하여 호스트 추가
백엔드의 Cephadm과 함께 Ceph Orchestrator를 사용하여 기존 Red Hat Ceph Storage 클러스터에 호스트를 추가할 수 있습니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- 스토리지 클러스터의 모든 노드에 대한 루트 수준의 액세스.
- 노드를 CDN에 등록하고 서브스크립션을 연결합니다.
-
스토리지 클러스터의 모든 노드에 대해 sudo 및 암호 없는
ssh
액세스 권한을 가진 Ansible 사용자.
절차
Ceph 관리 노드에서 Cephadm 쉘에 로그인합니다.
예제
[root@host01 ~]# cephadm shell
클러스터의 공용 SSH 키를 폴더에 추출합니다.
구문
ceph cephadm get-pub-key > ~/PATH
예제
[ceph: root@host01 /]# ceph cephadm get-pub-key > ~/ceph.pub
Ceph 클러스터의 공용 SSH 키를 새 호스트의 root 사용자
authorized_keys
파일에 복사합니다.구문
ssh-copy-id -f -i ~/PATH root@HOST_NAME_2
예제
[ceph: root@host01 /]# ssh-copy-id -f -i ~/ceph.pub root@host02
Ansible 관리 노드에서 새 호스트를 Ansible 인벤토리 파일에 추가합니다. 파일의 기본 위치는
/usr/share/cephadm-ansible/hosts
입니다. 다음 예는 일반적인 인벤토리 파일의 구조를 보여줍니다.예제
host01 host02 host03 [admin] host00
참고이전에 새 호스트를 Ansible 인벤토리 파일에 추가하고 호스트에서 preflight 플레이북을 실행한 경우 6단계로 건너뜁니다.
--limit
옵션을 사용하여 preflight 플레이북을 실행합니다.구문
ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit NEWHOST
예제
[ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --extra-vars "ceph_origin=rhcs" --limit host02
preflight 플레이북에서는 새 호스트에
podman
,lvm2
,chronyd
,cephadm
을 설치합니다. 설치가 완료되면cephadm
이/usr/sbin/
디렉터리에 있습니다.Ceph 관리 노드에서 Cephadm 쉘에 로그인합니다.
예제
[root@host01 ~]# cephadm shell
cephadm
orchestrator를 사용하여 스토리지 클러스터에 호스트를 추가합니다.구문
ceph orch host add HOST_NAME IP_ADDRESS_OF_HOST [--label=LABEL_NAME_1,LABEL_NAME_2]
--label
옵션은 선택 사항이며 호스트를 추가할 때 레이블이 추가됩니다. 호스트에 여러 레이블을 추가할 수 있습니다.예제
[ceph: root@host01 /]# ceph orch host add host02 10.10.128.70 --labels=mon,mgr
검증
호스트를 나열합니다.
예제
[ceph: root@host01 /]# ceph orch host ls
추가 리소스
- Red Hat Ceph Storage Operations Guide의 Ceph Orchestrator를 사용하여 호스트 목록을 참조하십시오.
-
cephadm-preflight
플레이북에 대한 자세한 내용은 Red Hat Ceph Storage 설치 가이드 의 preflight 플레이북 실행 섹션을 참조하십시오. - Red Hat Ceph Storage 설치 가이드의 CDN에 Red Hat Ceph Storage 노드 등록 및 서브스크립션 연결 섹션을 참조하십시오.
- Red Hat Ceph Storage 설치 가이드의 sudo 액세스로 Ansible 사용자 생성 섹션을 참조하십시오.