기본 명령어
kubectl get pods # Pod 목록 조회
kubectl get nodes # Node 목록 조회
kubectl get services # Service 목록 조회
kubectl get deployments # Deployment 목록 조회
kubectl describe pod [pod-name] # Pod 상세 정보 조회
kubectl logs [pod-name] # Pod 로그 조회
kubectl exec -it [pod-name] -- /bin/bash # Pod 내부 접속
리소스 생성 및 관리
kubectl create -f [yaml-file] # YAML 파일로 리소스 생성
kubectl apply -f [yaml-file] # YAML 파일 적용 (생성 또는 업데이트)
kubectl delete pod [pod-name] # Pod 삭제
kubectl delete -f [yaml-file] # YAML 파일에 정의된 리소스 삭제
네임스페이스 관련
kubectl create namespace [name] # 네임스페이스 생성
kubectl get pods -n [namespace] # 특정 네임스페이스의 Pod 조회
kubectl config set-context --current --namespace=[name] # 기본 네임스페이스 변경
스케일링
kubectl scale deployment [name] --replicas=3 # Deployment 스케일 조정
kubectl autoscale deployment [name] --min=2 --max=5 --cpu-percent=80 # HPA 설정
파드 재시작
kubectl rollout restart deployment [deployment-name] # Deployment를 사용하는 경우
kubectl delete pod [pod-name] # 특정 파드만 직접 삭제하여 재시작
kubectl delete pods --all -n [namespace-name] # 특정 네임스페이스 모든 파드 재시작
업데이트 및 롤백
kubectl set image deployment/[name] container=[new-image] # 이미지 업데이트
kubectl rollout status deployment/[name] # 롤아웃 상태 확인
kubectl rollout history deployment/[name] # 롤아웃 히스토리 조회
kubectl rollout undo deployment/[name] # 이전 버전으로 롤백
모니터링 및 디버깅
kubectl top nodes # Node 리소스 사용량 조회
kubectl top pods # Pod 리소스 사용량 조회
kubectl logs -f [pod-name] # Pod 로그 실시간 조회
kubectl port-forward [pod-name] 8080:80 # 포트 포워딩