반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Python
- AWS
- NGINX
- Swift
- 도커 이미지
- 도커 명령어
- 프로세스
- 도커
- centOS
- 부스트코스
- 데브옵스
- boj
- os
- linux
- 클라우드
- k8s
- kubernetes
- 리눅스
- 인프라
- centOS7
- docker
- 쿠버네티스
- 네트워크
- 도커 컨테이너
- devops
- C++
- swift 클로저
- 운영체제
- 컨테이너
- ios
Archives
- Today
- Total
귀염둥이의 메모
[K8s] 쿠버네티스 레이블(Label), 어노테이션(Annotation) 본문
반응형
레이블(Label)
key-value 쌍으로 구성하며, 사용자가 클러스터 안에 오브젝트를 만들 때 메타데이터로 설정할 수 있다. 레이블이 생성된 다음에도 언제든지 수정이 가능하다.
key는 쿠버네티스 안에서 컨트롤러들이 파드를 관리할 때 자신이 관리해야 할 파드를 구분하는 역할을 한다. 레이블만으로 관리 대상을 구분하기 때문에 특정 컨트롤러가 만든 파드라도 레이블을 변경하면 인식할 수 없다. 컨트롤러와 파드를 느슨하게 결합하는 특징 때문에 파드들을 유연하게 관리 가능하다.
특정 레이블을 선택할 때는 셀렉터(Selector)를 사용한다. 등호 기반은 '='또는 '==', '!=' 연산자를 사용하여 같은지 다른지 구분 가능하다.
레이블 설정 규칙
- 63글자를 넘지 않아야 함
- 시작과 끝 문자는 알파벳 대소문자 및 숫자 ([a-z0-9A-Z])
- 중간에는 대시(-), 밑줄(_), 점(.) 등이 올 수 있음
- key 이름 앞에 '/'로 구분해서 접두어 사용 가능
- 접두어는 DNS 하위 도메인 형식, 253 글자 초과 X
- "kubernetes.io/"라는 접두어가 들어간 key는 쿠버네티스 시스템에서 사용하는 레이블
# 등호 기반
environment=develop # 키가 environment인 것 중 값이 develop인 것들을 선택
release=stable # 키가 release인 것 중 값이 stable인 것들을 선택
environment=develop, release=stable # 두 조건을 모두 만족하는 레이블 선택
# 존재 여부 (in, notin, !)
environment in (develop, stage) # environment가 devlop 이거나 stage인 레이블 선택
release notin (latest, canary) # release가 latest와 canary가 아닌 레이블 선택
gpu # gpu라는 키가 있는 모든 레이블 선택
!gpu # gpu라는 키가 없는 모든 레이블 선택
어노테이션(Annotation)
레이블과 마찬가지로 key-value 쌍으로 구상하며 레이블처럼 사용자가 설정할 수 있다. 어노테이션은 쿠버네티스 시스템이 필요한 정보들을 담으며, 쿠버네티스 클라이언트나 라이브러리가 자원을 관리하는 데 활용한다. 그래서 어노테이션 key는 쿠버네티스 시스템이 인식할 수 있는 값을 사용한다. 또한, 사용자에게 필요한 정보를 메모하는 용도로도 사용할 수 있다. 릴리즈 정보, 로깅, 모니터링에 필요한 정보 등을 적어둘 수 있다.
apiVersion: apps/v1
kind: Deployment
metadata:
name: anotation
labels:
app: nginx
annotations: # 메모용도로 사용하기
manager: "myadmin"
contact: "010-0000-0000"
release-version: "v1.0"
...
..
.
References
https://arisu1000.tistory.com/27841?category=787056
반응형
'Infra & Devops > Kubernetes' 카테고리의 다른 글
[K8s] 쿠버네티스 배포 전략 (RollingUpdate, Blue/Green, Canary) (0) | 2021.10.10 |
---|---|
[K8s] 자주쓰는 명령어 (0) | 2021.10.09 |
[K8s] 서비스(Service)와 인그레스(Ingress) (0) | 2021.10.08 |
[K8s] 쿠버네티스 아키텍처 (Kubernetes Architecture), 구성 요소 (0) | 2021.10.08 |
[K8s] kube-proxy (0) | 2021.10.07 |
Comments