Kubernetes
[Kubernetes] 기본 명령어
hyerann
2021. 3. 29. 00:01
⚡️ 목표: kubectl의 기본적인 사용법 익히기
kubectl의 역할
- 상태를 확인하고, 원하는 상태를 요청
- 컨테이너 로그도 확인하고 원격으로 접속할 수 있음
kubectl 명령어
명령어 | 설명 |
apply | - 원하는 상태를 적용 - 보통 -f 옵션으로 파일과 함께 사용 |
get | - 리소스 목록을 보여줌 |
describe | - 리소스의 상태를 자세하게 보여줌 |
delete | - 리소스 제거 |
logs | - 컨테이너의 로그를 봄 |
exec | - 컨테이너의 명령어 전달 - 컨테이너에 접근할 때 주로 사용 |
config | - kubectl 설정 관리 |
상태 설정하기 (apply)
원하는 리소스의 상태를 YAML로 작성하고 apply 명령어로 선언
- kubectl apply -f [파일명 또는 URL]
리소스 목록보기 (get)
쿠버네티스에 선언된 리소스를 확인하는 명령어
- kubectl get [TYPE]
Pod 조회
줄임말(Shortname)과 복수형 사용가능
줄임말: pod -> po, service -> svc
- kubectl get pod
- kubectl get pods
- kubectl get po
여러 TYPE 입력
- kubectl get pod,service
- kubectl get pod,svc
Pod, ReplicaSet, Deployment, Service, Job 조회 => all
- kubectl get all
결과 포맷 변경
- kubectl get pod -o wide
- kubectl get pod -o yml
- kubectl get pod -o json
Label 조회
- kubectl get pod --show-labels
리소스 상세 상태보기 (describe)
리소스의 상세한 상태 확인하기
* 특정 리소스의 상태가 궁금하거나 생성이 실패한 이유를 확인할 때 주로 사용
- kubectl describe [TYPE]/[NAME] 또는 [TYPE] [NAME]
리소스 제거 (delete)
- kubectl delete [TYPE]/[NAME] 또는 [TYPE] [NAME]
Pod를 제거해도 자꾸 살아나는 이유❔ ReplicaSet이 Pod의 개수를 유지해주기 때문
컨테이너 로그 조회 (logs)
- kubectl logs [POD_NAME]
실시간 로그를 보고 싶다면 -f 옵션 사용
하나의 Pod에 여러 개의 컨테이너가 있는 경우 -c 옵션으로 컨테이너를 지정해야 함
컨테이너 명령어 전달 (exec)
조회한 Pod의 컨테이너에 접속
- kubectl exec [-it] [POD_NAME] -- [COMMAND]
쉘로 접속하여 컨테이너를 확인하는 경우에 -it 옵션 사용
하나의 Pod에 여러 개의 컨테이너가 있는 경우 -c 옵션으로 컨테이너를 지정해야 함
설정 관리 (config)
kubectl은 여러 개의 쿠버네티스 클러스터를 컨텍스트(context)로 설정하고 필요에 따라 선택할 수 있음
현재 어떤 컨텍스트로 설정되어 있는지 확인하고 원하는 컨텍스트 지정
그외
전체 오브젝트 종류 확인
특정 오브젝트 설명 보기
마무리
워드프레스 리소스 제거
- kubectl delete -f https://subicura.com/k8s/code/guide/index/wordpress-k8s.yml