포스트

02. kubernetes

02. kubernetes

Kubernetes

  • 도커를 사용한 컨테이너가 확산됨에 따라 컨테이너에 대한 배포, 네트워킹, 확장성을 생각하기 시작함

    → 자동화에 대한 열망으로 탄생한 컨테이너 오케스트레이션

  • 가장 빠르게 채택된 쿠버네티스
    • AWS, Google Cloud, Azure 등에서 풀 매니지드 쿠버네티스를 제공
  • 클라우드 환경 및 온프레미스 환경에서 설치 및 사용 가능

쿠버네티스는 어떤 기능을 하는가?

  • 배포 : 지정된 컨테이너를 지정된 호스트에 배포하며 원하는대로 실행
  • 롤아웃 : 배포의 변경, 쿠버네티스를 통해 롤아웃을 조절 가능
  • 서비스 검색 : IP 주소 등을 사용해 다른 컨테이너에 자동 노출이 가능
  • 스토피지 프로비저닝 : 필요에 따라 저장소에 마운트 작업
  • 로드 밸런싱 : CPU 사용률 등을 통해 워크로드 분산

쿠버네티스 아키텍쳐

클러스트 및 노드

  • 클러스터는 쿠버네티스의 기본 구성 요소 클러스터는 노드로 구성 되어 있다.
    • 여기서 노드는 단일 컴퓨팅 호스트를 나타낸다.
  • 일반적으로 클러스트는 마스터 노드작업자 노드로 나뉘어진다.
    • 마스터 노드 : 설정된 사항에 따라 배포 시기 등을 자동 조절하는 스케줄러 서비스
    • 작업자 노드 : 마스터노드로 부터 명령을 수신하고 실행하는 kubelet이라는 SW Agent가 포함 되어진다.
  • 이러한 클러스터 작업은 CLI 환경에서 관리되어 집니다.

팟 및 배포

  • 은 동일한 컴퓨팅 리소스와 동일한 네트워크를 공유하는 컨테이너 그룹이지 쿠버네티스의 확장성 단위
    • 만약 팟의 컨테이너가 처리할 수 있는 것보다 많은 트래픽을 받는 경우, 팟을 클러스터의 다른 노드에 복제
  • 배포는 컨테이너화된 어플리케이션의 생성과 상태 제어

Azure Kubernetes Service

마이크로소프트사에서 제공하는 관리형 Kubernetes 서비스

  • 기존의 사용자가 설치 및 관리 하던 쿠버네티스를 Azure가 대신 관리한다.
  • 기존의 쿠버네티스 보다 더욱 쉬운 관리와 보안성을 보장한다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.