Web/Kubernetes
kubectl 명령어
tose33
2024. 1. 5. 19:11
기본 명령어
kubectl의 기본적인 사용법을 익힙니다.
subicura.com
apply | 원하는 상태를 적용합니다. 보통 -f 옵션으로 파일과 함께 사용합니다. |
get | 리소스 목록을 보여줍니다. |
describe | 리소스의 상태를 자세하게 보여줍니다. |
delete | 리소스를 제거합니다. |
logs | 컨테이너의 로그를 봅니다. |
exec | 컨테이너에 명령어를 전달합니다. 컨테이너에 접근할 때 주로 사용합니다. |
config | kubectl 설정을 관리합니다. |
apply: 상태 설정하기
kubectl apply -f [파일명 또는 URL]
-f 는 파일.
원하는 리소스의 상태를 yaml로 작성하고 apply 명령어로 선언.
get: 리소스 목록 보기
kubectl get [TYPE]
# Pod 조회
kubectl get pod
# 줄임말(Shortname)과 복수형 사용가능
kubectl get pods
kubectl get po
# 여러 TYPE 입력
kubectl get pod,service
#
kubectl get po,svc
# Pod, ReplicaSet, Deployment, Service, Job 조회 => all
kubectl get all
# 결과 포멧 변경
kubectl get pod -o wide
kubectl get pod -o yaml
kubectl get pod -o json
# Label 조회
kubectl get pod --show-labels
describe: 리소스 상태 상세보기
kubectl describe [TYPE]/[NAME] 또는 [TYPE] [NAME]
특정 리소스 상태를 볼 수 있다.
로그도 볼 수 있기 때문에 에러 발생시 확인 가능하다.
'kubectl describe pod/wordpress-746bd6d54b-hkkcl...' 로 pod 이면서 이름이 wordpress-746bd6d54b-hkkc 인 리소스의 상태를 상세 확인하고 있다.
이런식으로 describe 시 이벤트 로그도 남아있기 때문에 어떤 에러가 발생했는지 확인 가능하다.
delete: 리소스 제거
kubectl delete [TYPE]/[NAME] 또는 [TYPE] [NAME]
pod/wordpress-746bd6d54b-hkkcl 제거
logs: 컨테이너 로그 조회
kubectl logs [POD_NAME]
실시간으로 로그 보고 싶으면 -f 옵션.
exec: 컨테이너 명령어 전달
kubectl exec [-it] [POD_NAME] -- [COMMAND]
bash 커맨드로 컨테이너에 접속했다.
git bash 를 사용해서 접속 시도 했을때 아래와 같은 에러가 났는데, powershell 이나 cmd 에서는 정상 작동했다.
config: 설정 관리
kubectl은 여러개의 쿠버네티스 클러스터를 컨텍스트로 설정하고 필요에 따라 설정 할 수 있다.
현재 나의 컨텍스트는 minikube 이고, 얼마든지 다른 컨텍스트를 만들고 전환할수 있다.
즉 여러 종류의 클러스터를 만들고 전환하면서 사용할수 있다.