[k8s] kubectl 명령어 모음
kubectl 명령어 모음이다.
적어두고 유용하게 ...두고두고 사용하자
설명이 필요한 것만 설명을 적어놓겠다.
<기본>
kubectl get all (pods,svc,deployments)
kubectl get ing
kubectl config view
kubectl get pods -o wide (더 많은 내용 조회)
kubectl get pod my-pod -o yaml ( 파드의 yaml조회)
kubectl get nodes
kubectl get <podname> -o jsonpath={..spec.containers[*].name}; echo (특정 파드의 컨테이너 이름 조회)
<namespace관련>
1. kubectl get namespaces
2. kubectl config set-context --current --namespace <namespace> -> <namespace>로 기본 변경
<describe>
kubectl describe <object>
<apply,create>
kubectl apply -f <yaml파일>
kubectl create -f <yaml 파일>
<log>
kubectl logs <pod이름>
kubectl logs -f <pods 이름>
kubectl logs -f <pods> --since=10m
kubectl logs -f <pods> --since=1h
<Resource>
kubectl set image <deploymentname> <containername>=<imagename>
ex. kubectl set image deployment.apps/smithprj smithprj=zookeeper
#[특정 deployment의 이미지 업데이트]
kubectl rollout history <deploymentname> #디플로이먼트의 이력을 체크
kubectl rollout undo <deploymentname> #이전 버전으로 디플로이먼트 롤백
kubectl rollout status -w <deploymentname>
kubect rollout restart <deploymentname>
kubectl edit <resourcename>
<Delete>
kubectl delete -f <파일 이름>
kubectl delete pod,service baz,foo #baz,foo의 이름을 가진 파드와 서비스 삭제
kubectl -n my-ns delete pod,svc --all #my-ns의 네임스페이스 내 모든 파드,서비스 삭제
<exec>
kubectl exec --stdin --tty <podname> -- /bin/bash #해당 파드로 접속(사실 명령어만 날릴수있게해줌)
<api>
<kubectl 관련 커맨드> -v (0~9)
#숫자가 높아질수록 더 내용이 많아짐, 자세한건 kubernetes공홈 참조
#Http 요청 내용등을 알 수 있음
우선 요정도가 실무에서 사용하는 주로 쓰는 커맨드이다.
추가적으로 더 사용하거나 유용한 커맨드는 이쪽에 추가적으로 업데이트 예정입니다.