사용량과 객체 상태의 차이
컨테이너가 CPU를 얼마나 쓰는지와 Deployment의 복제본 상태는 서로 다른 정보다. Kube-state-metrics는 Kubernetes API를 관찰해 객체 상태에 관한 메트릭을 만든다. 구성 요소 자체의 내부 성능보다 클러스터 안에 있는 리소스의 상태를 표현하는 데 초점을 둔다.
원본 정보를 메트릭으로
API 객체에서 가져온 정보를 임의의 상태 해석으로 바꾸지 않고 메트릭으로 제공한다. kubectl은 읽기 쉬운 표시를 위해 별도의 판단을 적용할 수 있으므로 화면의 표현과 값이 다르게 보일 수 있다. 사용자는 메트릭을 바탕으로 자신의 집계와 경고 조건을 구성한다.
현재 상태와 과거 기록
HTTP 엔드포인트는 현재 클러스터의 상태를 반영하며 삭제된 객체는 더 이상 그곳에 나타나지 않는다. 과거 기록을 살펴보려면 별도의 수집과 저장 흐름이 필요하다. 따라서 메트릭 생성과 장기 보관을 구분하고 수집할 리소스와 지표의 범위도 함께 관리해야 한다.