아래와 같이 배포 파일을 작성하자.
apiVersion: v1
kind: Pod
metadata:
name: http-go
labels:
creation_method: manual
env: prod
spec:
containers:
- name: http-go
image: gasbugs/http-go
ports:
- containerPort: 8080
protocol: TCP
아래 명령을 통해 pod을 생성하고 pod을 확인하자.
kubectl create -f <파일명>
pod 확인
kubectl get pod
아래 명령을 통해 labels 설정을 확인한다.
kubectl getpod --show-labels
필터링 옵션을 확인하기 위해 pod을 추가로 배포한다.
아래와 같이 배포 파일을 만들고 create 한다.
apiVersion: v1
kind: Pod
metadata:
name: http-go-v3
labels:
creation_method: manual-v3
spec:
containers:
- name: http-go
image: gasbugs/http-go
ports:
- containerPort: 8080
protocol: TCP
label중 원하는 key(column)를 출력하자.
kubectl get pod -L <key값>
아래와 같이 선택한 key(column)이 출력됨을 확인할수 있다.
label 추가는 아래와 같은 명령으로 가능하다.
kubectl label pod hello=world
update는 --overwrite 옵션을 추가해야 한다.
label은 k8s에서 아주 중요한 정보로 사용되기 때문에 업데이트시 반드시 명시해 주어야 한다.
label 삭제는 - 명령을 통해 가능하다.
kubectl lable pod hello-