Post

쿠버네티스 기본 사용법

쿠버네티스 기본 사용법

포드 생성

1
kubectl run <포드이름> --image=<이미지 지정>

예시

1
kubectl run nginx-pod --image=ngix
  • 결과
1
pod/nginx-pod created
  • 조회해보면, nginx-pod가 조회됨
1
kubectl get pods
1
2
3
NAME        READY   STATUS              RESTARTS   AGE
jenkins-0   2/2     Running             0          18m
nginx-pod   0/1     ContainerCreating   0          40s

포드 조회

1
kubectl get pods

포드 삭제하기

1
kubectl delete <포드 이름>

쿠버네티스 deployment

1
kubectl create deployment <이름> --image=<이미지 지정>

쿠버네티스 상세조회

1
kubectl describe <종류> <이름>

예시

1
kubectl describe deployment dpy-nginx
1
kubectl describe pod nginx-pod

k8s 서비스

클러스터 내부의 포드에 의하여 실행되는 응용을 외부에 접근 가능하도록 노출하는 기능을 하는 오브젝트

노출대상

특정 포드 (또는 포드들의 집합)에서 실행하는 컨테이너의 특정 포트

서비스

1
kubectl expose <종류> --type=<서비스 타입>  --name=<서비스 이름>  --port=<서비스 포트>

외부에 내보냈는지 확인하기

포트번호를 모른다면, kubectl get services 명령어를 입력하여 확인

1
curl localhost:<포트번호>

서비스 삭제하기

1
kubectl delete service <서비스 이름>

매니페스트 (Manifest)

k8s 오브젝트에 대한 명세를 파일로 기록한 것

  • YAML 형태를 이용

파일에 각 오브젝트에 의도하는 상태(desired state)를 기술

  • 오브젝트 스펙이라고 부름

매니페스트를 이용한 오브젝트 생성

1
kubectl apply -f <매니페스트 파일>

매니페스트를 이용하여 만든 오브젝트 삭제

1
kubectl delete ...

쿠버네티스 롤아웃

작업 상태 확인하기

1
kubectl rollout status deployment <디플로이먼트>

작업내역 확인하기

1
kubectl rollout history deployment <디플로이먼트>

복구하기

1
kubectl rollout undo deployment <디플로이먼트>

특정 시점으로 복구하기

1
kubectl rollout undo deployment <디플로이먼트> --to-revision=<리비전 번호>
This post is licensed under CC BY 4.0 by the author.