Karpenter 설치/컨트롤러 상태
- Karpenter Pod/Deployment 확인
kubectl get deploy,pod -n karpenter
Nodepool
kubectl get nodepool
kubectl describe nodepool <nodepool-name>
kubectl get nodepool <nodepool-name> -o yaml
NodeClaim
kubectl get nodeclaim
kubectl describe nodeclaim <nodeclaim-name>
kubectl get nodeclaim <nodeclaim-name> -o yaml
EC2NodeClass
kubectl get ec2nodeclass
kubectl describe ec2nodeclass <ec2nodeclass-name>
kubectl get ec2nodeclass <ec2nodeclass-name> -o yaml
Karpenter 노드 조회
- node 조회시 NodePool/NodeClaim 라벨로 확인
kubectl get nodes -L karpenter.sh/nodepool,karpenter.sh/nodeclaim,node.kubernetes.io/instance-type
kubectl get nodes -l karpenter.sh/nodepool=<nodepool-name> -o wide
NodeClaim 조회
- NodeClaim 조회하며 node, capacity type 같이 조회
kubectl get nodeclaim -L karpenter.sh/nodepool,karpenter.k8s.aws/instance-type,karpenter.sh/capacity-type
스케줄링 실패/프로비저닝 트러블슈팅
- events 에서 karpenter 관련 이벤트 확인
kubectl get events -A --sort-by=.lastTimestamp | grep -i karpenter
- Karpenter controller log 에서 error, reconcile 점검
kubectl logs -n karpenter deploy/karpenter --since=30m | egrep -i "error|failed|reconcile|insufficient|denied"
노드별 Karpenter NodePool, EKS NodeGroup 조회
kubectl get nodes -L node.kubernetes.io/instance-type,eks.amazonaws.com/nodegroup,karpenter.sh/nodepool