모니터링
모니터링 (Monitoring)
ClickHouse가 어떻게 하드웨어 리소스 사용량과 서버 자체 메트릭을 모니터링하는지 소개해요. 내장 대시보드와 시스템 테이블, 외부 모니터링 연동(Graphite, Prometheus) 방법을 다뤄요.
출처: 문서
본문
이 가이드에 설명된 모니터링 데이터는 ClickHouse Cloud에서도 확인할 수 있어요. 아래 설명된 내장 대시보드를 통해서뿐만 아니라, 기본 및 고급 성능 메트릭을 메인 서비스 콘솔에서 직접 볼 수도 있어요.
다음을 모니터링할 수 있어요:
- 하드웨어 리소스 사용량
- ClickHouse 서버 메트릭
내장 고급 관측 대시보드
ClickHouse에는 내장된 고급 관측 대시보드 기능이 있어요. $HOST:$PORT/dashboard로 접근할 수 있고(사용자 이름과 비밀번호 필요), 다음과 같은 메트릭을 보여줘요:
- 초당 쿼리 수 (Queries/second)
- CPU 사용량(코어 수)
- 실행 중인 쿼리 (Queries running)
- 실행 중인 머지 (Merges running)
- 초당 선택된 바이트 (Selected bytes/second)
- IO 대기 (IO wait)
- CPU 대기 (CPU wait)
- OS CPU 사용량(사용자 공간)
- OS CPU 사용량(커널)
- 디스크 읽기
- 파일시스템 읽기
- 메모리(추적됨)
- 초당 삽입된 행 (Inserted rows/second)
- 전체 MergeTree 파트 수
- 파티션당 최대 파트 수
리소스 사용량
ClickHouse는 또한 프로세서의 부하와 온도, 스토리지 시스템·RAM·네트워크 사용량 같은 하드웨어 리소스의 상태를 스스로 모니터링해요. 이 데이터는 system.asynchronous_metric_log 테이블에 수집돼요.
ClickHouse 서버 메트릭
ClickHouse 서버는 자체 상태 모니터링을 위한 내장 도구를 갖고 있어요. 서버 이벤트를 추적하려면 서버 로그를 사용해요. 설정 파일의 logger 섹션을 참고해요. ClickHouse는 다음을 수집해요:
- 서버가 계산 리소스를 어떻게 사용하는지에 대한 다양한 메트릭
- 쿼리 처리에 대한 일반적인 통계
메트릭은 system.metrics, system.events, system.asynchronous_metrics 테이블에서 찾을 수 있어요. ClickHouse가 메트릭을 Graphite로 내보내도록 설정할 수 있어요. ClickHouse 서버 설정 파일의 Graphite 섹션을 참고해요. 메트릭 내보내기를 구성하기 전에 공식 가이드에 따라 Graphite를 먼저 설정해야 해요.
ClickHouse가 메트릭을 Prometheus로 내보내도록 설정할 수도 있어요. ClickHouse 서버 설정 파일의 Prometheus 섹션을 참고해요. 내보내기를 구성하기 전에 공식 가이드에 따라 Prometheus를 먼저 설정해야 해요.
추가로 HTTP API를 통해 서버 가용성을 모니터링할 수 있어요. /ping에 HTTP GET 요청을 보내면 돼요. 서버가 가용하면 200 OK로 응답해요. 클러스터 구성에서 서버를 모니터링하려면 max_replica_delay_for_distributed_queries 파라미터를 설정하고 HTTP 리소스 /replicas_status를 사용해요. /replicas_status에 요청하면 레플리카가 가용하고 다른 레플리카보다 지연되지 않은 경우 200 OK를 반환해요. 레플리카가 지연되면 지연 격차에 대한 정보와 함께 503 HTTP_SERVICE_UNAVAILABLE을 반환해요.
더 알아보기 (Learn more)
관련 내용은 없음