12.4. 노드 추가 또는 제거 권장 사항
노드 내에서 한 번에 하나의 OSD를 추가하거나 제거하고 다음 OSD를 진행하기 전에 스토리지 클러스터를 복구할 것을 권장합니다. 이를 통해 스토리지 클러스터 성능에 미치는 영향을 최소화할 수 있습니다. 노드에 장애가 발생하면 한 번에 하나의 OSD가 아닌 한 번에 전체 노드를 한 번에 변경해야 할 수 있습니다.
OSD를 제거하려면 다음을 수행합니다.
OSD를 추가하려면 다음을 수행합니다.
Ceph OSD 노드를 추가하거나 제거하는 경우 다른 프로세스도 스토리지 클러스터 성능에 영향을 미치는 것으로 고려하십시오. 클라이언트 I/O에 미치는 영향을 줄이기 위해 다음을 권장합니다.
용량 계산
Ceph OSD 노드를 제거하기 전에 스토리지 클러스터에서 전체 비율에
도달하지 않고도 모든 OSD의 콘텐츠를 백필할 수 있는지 확인합니다. 전체 비율에 도달하면
스토리지 클러스터에서 쓰기 작업을 거부합니다.
일시적으로 스크럽 비활성화
스토리지 클러스터의 데이터 처리는 필수이지만 리소스 집약적입니다. Ceph OSD 노드를 추가하거나 제거하기 전에 스크럽 및 딥스크래핑을 비활성화하고 현재 스크럽 작업을 완료하도록 합니다.
ceph osd set noscrub ceph osd set nodeep-scrub
Ceph OSD 노드를 추가하거나 제거하고 스토리지 클러스터가 active+clean
상태로 반환되면 noscrub
및 nodeep-scrub
설정을 설정 해제합니다.
ceph osd unset noscrub ceph osd unset nodeep-scrub
백필 및 복구 제한
적절한 데이터가 있는 경우 성능이 저하된
상태에서 작동하는 데 문제가 없습니다. 예를 들어 osd_pool_default_size = 3
및 osd_pool_default_min_size = 2
로 스토리지 클러스터를 작동할 수 있습니다. 가능한 빠른 복구 시간을 위해 스토리지 클러스터를 조정할 수 있지만 그렇게 하면 Ceph 클라이언트 I/O 성능에 큰 영향을 미칩니다. 최고 수준의 Ceph 클라이언트 I/O 성능을 유지하려면 백필 및 복구 작업을 제한하고 더 오래 걸릴 수 있습니다.
osd_max_backfills = 1 osd_recovery_max_active = 1 osd_recovery_op_priority = 1
osd_recovery_sleep
와 같은 sleep 및 delay 매개변수를 설정할 수도 있습니다.
배치 그룹 수 늘리기
마지막으로 스토리지 클러스터 크기를 확장하는 경우 배치 그룹 수를 늘려야 할 수 있습니다. 배치 그룹 수를 확장해야 한다고 판단되는 경우 배치 그룹 수가 증분적으로 증가할 것을 권장합니다. 배치 그룹 수를 상당한 용량으로 늘리면 성능이 크게 저하됩니다.