어노테이션
쿠버네티스 어노테이션을 사용하여 임의의 비-식별 메타데이터를 오브젝트에 첨부할 수 있다 도구 및 라이브러리와 같은 클라이언트는 이 메타데이터를 검색할 수 있다.
오브젝트에 메타데이터 첨부
레이블이나 어노테이션을 사용하여 쿠버네티스 오브젝트에 메타데이터를 첨부할 수 있다.
레이블을 사용하여 오브젝트를 선택하고 특정 조건을 만족하는 오브젝트 컬렉션을 찾을 수 있다 반면에 어노테이션은 오브젝트를 식별하고 선택하는데 사용되지 않는다. 어노테이션의 메타데이터는 작거나 크고 구조적이거나 구조적이지 않을 수 있으며 레이블에서 허용되지 않는 문자를 포함할 수 있다.
어노테이션은 레이블과 같이 키:값의 맵이다.
"metadata" : {
"annotations" : {
"key1" : "value1",
"key2" : "value2"
}
}
참고 : 맵의 키와 값은 문자열이어야 한다. 다르게 말해서, 숫자, 불리언(boolean), 리스트 등의 다른 형식을 키나 값에 사용할 수 없다.
다음은 어노테이션에 기록할 수 있는 정보의 예제이다.
* 필드는 선어적 구성 계층에 의해 관리된다. 이러한 필드를 어노테이션으로 첨부하는 것은 클라이언트 또는 서버가 설정한 기본 값, 자동 생성된 필드, 그리고 오토사이징 또는 오토스케일링 시스템에의해 설정된 필드와 구분 된다.
* 빌드, 릴리스, 또는 타임 스탬프, 릴리스 ID, git 브랜치, PR 번호, 이미지 해시 및 레지스트리 주소와 같으 이미지 정보
* 로킹, 모니터링, 분석 또는 감사 리포지터리에 대한 포인터
* 디버깅 목적으로 사용될 수 있는 클라이언트 라이브러리 또는 도구 정보 (예 : 이름, 버전,그리고 빌드 정보)
* 다른 생태계 구성 요소의 관련 오브젝트 URL과 같은 사용자 또는 도구/시스템 출처 정보
* 경량 롤아웃 도구 메타데이터 ( 예: 구성 또는 체크포인트)
* 책임자의 전화번호 또는 호출기 번호, 또는 팀 웹 사이트 같은 해당 정보를 찾을 수 있는 디렉토리 진입점
* 행동을 수정하거나 비표준 기능을 수행하기 위한 최종 사용자의 지시 사항
어노테이션을 사용하는 대신, 이 유형의 정보를 외부 데이터베이스 또는 디렉터리에 저장할 수 있지만, 이는 배포, 관리, 인트로스펙션(instrospection) 등을 위한 공유 클라이언트 라이브러리와 도구 생성을 휠씬 더 어렵게 만들 수 있다.
문법과 캐리터 셋
어노테이션은 키/값 쌍이다. 유효한 어노테이션 키에는 두 개의 세그먼트가 있다. 두개의 세그먼트는 선택적인 접두사와 이름(name)이며, 슬래시(/)로 구분된다. 이름 세그멘트는 필수이며 영문 숫자([a-z0-9A-Z])로 시작하고 끝나는 63자 이하이어야 하고 사이에 대시(-),밑줄(_),점(.)이 들어갈 수 있다. 접두사는 선택적이다. 지정된 경우 접두사는 DNS 서브도메인이어야한다. 점(.)으로 구분된 일련의 DNS 레이블은 총 253자를 넘지 않고 뒤에 슬래시(/)가 붙는다.
접두사 생략되면, 어노테이션 키는 사용자에게 비공개로 간주된다. 최종 사용자 오브젝트에 어노테이션을 추가하는 자동화된 시스템 구성 요소(예:kube-scheduler, kube-controlleer-manager, kube-apiserver,kubectl or 다른 서드파티 자동화)는 접두사를 지정해야 한다.
kubernetes.io/ k8s.io/ 접두사는 쿠버네티스 핵심 구성 요소를 위해 예약되어 있다
imageregistry: https:hub.docker.com/
apiVersion: v1
kind: Pod
metadata:
name:annotations-demo
annotations:
imageregistry: "https://hub.docker.com/"
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
쿠버네티스[10] 권장 레이블 20220913 (0) | 2022.09.13 |
---|---|
쿠버네티스 [9] 필드셀렉터 20220912 (1) | 2022.09.12 |
쿠버네티스[8] 레이블과 셀렉터 20220907 (0) | 2022.09.07 |
쿠버네티스[7] 네임스페이스 20220904 (0) | 2022.09.05 |
쿠베네티스[6] 오브젝트 이름과 ID 20220904 (0) | 2022.09.04 |
댓글 영역