쿠버네티스 기본 사용법
포드 생성
1
| kubectl run <포드이름> --image=<이미지 지정>
|
예시
1
| kubectl run nginx-pod --image=ngix
|
1
2
3
| NAME READY STATUS RESTARTS AGE
jenkins-0 2/2 Running 0 18m
nginx-pod 0/1 ContainerCreating 0 40s
|
포드 조회
포드 삭제하기
쿠버네티스 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
| kubectl delete service <서비스 이름>
|
매니페스트 (Manifest)
k8s 오브젝트에 대한 명세를 파일로 기록한 것
파일에 각 오브젝트에 의도하는 상태(desired state)를 기술
매니페스트를 이용한 오브젝트 생성
1
| kubectl apply -f <매니페스트 파일>
|
매니페스트를 이용하여 만든 오브젝트 삭제
쿠버네티스 롤아웃
작업 상태 확인하기
1
| kubectl rollout status deployment <디플로이먼트>
|
작업내역 확인하기
1
| kubectl rollout history deployment <디플로이먼트>
|
복구하기
1
| kubectl rollout undo deployment <디플로이먼트>
|
특정 시점으로 복구하기
1
| kubectl rollout undo deployment <디플로이먼트> --to-revision=<리비전 번호>
|