ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1장 쿠버네티스 소개
    infrastructure/쿠버네티스 인 액션 2022. 6. 29. 22:35

    컨테이너의 이해

     

    가상머신

    작은 단위의 애플리케이션에 각각의 가성머신을 제공

    애플리케이션의 개수가 많아지면서 하드웨어 리소스, 관리 리소스가 같이 커짐

     

    리눅스 컨테이너

    동일한 호스트 시스템에서 여러개의 서비스를 실행

    서로 다른 환경이지만 가상머신에 비해 리소스가 훨씬 적음

     

     

     

     

    도커 개념 이해

    도커는 애플리케이션을 패키징, 배포, 실행하기 위한 플랫폼

    애플리케이션을 전체 환경과 함께 패키징

     

    도커의 주요 개념

    - 이미지 : 애플리케이션과 환경을 패키징

    - 레지스트리 : 도커 이미지를 공유하는 클라우드

    - 컨테이너 : 도커 기반 컨테이너 이미지에서 생성된 리눅스 컨테이너

     

    1. 개발자는 생성한 이미지를 레포지토리로 전송

    2. 다른 개발자는 만들어진 이미지를 로컬로 다운

    3. 로컬의 도커를 이용해 다운 받은 이미지로 컨테이너 생성

     

     

    쿠버네티스 맛보기

    - 시스템은 마스터와 워커로 구성

    - 애플리케이션 메니피스트를 마스터에 게시하면 마스터가 애플리케이션을 워커노드 클러스터에 배포

     

    - 마스터는 컨트롤 플레인 실행

    - 워커는 컨테이너를 실행

     

    컨트롤 플레인

    - 쿠버네티스 API 서버

    - 스케줄러는 애플리케이션의 배포를 담당

    - 컨트롤러 매니저

    - Etcd는 분산 데이터 저장소

     

    워커 노드

    컨테이너화된 애플리케이션을 실행하는 시스템

     

    - 도커

    - API 서버와 통신하고 노드의 컨테이너를 관리하는 Kubelet

    - 애플리케이션 네트워크 트래픽을 로드밸런싱하는 쿠버네티스 서비스 프록시(kube-proxy)

     

    - 앱디스크립터를 컨트롤 플레인에 전달

    - 컨트롤 플레인은 앱디스크립터를 해석해서 노드를 스케줄링

    - 노드에서 필요한 이미지는 도커가 이미지 레지스트리에서 읽어옴

    - 노드가 활성화되고 컨트롤플레인은 지속적으로 디스크립터 대로 앱이 떠있는지 확인

    - 애플리케이션의 복제본 수는 런타임에 변경이 가능

    댓글

Designed by Tistory.