[쿠버네티스 기초 09] YAML
   in Kubernetes 
이 포스팅은 Udemy의 Certified Kubernetes Administrator with Practice Tests 강의를 정리한 내용입니다.
yaml 파일에 대해 알아봅시다.
YAML
- 쿠버네티스에서는 
yaml파일로 모든 오브젝트를 생성할 수 있음 - 항상 4가지 부분으로 파일을 작성해야 함
 
apiVersion: v1
kind: Pod
metadata:
  name: myapp-pod
  labels:
    app: myapp
spec:
  containers:
    - name: nginx-controller
      image: nginx
apiVersion
- kubernete api 의 오브젝트 버전 정보를 적음
 - 오브젝트마다 다르기 때문에 잘 파악해서 적어야 함
 
| Kind | Version | 
|---|---|
| POD | v1 | 
| Service | v1 | 
| ReplicaSet | apps/v1 | 
| Deployment | apps/v1 | 
| … | … | 
kind
만들려고 하는 오브젝트의 종류를 적음
metadata
- 이름이나 라벨같은 정보를 
딕셔너리형태로 적음 - 라벨을 통해 원하는 오브젝트를 필터링 할 수 있음
 - metadata 밑에는 
name이나label같이 미리 정의된 키값만 올 수 있음 - 하지만 
label밑에는 사용자가 원하는 어떤 키값도 올 수 있음 
spec
- 이미지와 컨테이너에 대한 정보
 containers는 리스트 형태 (여러 개의 컨테이너를 가질 수 있기 때문)
yaml 파일 배포
kubectl create -f pod-definition.yaml