Certified Kubernetes Administration - 76

2024-06-23

  • Kubernetes
  • Cloud

Kubernetes 클러스터 설계 정리

클러스터 목적

  • 학습용: Minikube 또는 단일 노드 클러스터(kubeadm 사용)로 충분.

  • 개발 및 테스트: 단일 마스터와 여러 워커 노드로 구성된 멀티 노드 클러스터가 적합.

  • 프로덕션: 고가용성(HA)을 위한 다중 마스터 노드를 포함한 멀티 노드 클러스터 권장.

클라우드 채택 여부

  • 클라우드 관리: Google Cloud Platform(GCP), AWS, Azure 등에서 제공하는 관리형 Kubernetes 솔루션 사용.

  • 셀프 호스팅: 온프레미스 또는 자체 관리형 클러스터 배포.

워크로드 종류

  • 어플리케이션 유형: 웹 애플리케이션, 빅데이터, 분석 등.

  • 트래픽 유형: 지속적인 무거운 트래픽 또는 버스트 트래픽.

노드 및 리소스 요구사항

  • 클러스터 크기: 최대 5,000 노드, 150,000 파드, 300,000 컨테이너.

  • 파드당 노드 수: 최대 100개 파드.

  • 리소스 사양: 클라우드 제공업체는 노드 수에 따라 적절한 인스턴스 크기를 선택.

배포 옵션

  • 온프레미스: kubeadm 사용.

  • GCP: Google Container Engine 사용.

  • AWS: kOps 사용.

  • Azure: Azure Kubernetes Service(AKS) 사용.

스토리지 구성

  • 고성능 워크로드: SSD 기반 스토리지 사용.

  • 다중 동시 접근: 네트워크 기반 스토리지 사용.

  • 다중 파드 공유 접근: 영구 스토리지 볼륨 사용.

노드 유형

  • 물리적 또는 가상 노드: 온프레미스, 가상 머신, 클라우드 환경.

  • 노드 구성: 마스터 노드는 컨트롤 플레인 컴포넌트를 호스팅하고, 워커 노드는 워크로드를 호스팅.

  • 마스터 노드에서의 워크로드 방지: kubeadm은 마스터 노드에 taint를 추가하여 워크로드 호스팅 방지.

운영 체제 및 배포

  • 운영 체제: 64비트 리눅스 OS 사용.

  • 큰 클러스터: etcd 클러스터를 별도의 노드로 분리 가능.

참고사항

  • HA 구성: 다중 마스터 노드를 통한 고가용성 설정.

  • 설계 시 고려사항: 클러스터의 목적, 클라우드 채택 여부, 워크로드 종류, 트래픽 유형 등.

추가 자료

  • Kubernetes 공식 문서 참조.

요약

Kubernetes 클러스터 설계 시 클러스터의 목적과 워크로드를 고려하여 적절한 배포 옵션과 리소스 사양을 선택해야 합니다.

특히, 프로덕션 환경에서는 고가용성을 위한 다중 마스터 노드 구성을 권장하며, 각 노드의 리소스 요구사항을 정확히 파악하는 것이 중요합니다.

Certified ...

Certified ...