728x90
YAML
- 데이터를 표현하기 위한 언어
흔히 서버에서 데이터를 보낼때 사용하는 JSON 처럼 데이터를 표현하는데 사용된다.
쿠버네티스에서는 YAML 과 JSON 둘 다 사용할 수 있는데, 보통 object를 정의하기 위한 Manifestfile을 작성할 때는 YAML로 작성한다.
YAML 자료형 문법
1. 스칼라 / 스트링 : 문자열 데이터를 하나로 묶어서 사용할 수 있다. ‘’ , "" 와 같이 따옴표로 묶지 않아도 YAML에서는 문자열로 사용할 수 있다.
kubernetes
'kubernetes'
hello kubernetes
2. 리스트 / 배열
리스트의 element들을 - 을 앞에 붙여서 표현한다.
- apple
- banana
- cat
3. 해시 / 딕셔너리
key, value 형식으로 데이터를 다루는 형식이다. key: value 형식으로 쓰며 : 뒤에 한칸 띄어쓰기를 해주어야 한다.
name: Kubernetes
department: Software Engineering
address: Seoul
4. 해시들의 리스트
-name: minjee
age: 26
-name: leo
age: 27
-name: google
age: 33
5. 리스트를 가지는 해시
Computer Scince:
- Algorithm
- Data Structure
- Database
Japanese Literature:
- Grammar
- Conversation
YAML 문법 특징
- YAML 문자열은 유니코드 문자로 처리된다.
- 공백 문자로 들여쓰기를 통해 계층을 구분한다. 또한 들여쓰기를 하는 공백 문자의 길이를 맞춰주어야 한다. 이를 쉽게 하기 위해서 파일을 설정할 수 있다.
- 하나의 스트림에 있는 YAML 파일을 구분하기 위해서 시작하는 부분을 —-, 끝나는 부분을 … 로 구분한다.
단, 이 구분은 필수적인 것은 아니며 명확하게 문서를 이해하기 위해서 표시해주는 것이다.
---
- americano
- latte
- cocoa
...
- 주석처리는 Python처럼 #로 표시한다
- 확장자는 .yml 또는 .yaml 이다.
YAML auto indent 파일 작성하기
vim 에디터로 yaml 파일 작성시에 인덴트, 하이라이트, 들여쓰기 기능을 사용해서 작성할 수 있다.
~/.vimrc 파일에 다음과 같은 형식으로 작성한다
syntax on
autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab autoindent
manifest 문서의 규격
apiVersion: v1
kind: Pod
metadata:
name: OBJECT_NAME
labels:
LABEL_KEY1: VALUE1
spec:
containers:
- name: NAME
image: IMAGE_REPO:TAG
object를 정의하는 파일인 manifest file은 다음과 같은 형식으로 작성한다.
728x90
'Cloud Engineering > Kubernetes ⚙️' 카테고리의 다른 글
[Kubernetes] Annotation 추가하기 (0) | 2023.02.09 |
---|---|
[Kubernetes] Pod 생성 및 삭제하기 (0) | 2023.02.09 |
[Kubernetes] Label 생성과 Label 검색하기 (Selector) (0) | 2023.02.09 |
[Kubernetes] 쿠버네티스의 API 종류와 API 확인 명령어 (0) | 2023.02.09 |
모놀리식 아키텍처 vs 마이크로서비스 아키텍처 (0) | 2023.02.07 |