Red Hat Training
A Red Hat training course is available for Red Hat Ceph Storage
부록 A. 문제 해결
A.1. Ansible은 설치를 중지하기 때문에 Less Devices Than it Expected
Ansible 자동화 애플리케이션은 설치 프로세스를 중지하고 다음 오류를 반환합니다.
- name: fix partitions gpt header or labels of the osd disks (autodiscover disks)
shell: "sgdisk --zap-all --clear --mbrtogpt -- '/dev/{{ item.0.item.key }}' || sgdisk --zap-all --clear --mbrtogpt -- '/dev/{{ item.0.item.key }}'"
with_together:
- "{{ osd_partition_status_results.results }}"
- "{{ ansible_devices }}"
changed_when: false
when:
- ansible_devices is defined
- item.0.item.value.removable == "0"
- item.0.item.value.partitions|count == 0
- item.0.rc != 0이것이 의미하는 것은 다음과 같습니다.
/usr/share/ceph-ansible/group_vars/osds.yml 파일에서 osd_auto_discovery 매개 변수가 true 로 설정된 경우 Ansible은 사용 가능한 모든 장치를 자동으로 탐지하고 구성합니다. 이 프로세스 중에 Ansible은 모든 OSD에서 동일한 장치를 사용할 것으로 예상합니다. 장치는 Ansible이 감지하는 것과 동일한 순서로 이름을 가져옵니다. OSD 중 하나에서 장치 중 하나가 실패하면 Ansible에서 실패한 장치를 감지하지 못하고 전체 설치 프로세스를 중지합니다.
예제 상황:
-
3개의 OSD 노드(
host1,host2,host3)는/dev/sdb,/dev/sdc,dev/sdd디스크를 사용합니다. -
host2에서/dev/sdc디스크가 실패하고 제거됩니다. -
다음 재부팅 시 Ansible은 제거된
디스크를 감지하지 못하고 두 디스크만/dev/sdchost2,/dev/sdb및 /dev/sdc(이전/dev/sdd)에 사용될 것으로 예상됩니다. - Ansible은 설치 프로세스를 중지하고 위의 오류 메시지를 반환합니다.
문제를 해결하려면 다음을 수행하십시오.
/etc/ansible/hosts 파일에서 오류가 발생한 디스크(위의 예 상황에서host 2)에서 OSD 노드에서 사용하는 장치를 지정합니다.
[osds] host1 host2 devices="[ '/dev/sdb', '/dev/sdc' ]" host3
자세한 내용은 3장. Red Hat Ceph Storage 배포 을 참조하십시오.