6.3. CRUSH 규칙이 생성되고 풀이 올바른 CRUSH 규칙으로 설정되어 있는지 확인
- 경고
-
기존 환경에 성능 계층을 정의하면 Ceph 클러스터에서 대용량 데이터 이동이 발생할 수 있습니다. 스택 업데이트 중에 director가 트리거하는
ceph-ansible에는 풀이 클러스터에 이미 정의되어 있는지와 데이터가 포함되어 있는지 확인하는 논리가 없습니다. 즉, 풀과 연결된 기본 CRUSH 규칙을 변경하면 데이터 이동 때문에 기존 환경에서 성능 계층을 정의하는 것은 위험할 수 있습니다. 노드 추가 또는 제거에 대한 지원이나 권장 사항이 필요한 경우 Red Hat 지원에 문의하십시오.
절차
-
오버클라우드 컨트롤러 노드에
heat-admin사용자로 로그인합니다. OSD 계층이 성공적으로 설정되었는지 확인하려면 다음 명령을 입력합니다.
<controller_hostname>을 호스트 컨트롤러 노드 이름으로 바꿉니다.$ sudo podman exec -it ceph-mon-<controller_hostname> ceph osd tree- 결과 트리 보기에서 CLASS 열에 설정한 각 OSD에 대해 올바른 장치 클래스가 표시되는지 확인합니다.
또한 다음 명령을 사용하여 OSD가 장치 클래스에 올바르게 할당되었는지 확인합니다.
<controller_hostname>을 호스트 컨트롤러 노드 이름으로 바꿉니다.$ sudo podman exec -it ceph-mon-<controller_hostname> ceph osd crush tree --show-shadow결과 계층 구조를 다음 명령의 결과와 비교하여 각 규칙에 대해 동일한 값이 적용되는지 확인합니다.
-
<controller_hostname>을 호스트 컨트롤러 노드 이름으로 바꿉니다. <rule_name>을 확인하려는 규칙의 이름으로 바꿉니다.$ sudo podman exec <controller_hostname> ceph osd crush rule dump <rule_name>
-
생성한 규칙 이름과 ID가 배포 중에 사용한 convention
_rules매개변수에 따라 올바른지 확인합니다.<controller_hostname>을 호스트 컨트롤러 노드 이름으로 바꿉니다.$ sudo podman exec -it ceph-mon-<controller_hostname> ceph osd crush rule dump | grep -E "rule_(id|name)"Ceph 풀이 3단계에서 검색한 올바른 CRUSH 규칙 ID에 연결되어 있는지 확인합니다.
<controller_hostname>을 호스트 컨트롤러 노드 이름으로 바꿉니다.$ sudo podman exec -it ceph-mon-<controller_hostname> ceph osd dump | grep pool- 각 풀에 대해 규칙 ID가 예상 규칙 이름과 일치하는지 확인합니다.