3.5. Ansible 인벤토리 위치 구성
cephadm-ansible 스테이징 및 프로덕션 환경에 대한 인벤토리 위치 파일을 구성할 수 있습니다. Ansible 인벤토리 호스트 파일에는 스토리지 클러스터의 일부인 모든 호스트가 포함됩니다. 인벤토리 호스트 파일에서 노드를 개별적으로 나열하거나 [mons],[osds] 및 [rgws] 와 같은 그룹을 생성하여 인벤토리에 명확성을 제공하고 --limit 옵션을 사용하여 플레이북을 실행할 때 그룹 또는 노드를 쉽게 사용할 수 있습니다.
클라이언트를 배포하는 경우 클라이언트 노드를 전용 [clients] 그룹에 정의해야 합니다.
사전 요구 사항
- Ansible 관리 노드.
- Ansible 관리 노드에 대한 루트 수준 액세스.
-
cephadm-ansible패키지가 노드에 설치되어 있습니다.
프로세스
/usr/share/cephadm-ansible/디렉토리로 이동합니다.[root@admin ~]# cd /usr/share/cephadm-ansible선택 사항: 스테이징 및 프로덕션용 하위 디렉터리를 생성합니다.
[root@admin cephadm-ansible]# mkdir -p inventory/staging inventory/production선택 사항:
ansible.cfg파일을 편집하고 다음 행을 추가하여 기본 인벤토리 위치를 할당합니다.[defaults] inventory = ./inventory/staging선택 사항: 각 환경에 대한 인벤토리
호스트파일을 생성합니다.[root@admin cephadm-ansible]# touch inventory/staging/hosts [root@admin cephadm-ansible]# touch inventory/production/hosts각
hosts파일을 열고 편집하고 노드 및[admin]그룹을 추가합니다.NODE_NAME_1 NODE_NAME_2 [admin] ADMIN_NODE_NAME_1- NODE_NAME_1 및 NODE_NAME_2 를 모니터, OSD, MDS, 게이트웨이 노드와 같은 Ceph 노드로 바꿉니다.
ADMIN_NODE_NAME_1 을 관리 인증 키가 저장된 노드의 이름으로 바꿉니다.
예
host02 host03 host04 [admin] host01참고ansible.cfg파일의 인벤토리 위치를 staging으로 설정하는 경우 다음과 같이 스테이징 환경에서 플레이북을 실행해야 합니다.구문
ansible-playbook -i inventory/staging/hosts PLAYBOOK.yml프로덕션 환경에서 플레이북을 실행하려면 다음을 수행합니다.
구문
ansible-playbook -i inventory/production/hosts PLAYBOOK.yml