해결된 질문
작성
·
341
1
강사님 안녕하세요
강의 항상 잘 보고 있습니다.
강의 중에 궁금한 부분이 있어서 질문드립니다.
HPA 기능을 사용하기 위해서 Metric Server를 설치하는데
이전 수업에서
kube-scheduler 설명할때는
kube-scheduler가 api-server에 watch를 걸어놓고
모든 node의 cpu/mem등의 리소스 상황을 파악하여
파드생성등의 요청이 있을때 목적지를 선정해주는 역할이라고 들었습니다.
그럼 metric server를 설치를 안해도 api-server를 통해 cpu/mem 정보를 알수 있지 않나 싶은데
HPA를 사용하기 위해서 metric server를 설치하는 이유가 있을까요?
HPA에서 metric api를 사용한다는 것은 알고 있는데
kube-scheduler처럼 metric server를 통하지 않아도 cpu/mem 정보를 얻을수 있지 않을까
싶어서 여쭤봅니다.
답변 1
0
질문의 요지는
kube-scheduler는 metric server 설치 없이도 노드의 자원상황을 알 수 있는데
HPA는 왜 metric server를 설치해서 노드의 자원상황을 파악해야 할까
에 대한 궁금증입니다.
안녕하세요.
아래 두 내용을 읽어보시면 좀 이해가 가지 않을까 싶네요.
-HPA에서 제공되는 메트릭
https://kubernetes.io/ko/docs/tasks/run-application/horizontal-pod-autoscale/#%EB%A9%94%ED%8A%B8%EB%A6%AD-api%EB%A5%BC-%EC%9C%84%ED%95%9C-%EC%A7%80%EC%9B%90
-Kube-Scheduler에서 제공되는 메트릭
https://kubernetes.io/ko/docs/concepts/cluster-administration/system-metrics/#kube-scheduler-%EB%A9%94%ED%8A%B8%EB%A6%AD
결국 Kube-Scheduler에서 제공되는 메트릭은 자신의 역할에 필요한 메트릭이고 HPA 가 활용하는 메트릭구조와는 다릅니다. 또한 HPA는 좀더 범용적으로 다른 메트릭 정보를 활용할 수 있도록 설계되어 있습니다.