관리 메뉴

IT.FARMER

kubectl 명령어 본문

devops/Kubernetes

kubectl 명령어

아이티.파머 2024. 4. 25. 23:37
반응형

kubectl 명령어 종류

kubctl —help 명령어로 확인가능한 cli 명령어들을 사용할수있다. 여기서는 자주 사용하는 명령어에대해 나열한다.

kubectl [command] [TYPE] [NAME] [flags]

  • apply : 원하는 상태를 적용하려 할때 사용한다. 보통 -f 옵션으로 파일과 할께 사용한다.

  • get : 리소스 리스트 조회

  • describe : 리소스 상태를 상세 조회하여 보여준다.

  • delete : 리소스 삭제

  • logs : 컨테이너의 로그를 볼수있다.

  • exec : 컨테이너에 명령어를 전달할때 사용 (컨테이너 접근시 이용한다.)

  • config : kubectl 설정을 관리한다.

    https://kubernetes.io/ko/docs/reference/kubectl/

버전정보 확인

kubectl version —short

사용가능한 오브젝트 리스트

kubectl api-resources

목록확인 (pod, deployment, service, namespace …..등등)

kubectl get {확인하려는 타입}

  • kubectl get pod : 파드 목록
  • kubectl get deployment : deployment 목록
  • kubectl get service : 서비스 목록
  • kubectl get namespace : 네임스페이스 목록보기

삭제

kubectl delete pod $[pod_name]

kubectl delete deployment $[deployment_name]

kubectl delete service $[service name]

특정 네임스페이스에 접근해서 확인할때 예제

kubectl get service -n <namespace name>

# argocd 네임스페이스안에 있는 서비스 목록을 볼수있다.
# 네임스페이스를 변경하여 특정 네임스페이스의 서비스목록<pod, deployment>을 확인 할 수있다

mezzo-skan@mezzoui-MacBookPro ~ %  kubectl get service -n argocd 
NAME                                      TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE
argocd-applicationset-controller          ClusterIP   10.104.234.198   <none>        7000/TCP,8080/TCP            15d
argocd-dex-server                         ClusterIP   10.106.150.106   <none>        5556/TCP,5557/TCP,5558/TCP   15d
argocd-metrics                            ClusterIP   10.109.110.47    <none>        8082/TCP                     15d
argocd-notifications-controller-metrics   ClusterIP   10.110.137.140   <none>        9001/TCP                     15d
argocd-redis                              ClusterIP   10.97.26.116     <none>        6379/TCP                     15d
argocd-repo-server                        ClusterIP   10.106.114.159   <none>        8081/TCP,8084/TCP            15d
argocd-server                             NodePort    10.101.125.129   <none>        80:32238/TCP,443:32619/TCP   15d
argocd-server-metrics                     ClusterIP   10.102.113.18    <none>        8083/TCP                     15d
mezzo-skan@mezzoui-MacBookPro ~ % kubectl describe svc argocd-server -n argocd

상세정보 보기

kubectl get ${kind_type} - o wide 으로 상세 정보를 확인 할 수 있다.

  • wide
  • josn : json 형태로
  • text : 텍스트 형태로
kubectl get pods -o wide

상세 서비스 정보 보기

  • describe : 상세보기
  • svc : service 의 약어

kubectl describe svc <service name> -n <namespace>

kubectl describe svc argocd-server -n argocd

노드 자원 보호하기

cordon, uncordon 을 사용하여 노드를 관리 한다.

  • kubectl uncordon ${node_name}
  • kubectl cordon ${node_name}

노드를 관리하는 명령어로 노드에 문제가 생겼을대 노드에 파드가 생성되지 못하게 차단하거나 차단을 해제할때 사용한다.

참고

네임스페이스

Pod

반응형

'devops > Kubernetes' 카테고리의 다른 글

kubernetes namespage  (0) 2024.04.25
kubernetes service (nodeport) 에대한 설명  (1) 2024.04.25
kubernetes minikube install  (0) 2024.04.25
kubernetes dashboard  (1) 2024.04.25
Argo CD 설치하기, Argo CD 란?  (0) 2023.04.28