K8s 노드 레이블

1 개요[ | ]

k8s Node Labels, k8s Well-Known Node Labels
k8s 노드 레이블, k8s 잘 알려진 노드 레이블
  • 쿠버네티스 노드에 붙는 레이블은 스케줄링, 토폴로지, 워크로드 제어에 사용된다.
  • 일부는 kubelet이 자동으로 붙이며(빌트인), 일부는 클라우드/운영자/추가 컴포넌트가 설정한다.

2 빌트인[ | ]

레이블 키 예시 값 설명
kubernetes.io/os linux, windows 노드 OS. Pod에도 지정 가능
kubernetes.io/arch amd64, arm64 노드 아키텍처
kubernetes.io/hostname master, worker1 노드 호스트명. kubelet이 자동 지정
beta.kubernetes.io/os linux (Deprecated) kubernetes.io/os 로 대체
beta.kubernetes.io/arch amd64 (Deprecated) kubernetes.io/arch 로 대체

3 기타[ | ]

레이블 키 예시 값 설명
node.kubernetes.io/exclude-from-external-load-balancers "" 외부 로드밸런서 대상에서 제외
node.kubernetes.io/instance-type m3.medium 클라우드 인스턴스 타입
feature.node.kubernetes.io/*
(예: feature.node.kubernetes.io/network-sriov.capable)
"true" Node Feature Discovery(NFD)가 채우는 기능 레이블
nfd.node.kubernetes.io/node-name node-1 NodeFeature 대상 노드 지정
node-role.kubernetes.io/control-plane "" 컨트롤 플레인 노드 표시. kubeadm 등 관리 도구가 자동 설정
node-role.kubernetes.io/*
(예: node-role.kubernetes.io/gpu)
"gpu" 노드 역할(Role) 지정 시 사용. 접미사는 자유롭게 설정 가능
topology.kubernetes.io/region us-east-1 노드/스토리지 리전. PersistentVolume에도 사용
topology.kubernetes.io/zone us-east-1c 노드/스토리지 가용 영역. PersistentVolume에도 사용
beta.kubernetes.io/instance-type m3.medium (Deprecated) node.kubernetes.io/instance-type 로 대체
failure-domain.beta.kubernetes.io/region us-east-1 (Deprecated) topology.kubernetes.io/region 로 대체
failure-domain.beta.kubernetes.io/zone us-east-1c (Deprecated) topology.kubernetes.io/zone 로 대체

4 예시[ | ]

$ kubectl get nodes --show-labels
NAME      STATUS   ROLES           AGE   VERSION   LABELS
master    Ready    control-plane   10d   v1.30.2   kubernetes.io/hostname=master, ...
worker1   Ready    <none>          10d   v1.30.2   kubernetes.io/hostname=worker1, ...

5 같이 보기[ | ]

6 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}