DevOps/Kubernetes

[K8S] k8s 정리 - (12) Kubernetes yaml 필드 정리

yubi5050 2022. 9. 11. 03:34

이전 글에서는 Kubernetes의 kubectl 명령어에 대해 알아보았습니다.

https://yubi5050.tistory.com/183

 

[K8S] k8s 정리 - (11) Kubernetes 명령어 (kubectl)

이전 글에서는 Kubernetes의 Service와 그 근간인 kube-proxy에 대해 알아보았습니다. https://yubi5050.tistory.com/182 [K8S] k8s 정리 - (10) Kubernetes Service와 kube-proxy 이전 글에서는 Kubernetes의 Vo..

yubi5050.tistory.com

이번 글에서는 Kubernetes의 yaml 필드에 대해 알아보려고 합니다.

 

yaml 파일 기술하기

yaml 파일에 작성되는 필드는 생성하고자 하는 k8s의 object, controller에 따라 다르지만, apiVersion, kind, metadata, spec옵션은 거의 공통적으로 존재한다.

 

apiVersion : kubernetes에 대한 API Version 명세

kind : 생성할 object (controller) 타입. (ex. pod, deployment, service 등)

metadata : 생성되는 Object의 메타정보 (유일한 정보들)

  • name : object 이름
  • namespace : object가 속한 namespace

spec : 생성할 object에 대한 구체적인 내용 정의 (spec은 object마다 상이함)

  • selector : 구성하고자 하는 자원들에 대한 범위 => 각각의 자원의 labels 를 통해 모아옴
  • replicas : 보장되어야 하는 pod의 갯수
  • ... 세부 object (controller) 마다 상이

 

Object 별 Spec 예시

📌 Pod 예시

pod.yaml

 

📌 Deployment 예시

deployment.yaml

 

📌 Service 예시

service.yaml