쿠버네티스
> 클라우드 서비스 프로바이더가 아님
> AWS, Microsoft Azure의 대안도 아님
Cluster(배포 혹은 원하는 최종 상태를 구성하는 모든 것의 컬렉션 세트)
Master Node : Control Plane -> Pod 및 container 제어 : API Server(Worker Node와 통신) : Scheduler(Pod를 감시) - API에 알림 : Kube-Controller-Manager(Worker Node 전체를 감시하고 제어) -> 적당한 수의 포드를 가동 중에 있는지 확인하는 역할 : Cloud-Controller-Manager(클라우드 프로바이더에 따라 다름) -> 클라우드 프로바이더에게 무슨 일을 해야 하는 지 알려줌 Worker Node = ec2 인스턴스(가상 머신) : Docker, : kubelet(Master Node와 통신을 위해서) : kube-proxy 서버 > Pod는 Worker Node에서 자신을 실행 > 2개 이상의 Pod를 실행시킬 수 있음 > 포드 네트워크 트래픽의 제어를 설정하는 또 다른 도구 > 인바운드, 아웃바운드 : Pod(container) > 여러 컨테이너를 포함할 수도 있음 > 임시적 Services > 논리적 세트 > 독립적인 IP 주소를 가진 Pod 그룹 > 특정 IP 주소 또는 도메인으로 특정 Pod를 연결할 수 있도록 하는 용어 |
‘ brew install kubectl ’로 설치
cubectl -> 클러스터에 명령 전달
‘ brew install minikube ’로 설치
minikube 명령어 -> 클러스터, Master Node, Worker Node 생성
쿠버네티스를 실행하고, 테스트하기 위해 로컬에 설치하는 도구
로컬 머신에서 가상 머신으로 클러스터를 생성함
minikube 시작 전 필요한 환경
필요한 것
- CPU 2개 이상
- 2GB의 여유 메모리
- 20GB의 여유 디스크 공간
- 인터넷 연결
- 컨테이너 또는 가상 머신 관리자(예: Docker , QEMU , Hyperkit , Hyper-V , KVM , Parallels , Podman , VirtualBox 또는 VMware Fusion/Workstation )
minikube status -> minikube 클러스터가 생성됐는지 확인해 줌
minikube dashboard -> 클러스터 실행을 유지하는 프로세스
> control + c 키로 종료시킬 수 있다
쿠버네티스 객체
1. Pod(container)
> 임시적, 포드가 종료되면 데이터 손실
2. Deployment
> 쿠버네티스를 작업할 때 사용하는 주요 객체
> 생성하고 관리해야 하는 pod의 수와 컨테이너 수에 대한 지침 제공
> 하나 이상의 pod를 제어
> 중지하고 삭제, 롤백 가능
> 명령적 접근, 선언적 접근이 있음
3. Service 객체
> Pod의 집합, 공유 ip주소 제공
> Pod의 내부 ip주소는 바뀌기 때문에 외부에서 접근하기 어려움
'DevOps BootCamp > 쿠버네티스' 카테고리의 다른 글
새 버전이 망가졌어요! 3.0에서 2.0으로 롤백하기 (1) | 2023.05.20 |
---|---|
쿠버네티스-선언적 접근 (0) | 2023.05.20 |
쿠버네티스 service 타입의 비교 (0) | 2023.05.18 |
쿠버네티스와 컨테이너 오케스트레이션 (0) | 2023.05.17 |
쿠버네티스 - 차트 시트 (0) | 2023.05.06 |