리소스 정의
리소스 | 용도 |
노드 | 컨터이너가 배치되는 서버 |
네임스페이스 | 쿠버네티스 클러스터 안의 가상 클러스터 |
파드 | 컨테이너의 집합 중 가작 작은 단위. 컨테이너의 실행 방법 정의 |
레플리카셋 | 같은 스펙을 갖는 팟을 여러개 생성하고 관리하는 역할 |
디프로이먼트 | 레플리카 셋의 리비전 관리 |
서비스 | 팟의 집합에 접근하기 위한 경로 정의 |
인그레스 | 서비스를 쿠버네이스의 클러스터 외부로 노출 |
컨피그맵 | 설정 정보를 정의하고 팟에 전달 |
퍼시스턴트볼륨 | 팟에서 사용할 스토리지의 크기 및 종류 |
퍼시스턴트볼륨클레임 | 퍼시스턴트 볼륨을 동적으로 확보 |
스토리지클래스 | 퍼시스턴트 볼륨이 확보하는 스토리지 종류를 정의 |
스테이트풀셋 | 같은 스펙으로 모두 동일한 팟을 여러개 생성하고 관리 |
잡 | 상주 실행을 목적으로 하지 않는 팟을 여러개 생성하고 정상적인 종료를 보장 |
크론잡 | 크론 문법으로 스케쥴링 되는 잡 |
시크릿 | 인증 정보 같은 기밀 데이터 정의 |
롤 | 네임스페이스 안에서 조작 가능한 쿠버네티스 리소스의 규칙을 정의 |
롤바인딩 | 쿠버네티스 리소스 사용자와 롤을 연결 짓는다 |
크러스터롤 | 클러스터 정체적으로 조작 가능한 리소스 규칙을 정의 |
클러스터롤바인딩 | 쿠버네티스 리소스 사용자와 클러스터롤을 연결 |
서비스계정 | 팟이 쿠버네티스 리소스를 조작할때 사용하는 계정 |
컴포넌트 정의
컴포넌트명 | 역할 |
kube-apiserver | 쿠버네티스 API를 노출하는 컴포넌트 kubectl로부터 리소스를 조작하라는 지시를 받는다 |
etcd | 고가용성을 갖춘 분산 키-값 스토어. 클러스터의 백킹 스토어로 사용 |
kube-scheduler | 노드를 모니터링하고 컨테이너를 배치할 적절한 노드를 선택 |
kube-controller-manager | 리소스를 제어하는 컨트롤러를 실행 |
명령어 모음
명령어 | 실행 |
배포 | kubectl apply -f {매니페스트 파일(yaml)} |
조회 | kubectl get {pod, service, deployment, job} kubectl get {pod, service, deployment, job} -A kubectl get {pod, service, deployment, job} -w |
컨테이너 접근 | kubectl exec -it {pod name} -- /bin/bash kubectl exec -it {pod name} sh kubectl exec -it {pod name} sh -c {컨테이너명} |
로그확인 | kubectl logs -f {pod name} |
삭제 | kubectl delete pod {pod name} kubectl delete -f {매니페스트 파일(yaml)} kubectl delete -l app={app name} |
배포상태확인 | kubectl describe pod {pod name} |
배포 히스토리 조회 | kubectl rollout history deployment {pod name} |
롤백실행하기 | kubectl rollout history deployment {pod name} --revision=1 |
config 명령어들 | kubectl config [options] current-context 현재-컨텍스트를 표시 delete-cluster kubeconfig에서 지정된 클러스터를 삭제 delete-context kubeconfig에서 지정된 컨텍스트를 삭제 get-clusters kubeconfig에 정의된 클러스터를 표시 get-contexts 하나 또는 여러 컨텍스트를 설명 rename-context Renames a context from the kubeconfig file. set kubeconfig 파일에서 단일값을 설정 set-cluster kubeconfig에서 클러스터 항목을 설정 set-context kubeconfig에서 컨텍스트 항목을 설정 set-credentials kubeconfig에서 사용자 항목을 설정 unset kubeconfig 파일에서 단일값 설정을 해제 use-context kubeconfig 파일에서 현재-컨텍스트를 설정 view 병합된 kubeconfig 설정 또는 지정된 kubeconfig 파일을 표시 |
RBAC(Role-based access control)
명칭 | 내용 |
일반 사용자 | 클러스터 외부에서 쿠버네티스를 조작하는 사용자 |
서비스 계정 | 쿠버네티스 내부적으로 관리되며 쿠버네티스 API를 다룰때 사용하는 사용자 |
리소스 | 내용 |
롤 | 각 쿠버네티스 API 사용 권한을 정의. 지정된 네임스페이스 안에서만 유효 |
롤바인딩 | 일반 사용자 및 그룹/서비스 계정과 룰을 연결 |
클러스터롤 | 각 쿠버네티스 API의 사용 권한을 정의 |
클러스터롤바인딩 | 일반 사용자 및 그룹/서비스 계정과 클러스터를 연결 |
'Develop > infra' 카테고리의 다른 글
Nginx 튜닝, 보안 설정 및 Docker-compose 실행 (0) | 2020.12.16 |
---|---|
Docker Compose 이용한 ElasticSearch Cluster, Kibana 구성 (0) | 2020.12.15 |
MacOS Kubernetes 사용하기 (0) | 2020.11.23 |
Docker Compose를 사용한 Jenkins master/worker(slave) 설정 (0) | 2020.11.23 |
Docker 명령어 모음 (0) | 2020.11.23 |