[Kubernetes] kubectl get command
[Kubernetes] kubectl get command
기본 구조
1
kubectl get [리소스 종류] [옵션]
- 리소스 종류
- Pod
- Service
- Deployment
- ConfigMap
- Secret
- Node
- Namespace
- PersistentVolume
- StorageClass
- Ingress
[명령어]
--help를 입력하면 더 다양한 옵션들을 찾을 수 있다.
Option
--all-namespaces,-A: 모든 네임스페이스에서 리소스를 조회1
kubectl get pods --all-namespaces--selector,-l: 라벨 셀렉터를 사용하여 특정 리소스를 조회1
kubectl get pods -l app=myapp
--output,-o: 출력 형식을 지정1
kubectl get pods -o wide--watch,-w: 리소스 변경 사항을 실시간으로 모니터링1
kubectl get pods -w--sort-by: 조회 결과를 정렬1 2
# "--sort-by=.metadata.creationTimestamp" 명령은 생성된 시간에 따라 정렬 kubectl get pods --sort-by=.status.phase
- --field-selector: 필드 셀렉터를 사용하여 특정 필드의 값을 기준으로 리소스를 조회 bash kubectl get pods --field-selector=status.phase=Running
--show-labels: 리소스에 대한 라벨 정보를 표시1
kubectl get pods --show-labels--no-headers: 표 헤더를 표시하지 않는다.1
kubectl get pods --no-headers--export: 출력 결과에서 불필요한 정보를 제거1 2
# "my-pod" 이름을 가진 파드의 YAML 파일을 생성, 이 때 --export 옵션을 사용하면 출력 결과에서 상태 및 메타데이터와 같은 불필요한 정보가 제거 kubectl get pod my-pod -o yaml --export > my-pod.yaml
--field-selector와 함께 사용할 수 있는 필드는 다양"status.phase"필드는 파드의 실행 상태를 나타내며,"metadata.name"필드는 파드의 이름을 나타낸다.
--show-kind: 조회 결과에 리소스 유형을 표시1
kubectl get pods --show-kind--ignore-not-found: 조회 결과가 없는 경우 에러를 발생시키지 않고 정상적으로 종료1
kubectl get pods my-pod --ignore-not-found--timeout: 조회 시간 제한을 설정1 2
# "--timeout=5s" 명령은 5초 동안 조회를 시도 kubectl get pods --timeout=10s
--selector와 함께 사용할 수 있는 라벨 셀렉터의 사용 예시는 다음과 같다.1 2 3 4 5 6 7 8 9 10 11
# "app=myapp" 라벨을 가진 파드를 조회 kubectl get pods -l app=myapp # "app" 라벨이 "myapp"이 아닌 파드를 조회 kubectl get pods -l app!=myapp # "app" 라벨이 "myapp" 또는 "yourapp"인 파드를 조회 kubectl get pods -l 'app in (myapp, yourapp)' # "app" 라벨이 "myapp" 또는 "yourapp"이 아닌 파드를 조회 kubectl get pods -l 'app notin (myapp, yourapp)'
자주 쓰는 명령어는 kubectl-cheatsheet
This post is licensed under CC BY 4.0 by the author.