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

 


 

출처: subicura.com/k8s/

 

쿠버네티스 안내서

쿠버네티스 안내서 - 실습편

subicura.com