쿠버네티스란? Windows 10에 Minikube 설치

4498 단어
Kubernetes(줄여서 k8s)는 오픈 소스 컨테이너 오케스트레이션 플랫폼입니다.
일반적으로 컨테이너 기반 인프라와 관련된 많은 수작업을 자동화합니다.
K8s는 가상 머신과 물리적 머신을 통합 API 표면으로 변환합니다. 그런 다음 개발자는 Kubernetes API를 사용하여 컨테이너화된 애플리케이션을 배포, 확장 및 관리할 수 있습니다.
애플리케이션을 실행하는 컨테이너를 관리하는 데 도움이 되며 프로덕션 환경에서 다운타임이 발생하지 않도록 합니다. 예를 들어 컨테이너가 다운되면 최종 사용자가 알지 못하는 사이에 다른 컨테이너가 자동으로 그 자리를 차지합니다.

Kubernetes 아키텍처 및 구성요소




Kubernetes 마스터(마스터 노드)는 API를 통해 CLI(명령줄 인터페이스) 또는 UI(사용자 인터페이스)에서 입력을 받습니다.


API 서버



API 서버는 컨트롤 플레인의 프런트 엔드이며 우리가 직접 상호 작용하는 컨트롤 플레인의 유일한 구성 요소입니다. 내부 시스템 구성 요소와 외부 사용자 구성 요소는 모두 동일한 API를 통해 통신합니다.

키-값 저장소(etcd)



etcd라고도 하는 키-값 저장소는 Kubernetes가 모든 클러스터 데이터를 백업하는 데 사용하는 데이터베이스입니다. 클러스터의 전체 구성 및 상태를 저장합니다. 마스터 노드는 etcd를 쿼리하여 노드, 포드 및 컨테이너의 상태에 대한 매개변수를 검색합니다.

제어 장치



컨트롤러의 역할은 API 서버에서 원하는 상태를 얻는 것입니다. 제어할 작업을 맡은 노드의 현재 상태를 확인하고 차이점이 있는지 확인하고 해결합니다.

스케줄러



스케줄러는 API 서버에서 오는 새 요청을 감시하고 정상 노드에 할당합니다. 노드의 품질 순위를 매기고 가장 적합한 노드에 포드를 배포합니다. 적합한 노드가 없는 경우 해당 노드가 나타날 때까지 포드는 보류 상태에 놓입니다.

작업자 노드는 새 작업 할당을 위해 API 서버를 수신합니다. 작업 할당을 실행한 다음 결과를 Kubernetes 마스터 노드에 다시 보고합니다.


큐벨렛



kubelet은 클러스터의 모든 노드에서 실행됩니다. 주요 Kubernetes 에이전트입니다. kubelet을 설치하면 노드의 CPU, RAM 및 스토리지가 더 넓은 클러스터의 일부가 됩니다. API 서버에서 보낸 작업을 감시하고 작업을 실행한 다음 마스터에게 다시 보고합니다. 또한 포드를 모니터링하고 포드가 완전히 작동하지 않는 경우 제어판에 다시 보고합니다. 그런 다음 마스터는 해당 정보를 기반으로 원하는 상태에 도달하기 위해 작업과 리소스를 할당하는 방법을 결정할 수 있습니다.

컨테이너 런타임



컨테이너 런타임은 컨테이너 이미지 레지스트리에서 이미지를 가져오고 컨테이너를 시작 및 중지합니다. Docker와 같은 타사 소프트웨어 또는 플러그인이 일반적으로 이 기능을 수행합니다.

큐브 프록시



kube-proxy는 각 노드가 IP 주소를 가져오고 로컬 iptables 및 규칙을 구현하여 라우팅 및 트래픽 로드 밸런싱을 처리하도록 합니다.

현물 상환 지불



Pod는 Kubernetes에서 스케줄링의 가장 작은 요소입니다. 이것이 없으면 컨테이너는 클러스터의 일부가 될 수 없습니다. 앱을 확장해야 하는 경우 팟(Pod)을 추가하거나 제거해야만 이를 수행할 수 있습니다.

포드는 애플리케이션 코드가 있는 단일 컨테이너의 '래퍼' 역할을 합니다. 리소스의 가용성에 따라 마스터는 특정 노드에서 포드를 예약하고 컨테이너 실행 시간과 조정하여 컨테이너를 시작합니다.

Minikube 설치



Minikube는 Kubernetes를 로컬에서 실행할 수 있는 도구입니다. Minikube는 개인용 컴퓨터(Windows, macOS 및 Linux PC 포함)에서 단일 노드 Kubernetes 클러스터를 실행하므로 Kubernetes를 사용해 보거나 일상적인 개발 작업을 수행할 수 있습니다.



1단계: 컴퓨터에서 가상화가 지원되는지 확인

systeminfo




2단계: kubectl, minikube 유틸리티 다운로드/설치 및 로컬 ENV PATH에 추가

https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/



https://github.com/kubernetes/minikube/releases





kubectl이 설치되어 있는지 확인하려면 다음을 시도하십시오.



3단계: 하이퍼바이저 다운로드/설치 | 오라클 VM 박스

https://www.virtualbox.org/wiki/Downloads


4단계: Minikube 시작(드라이버 지정)

minikube start --driver=virtualbox or minikube start




minikube status


좋은 웹페이지 즐겨찾기