쿠버네티스 명령어 정리
in Kubernetes
쿠버네티스 명령어를 정리합니다.
조회
Pod 조회
kubectl get po
네임스페이스 dev
에서 Pod 조회
kubectl get po -n dev
모든 네임스페이스에서 Pod 조회
kubectl get po -A
모든 라벨 조회
kubectl get po --show-labels
특정 라벨을 가진 pod 조회
kubectl get po -l env=prod,tier=frontend
조회 시 헤더 제거
kubectl get po --no-headers
오브젝트 설명 문서 보기
kubectl explain po --recursive | less
생성
Pod 생성
kubectl run nginx --image=nginx --labels=tier=lb --port 8080
Pod 생성 및 커맨드 수행
kubectl run busybox --image busybox --command sleep 1000
Pod 생성하지 않고 YAML 파일만 생성
kubectl run nginx --image=nginx --dry-run=client -oyaml > nginx.yaml
서비스 생성
kubectl expose pod redis --port=6379 --name redis-service
kubectl create svc clusterip redis --tcp=6379:6379
Deploy 생성 (replica=2)
kubectl create deploy nginx --image=nginx --replicas=2
변경
replica 변경
kubectl scale deploy nginx --replicas=4
Pod 에서 필드 수정
pod 는 edit 으로 수정 시 아래 항목만 수정 가능함
- spec.containers[*].image
- spec.initContainers[*].image
- spec.activeDeadlineSeconds
- spec.tolerations
따라서 이 방법보단 아래 방법으로 yaml 복제 후, 기존 pod는 삭제하고 yaml 파일 수정 후 재배포 하는 것이 좋음
kubectl get po -oyaml > new_pod.yaml