6.7. 복구
클러스터가 시작되거나 Ceph OSD가 예기치 않게 종료되고 재시작되면 쓰기 작업이 발생하기 전에 OSD가 다른 Ceph OSD와 피어링하기 시작합니다.
Ceph OSD가 충돌하고 다시 온라인 상태가 되면 일반적으로 배치 그룹에 있는 최신 버전의 오브젝트가 포함된 다른 Ceph OSD와 동기화되지 않습니다. 이 경우 Ceph OSD는 복구 모드로 전환되고 데이터의 최신 사본을 가져오고 맵을 최신 상태로 유지합니다. Ceph OSD가 다운된 기간에 따라 OSD의 오브젝트 및 배치 그룹이 오래 걸릴 수 있습니다. 또한 실패 도메인이 다운된 경우(예: 랙) 둘 이상의 Ceph OSD가 동시에 다시 온라인 상태가 될 수 있습니다. 이렇게 하면 복구 프로세스 시간과 리소스가 많이 소비될 수 있습니다.
운영 성능을 유지하기 위해 Ceph는 숫자 복구 요청, 스레드 및 개체 청크 크기를 제한하여 복구하여 Ceph가 성능이 저하된 상태로 잘 수행할 수 있습니다.
- osd_recovery_delay_start
- 설명
- 피어링이 완료되면 Ceph가 오브젝트 복구를 시작하기 전에 지정된 시간 동안 지연됩니다.
- 유형
- float
- 기본값
-
0
- osd_recovery_max_active
- 설명
- 한 번에 OSD당 활성 복구 요청 수입니다. 요청 수가 증가하면 복구 속도가 빨라지지만 요청 시 클러스터에 로드가 증가합니다.
- 유형
- 32비트 정수
- 기본값
-
3
- osd_recovery_max_chunk
- 설명
- 내보낼 복구된 데이터 청크의 최대 크기입니다.
- 유형
- 64비트 Integer 서명되지 않음
- 기본값
-
8 << 20
- osd_recovery_threads
- 설명
- 데이터를 복구하기 위한 스레드 수입니다.
- 유형
- 32비트 정수
- 기본값
-
1
- osd_recovery_thread_timeout
- 설명
- 복구 스레드를 제한하기 전 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본값
-
30
- osd_recover_clone_overlap
- 설명
-
복구 중에 복제 중복을 유지합니다. 항상
true
로 설정해야 합니다. - 유형
- 부울
- 기본값
-
true