kubectl 커맨드 명령어 시트

kubectl 커맨드 명령어 시트

728x90

kubectl 커맨드의 기본

쿠버네티스 클러스터에게 명령을 내릴 때는 kubectl을 사용한다.

kubectl 커먼대의 기본 구조는 아래와 같이 세 부분으로 구성된다.

kubectl <1. 커맨드> <2. 리소스 타입> [이름] [3. 옵션]

커맨드로 동작을 지정하고 리소스 타입과 이름으로 대상이 되는 오브젝트를 지정한 뒤 옵션을 지정

1. 커맨드

get

지정한 오브젝트의 목록을 한 줄에 하나씩 출력

kubectl get -f <매니페스트 | 디렉터리>

kubectl get <리소스타입>

kubectl get <리소스타입> <이름>

kubectl get <리소스타입> <이름>

describe

get 보다 자세한 정보를 출력

kubectl describe -f <매니페스트 | 디렉터리>

kubectl describe <리소스타입>

kubectl describe <리소스타입> <이름>

kubectl describe <리소스타입> <이름>

apply

매니페스트에 기술된 오브젝트가 존재하지 않으면 생성하고, 존재하면 변경

kubectl apply -f <매니페스트>

create

매니페스트에 기술된 오브젝트를 생성

이미 있는 경우엔 에러 반환

kubectl create -f <파일명>

delete

매니페스트에 기술된 오브젝트를 삭제

kubectl delete -f <파일명>

kubectl delete <리소스타입> <이름>

config

접속 대상이 되는 콘텍스트(클러스터, 네임스페이스, 유저)의 목록을 출력하거나 선택

kubectl config get-contexts

kubectl config use-context <콘텍스트명>

exec

컨테이너의 대화형으로 커맨드를 실행, 파드 내에 컨테이너가 여러 개 있는 경우 [-c]로 컨테이너명을 지정

컨테이너명은 'kubectl get describe <파드명>'으로 확인 가능

kubectl exec -it <파드명> [-c 컨테이너명] <커맨드>

run

파드를 실행

kubectl run <이름> --image=<이미지명>

logs

컨테이너의 로그 표시

kubectl logs <파드명> [-c 컨테이너명]

2. 리소스 타입

파드 관련 리소스 타입

pod(po) - 파드

컨테이너의 최소 기동 단위로, 기동 시 파드 네트워크상의 IP 주소를 할당받으며, 한 개 이상의 컨테이너를 내포

참고 문서

poddisruptionbudget(pdb) - 파드 정지 허용 수

파드의 개수가 지정한 개수 이하가 되지 않도록 디플로이먼트, 스테이트풀셋, 리플리카셋, 레플리케이션 컨트롤러의 동작을 제어

참고 문서

서비스 관련 리소스 타입

service(svc) - 서비스

파드를 클라이언트에 공개

참고 문서

endpoints(ep) - 엔드포인트

서비스를 제공하는 파드의 IP 주소와 포트를 관리

참고 문서

ingress(ing) - 인그레스

서비스 공개, TLS 암호, 세션 유지, URL 매핑 기능을 제공

참고 문서

컨트롤러 관련 리소스 타입

deployment(deploy) - 디플로이먼트

파드의 레플리카 수, 자기회복, 롤아웃, 롤백 등을 제어하는 컨트롤러

참고 문서

replicaset(rs) - 리플리카셋

파드의 리플레카 수를 제어하는 컨트롤러로, 디플로이먼트와 연계하여 동작

참고 문서

statefulset(sts) - 스테이트풀셋

퍼시스턴트 데이터를 보유하고 파드를 제어하는 컨트롤러, 퍼시스턴트 볼륨과 파드를 하나씩 쌍으로 묶어 각 이름에 동일한 일련 번호를 부여하여 관리

참고 문서

job - 잡

배치 처리를 수행하는 파드를 관리하는 컨트롤러

참고 문서

cronjob - 크론잡

정기적으로 실행되는 배치 처리를 관리하는 컨트롤러

참고 문서

daemonset(ds) - 데몬셋

모든 노드에 파드를 배치하는 컨트롤러

참고 문서

replicationcontroller(rc) - 리플리케이션 컨트롤러

파드의 레플리카 수를 제어하는 컨트롤러, 레플리카셋의 이전 버전

참고 문서

horizontalpodautoscaler - Horizontal Pod Autoscaler

워크로드에 따라 파드 수를 조절하는 컨트롤러

참고 문서

볼륨 관련 리소스 타입

persistentvolume(pv) - 퍼시스턴트 볼륨

로우 레벨 스토리지 관리

참고 문서

persistentvolumeclaim(pvc) - 퍼시스턴트 볼륨 클레임

스토리지 클래스와 용량을 지정해서 논리 볼륨에 프로비저닝을 요구

참고 문서

storageclass(sc) - 스토리지 클래스

스토리지의 종류

참고 문서

쿠버네티스 클러스터의 구성 관련 리소스 타입

node(no) - 노드

쿠버네티스 클러스터의 워크로드를 실행하는 서버

참고 문서

apiservice - API 서비스

마스터가 지원하는 API 서비스를 관리

참고 문서

componentstatuses(cs) - 컴포넌트 상태

scheduler, controller-manager, etcd-0에 헬스체크 결과를 보고

참고 문서

controllerrevision - 컨트롤러 리비전

컨트롤러의 리비전 관리

참고 문서

event - 이벤트

쿠버네티스 클러스터에서 발생한 이벤트를 기록하고 표시하기 위한 컨트롤러

참고 문서

728x90

from http://devbksheen.tistory.com/162 by ccl(A) rewrite - 2021-11-24 14:00:37