본문 바로가기
728x90
반응형

Programming/Kubernetes24

kubernetes: pods.metrics.k8s.io is forbidden: User "front-proxy-client" cannot list resource "pods" in API group "metrics.k8s.io" in the namespace "default" metrics-server 설치하기 이후에 kubectl top pod 으로 metric 확인 시 아래와 같은 에러가 발생한다면 RBAC 설정을 추가해주자. $ kubectl top pod pods.metrics.k8s.io is forbidden: User "front-proxy-client" cannot list resource "pods" in API group "metrics.k8s.io" in the namespace "default" front-proxy-client 유저에 rolebinding 과 clusterolebinding을 생성해준다. $ kubectl create rolebinding metrics-server-role --clusterrole=admin --user=front-pr.. 2021. 10. 18.
Kubernetes metrics-server metrics-server 는 kubernetes의 오토스케일링 파이프라인들에 유용한 자원으로 kubernetes autoscaler를 사용하기 위해선 필수 자원이다. metrics-server는 kubelet으로부터 metric을 수집하고 Metric API를 통해서 kubernetes api에서 노출된다. 복잡한 말이긴 하지만 kubectl top 명령어를 사용하거나 Horizontal Pod Autoscaler, Vertical Pod Autoscaler 를 사용하기 위해선 필수적인 자원이다. 당연하겠지만 kubernetes cluster에서 설치되어야 한다. metrics-server 설치 metrics-server를 설치하기 위해선 별도의 yaml 파일을 생성하거나 아래처럼 직접 git 에서 직.. 2021. 10. 14.
Kubernetes HPA (Horizontal Pod Autoscaler) HPA는 Horizontal Pod Autoscaler의 줄임말로 kubernetes 에서 auto scaling을 지원해주는 기능이라고 볼 수 있다. HPA는 cpu 사용량이나 제공되는 metrics를 기반으로 replication controller, deployment, replica set 또는 stateful set을 scaling 해주는 역할을 수행한다. 단, replicas를 제어할 수 없는 오브젝트 (예로 데몬셋)는 지원되지 않는다. HPA는 controller manager에 의해서 관리되며 --horizontal-pod-autoscaler-sync-period flag로 설정된 주기마다 컨트롤되는 형태의 컨트롤 루프로 구현된다. (기본 설정은 15초) 위에서 설정된 주기와 HPA 설정에.. 2021. 10. 12.
Kubernetes Service Kubernetes Pod은 각각 자신만의 IP를 할당 받으며, Pod의 생명주기는 매우 짧은 편입니다. 즉, Pod는 매우 빈번하게 삭제되거나 생성될 수 있으며 Pod은 생성될 때 IP를 할당 받고 삭제 이후 다시 Pod이 생성될 경우 새로운 IP를 할당 받게 됩니다. 이처럼 Pod의 IP는 빈번하게 변경되므로 stable한 IP가 필요한데 이 역할을 Service가 수행하게 됩니다. Service Type에는 여러가지가 있지만 기본적인 타입은 고유의 Cluster IP를 가지며 이를 이용해서 Kubernetes 내부 혹은 외부에서 통신이 가능하게 됩니다. kubernetes Service는 기본적으로 selector로 선택된 app으로 트래픽을 전달하며 로드밸런싱 역할을 수행합니다. apiVersio.. 2021. 10. 8.
728x90
반응형