Kudu flush와 compaction이 밀리면서 저장 공간 사용량이 커지는 증상이 나타난다.
해당 스레드가 flush·compaction 같은 백그라운드 작업을 수행한다. 임의의 compaction 강제 실행 기능이 제공된다는 의미는 아니다.
CPU와 디스크가 포화되지 않았는데 유지보수 작업이 밀린다면 Kudu Tablet Server Maintenance Threads를 늘린다.
명령 예시는 문서 작성 시 보강한 것이며 대상 시스템에서 실행 검증하지 않았다.
- CM에서 Clusters → 대상 클러스터 → Kudu → Configuration으로 이동한다.
- Scope에서 Kudu Tablet Server 또는 해당 역할 그룹을 선택하고 Kudu Tablet Server Maintenance Threads를 검색한다. 역할별 override가 있으면 실제 대상 역할의 값도 확인한다.
- 기존 값을 기록한 뒤 아래 내용을 반영한다. Safety Valve는 기존의 다른 설정을 지우지 않고 해당 키만 추가·수정한다.
maintenance_manager_num_threads=<시험할 스레드 수>
- Save Changes를 누르고 변경 사유를 기록한다. Instances → 대상 역할 선택 → Actions for Selected → Restart로 해당 역할을 재시작한다. 클라이언트 설정 변경 표시가 있으면 Actions → Deploy Client Configuration도 실행한다.
- 실패하거나 기존 기능에 영향이 있으면 같은 화면에서 이전 값을 복원하고 해당 역할을 재시작한다.
기존 스레드 수를 기록하고 I/O 여유가 있는 노드에서 단계적으로 늘린다. 이 설정은 강제 compaction 명령이 아니다.
flush/compaction 대기와 디스크 지연·CPU를 조치 전후 같은 시간대에 비교한다.