ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Kubernetes] Minikube와 쿠버네티스 개요
    Kubernetes 2024. 4. 3. 19:42
    728x90

    쿠버네티스는 컴퓨터들을 연결하여 단일 형상으로 동작하도록 컴퓨팅 클러스터를 구성하고 높은 가용성을 제공하도록 조율한다.

    오늘은 minikube에 대해서 알아볼 건데,

    Minikube는 1개의 노드에서 쿠버네티스 설치 및 사용이 가능하고, 간편하게 로컬에서 쿠버네티스의 기본 기능 테스트 기능이 있으며, 쿠버네티스의 일부 기능이 제한될 수 있다.

    그 이유는 쿠버네티스가 클라우드 플랫폼에서만 사용할 수 있는 기능들이 존재하기 때문이다.

    쿠버네티스의 특징부터 알아보자.

     

    우선, 쿠버네티스는 대부분의 리소스를 오브젝트라고 불리는 형태로 관리한다.

    쿠버네티스에서는 컨테이너의 집합인 Pods, 컨테이너의 집합을 관리하는 컨트롤러 Replica Set, 사용자 Service Account, 노드 Node 까지도 하나의 오브젝트로 사용이 가능하다.

    쿠버네티스는 kubectl 명령어로 쿠버네티스를 사용할 수 있으며, 대부분의 작업은 kubectl 명령어로 실행이 가능하다.

    쿠버네티스 또한 Docker Swarm과 유사하게 YAML 파일로 컨테이너 리소스를 생성하거나 삭제할 수 있다. 쿠버네티스에서 YAML 파일의 용도는 컨테이너 뿐만 아니라 거의 모든 리소스 오브젝트들에 사용될 수 있다는 것이 가장 큰 특징이다.

     

    쿠버네티스는 여러 개의 컴포넌트로 구성되어 있다.

    쿠버네티스 노드의 역할은 크게 마스터와 워커로 나뉘어 있다.

    마스터 노드는 쿠버네티스가 제대로 동작할 수 있게 클러스터를 관리하는 역할을 담당하며, 워커 노드에는 애플리케이션 컨테이너가 생성된다.

    쿠버네티스는 도커를 포함한 매우 많은 컴포넌트들이 실행되는데, 마스터 노드에서는 API 서버, 컨트롤러 매니저, 스케줄러, DNS 서버 등이 실행되며 모든 노드에서는 오버레이 네트워크 구성을 위해 kube-Proxy 와 네트워크 플러그인 등이 실행된다.

     

    쿠버네티스 클러스터 구성을 위해 kubelet이라는 에이전트가 모든 노드에서 실행된다.

    kubelet은 컨테이너의 생성, 삭제 뿐만 아니라 마스터와 워커 노드 간의 통신 역할을 함께 담당하는 매우 중요한 에이전트다.

    kubelet이 정상적으로 실행되지 않으면 해당 노드는 쿠버네티스와 제대로 연결되지 않을 수도 있다.

    쿠버네티스 입장에서 보면 컨테이너 런타임 인터페이스를 제공하는 containerd나 cri-o, 또는 docker daemon 또한 하나의 컴포넌트이다.

    쿠버네티스는 컨테이너를 사용하기 위해 쿠버네티스가 다른 컴포넌트를 이용하는 방식이다.

     

     

    728x90

    'Kubernetes' 카테고리의 다른 글

    nginx: [emerg] bind() to 0.0.0.0:80 failed (13: Permission denied)  (0) 2024.05.21
    [Trouble Shooting] AKS 연결 안됨  (0) 2024.05.20
    Kubernetes가 사용되는 이유  (0) 2024.05.08
    [Kubernetes] Replica Set  (0) 2024.04.03
    [Kubernetes] Pod  (0) 2024.04.03
Designed by Tistory.