SERVER/Kubernetes

쿠버네티스 명령어

lovineff 2020. 11. 13. 11:34

명령어 형태

kubectl [command] [type] [name] [flags]

  • command : 자원에 실행하려는 동작

    • create : 생성

    • get : 정보 가져오기

    • describe : 자세한 상태 정보

    • delete : 삭제

  • type : 자원 타입

    • pod : Pod

    • service : 서비스

  • name : 자원 이름

  • flag : 옵션

pod 조회

kubectl get pods
  • READY : 0/1(생성되었지만 사용 준비 X) / 1/1(생성되었지만 사용 준비 O)

  • STATUS : Running (실행) / Terminating / ContainerCreating

  • RESTARTS : 재시작 횟수

  • AGE : 생성 후 지난 시간

서비스 조회

kubectl get services
  • NAME : 서비스 이름

  • TYPE : 서비스 타입

  • Cluster IP : 서비스에 클러스터 IP (내부 IP)를 할당합니다.

  • Load Balancer : 외부 IP를 가진 로드밸런서를 할당합니다.

  • Node Port : 클러스터 IP 뿐만 아니라 노드의 IP 및 포트를 통해서 접근을 할 수 있습니다.

  • External Name : 외부 서비스를 쿠버네티스 내부에서 호출하고자 할 때 사용할 수 있습니다.

  • CLUSTER-IP : 클러스터 안에서 사용하는 IP

  • EXTERNAL-IP : 외부 IP

  • PORT(S) : 서비스에 접속하는 포트

  • AGE : 생성 후 지난 시간

pod 실행 로그 확인

kubectl logs -f {podname}

pod 삭제

# apply시 사용된 yaml 파일을 삭제하지 않으면 아래 명령어로 pod 빌드가 종료되지 않는다.
kubectl delete pod {podname}

# apply시 사용된 yaml 파일 삭제, pod, 서비스 모두 종료 후 삭제 된다
kubectl delete -f /Users/lovin.kts/realestate-batch/kubernetes_estateBatch.yaml

pod 내부 컨테이너 bash 접근

kubectl exec -it {podname} -- /bin/bash

전체 목록 확인

kubectl get all

배포 중지 및 pod 삭제

# deployment 조회 후 해당 deployment 삭제
kubectl get deployment

# 해당 deployment 삭제
kubectl delete deployment/{name}

수동 배포

  • 로컬에서 yaml 파일을 직접 배포

  • Service, Ingress가 수정이 필요한 경우 직접 배포해야 한다.

kubectl apply -f {yaml_파일명_or_파일경로}

#예시 kubectl apply -f deployment_news_batch_dev.yaml

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

쿠버네티스 기본  (0) 2020.11.13
쿠버네티스 파일 작성 방법  (0) 2020.11.13