본문 바로가기
MLOps/Doker & Kubernetes

Udemy CKA 강의 정리 22: Demo - PODs with YAML

by 공부하는 무니 2023. 1. 3.
반응형

해당 내용은 Udemy의 Certified Kubernetes Administrator (CKA) with Practice Tests  강의를 공부한 내용입니다. 내용을 그대로 번역하기보다는, 제가 이해하기 쉬운 대로 수정한 부분들이 있습니다.

⚠️ 영어 독해가 많이 부족합니다. 틀린 내용이 있으면 알려주시면 감사하겠습니다.


이번 데모에서는 kubectl run 대신 YAML 파일을 사용하여 파드를 생성해보겠습니다. 따라서 우리는 파드의 사양이 포함된 YAML파일을 만드는 것이 목표입니다. 파일은 모든 텍스트 편집기에서 만들 수 있습니다. Windows를 사용하시는 경우 메모장을 사용할 수 있고, Linux를 사용하시는 경우라면 vi, vim을 사용할 수 있습니다. 어떤 텍스트 편집기를 사용해도 되지만, YAML 언어를 지원하는 편집기를 사용하면 가독성도 좋고 이해하는데도더 좋을 것입니다. 따라서 메모장 대신 Notepad++를, Linux의 경우에는 vim을 사용하는 것이 나을 것입니다. 지금은 vi편집기를 사용하여 YAML 파일을 생성해보도록 하겠습니다.

1. yaml 파일 생성

vim pod.yaml로 yaml파일을 생성합니다.

2. 4개의 루트 레벨 속성 작성

그리고 이전 강의에서 살펴보았듯이 apiVersionkindmetadata, 'spec' 4개의 루트 레벨 속성을 작성합니다.

  • apiVersion: Pod인 경우 v1이었습니다.
  • kindPod입니다. P가 대문자이므로 주의해주세요.
  • metadata: metadata는 딕셔너리입니다. 여기에 파드의 이름과 label을 정의할 수 있습니다. - name: 지금은 ngingx로 지정합니다. - labels: labels 또한 딕셔너리 입니다. 여기에 원하는 만큼 label을 추가할 수 있습니다. 지금은 app: nginx와 tier: frontend을 지정해주었습니다.
  • spec: spec도 딕셔너리 입니다. spec안에는 containers가 있습니다.
    • `containers : containers는 container 리스트입니다. 각 container는 이름과 이미지를 갖습니다. 하이픈(-)은 각 container의 시작을 의미하는 기호입니다.작성한 후 들여쓰기가 올바른지 꼭 확인해야 합니다. 간격은 스페이스바 2개로 고정하여 사용해주세요.

<파드 1개에 컨테이너 1개 있는 경우>

<파드 1개에 컨테이너 여러 개 있는 경우>

3. 파일 저장

이제 Esc:wq를 눌러서 파일을 저장하고 나오겠습니다.

4. 파일 확인

cat pod.yaml로 파일 내용을 확인합니다.

5. YAML파일 kubectl apply

kubectl apply -f pod.yaml 커맨드로 yaml파일을 적용하여 파드를 생성합니다.

6. Pod 생성 확인

kubectl get pods커맨드로 만들어진 Pod를 확인할 수 있습니다.

Pod에 대한 더 자세한 정보를 얻고 싶다면 kubectl describe pod nginx 커맨드를 실행하면 됩니다. 여기서 nginx는 파드의 이름입니다.

반응형

댓글