Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. 클러스터 구성확인
    1. K8s 클러스터 환경의 정보 출력(macOS 미니쿠배
    2. 싱글 노드 K8s 클러스터에서 구성 노드 출력
      1. Role : 책과 다르게 control-plane 이 나오는 이유?
  2. 파드 실행
    1. 파드는 쿠버네티스에서 컨테이너를 실행하는 최소 단위.
      1.  kubectl : K8s 클러스터를 조작하기 위해 사용되는 커맨드
      2. run : 컨테이너 실행을 명령하는 서브 커맨드
      3. hello-world : 쿠버네티스 오브젝트의 이름(파드나 컨트롤러 등)
      4. —image=hello-world : 컨테이너의 이미지, 쿠버네티스에서는 파드 단위로 컨테이너가 기동되며 리포지터리명이 생략된 경우에는 도커 허브를 사용
      5. -it : 도커에서의 -it와 마찬가지로, -i는 키보드 표준 입력에 연결하고, -t는 유사터미널과 연결하여 대화 모드 설정. 옵션 ‘—restart=Never’인 경우에만 유효하며, 그 외에는 백그라운드로 실행.
      6. —restart=Never : 옵션에따라파드의기동방법변경. Never직접파드가기동되며 Always OnFailure컨트롤러를통해파드가기동
    2. 파드 실행 
    3. 파드목록출력 


매니페스트와 파드

  1. 매니페스트 
    1. 매니페스트란쿠버네티스의오브젝트를생성하기위한메타정보를 YAML이나 JSON으로기술한파일이다.

    2. 매니페스트는 kubectl run nginx —image=nginx:lastest —restart=Never 실행한 것과 같은 의미를 가진다.

  2. 파드API

    1. apiVersion : v1 설정

    2. Kind : Pod설정

    3. Metadata : 파드의 이름을 지정하는 name은 필수 항목이며, 네임스페이스 내에서 유일한 이름이어야 함.

    4. Spec : 파드의사양을기술

  3. 파드의사양

    1. Containers : 컨테이너의 사양을 배열로 기술

    2. initContainers : 초기화 전용 컨테이너의 사양을 배열로 기술.

    3. nodeSelector : 파드가 배포될 노드의 레이블을 지정.

    4. Volumes : 파드내컨테이너간에공유할수있는볼륨을설정

  4. 컨테이너설정

    1. Image : 이미지의 리포지터리명과 태그

    2. Name : 컨테이너를 여러 개 기술할 경우 필수 항목

    3. livenessProbe : 컨테이너 애플리케이션이 정상적으로 동작 주인지 검사하는 프로브

    4. readinessProbe : 컨테이너 애플리케이션이 사용자의 요청을 받을 준비가 되었는지 검사하는 프로브

    5. Ports : 외부로부터 요청을 전달받기 위한 포트 목록

    6. Resources : cpu와 메모리 요구량과 상한치

    7. volumeMounts : 파드에 정의한 볼륨을 컨테이너의 파일 시스템에 마운트하는 설정. 복수 개 기술 가능

    8. Command : 컨테이너 가동 시 실행할 커맨드. args가 인자로 적용

    9. Args : command의 실행 인자

    10. Env : 컨테이너내에환경변수를설정

  5. 매니페스트의적용과확인

  6. 파드를만드는매니페스트적용 & 파드의상태목록
  7. 파드의 IP 주소와파드가배포된노드표시