본문 바로가기
Kubernetes(k8s)/따배쿠(따라하면서 배우는 쿠버네티스) 학습

[k8s]Kubernetes - 멀티마스터 쿠버네티스 클러스터

by 열정주니어 2023. 3. 7.
반응형

쿠버네티스 클러스터를 직접 구성하는 도구

  • kubeadm
    • 쿠버네티스에서 공식 제공하는 클러스터 생성/관리 도구
  • kubespray
    • 쿠버네티스 클러스터를 배포하는 오픈소스 프로젝트
    • 다양한 형식으로 쿠버네티스 클러스터 구성 가능
    • 온프레미스에서 상용 서비스 클러스터 운영 시 유용

 

쿠버네티스 클러스터 구성

  • control plane(master node)
    • 워커 노드들의 상태를 관리하고 제어
    • Highly Available(HA) cluster 운영
    • API는 loadbalancer를 통해 워커 노드에 노출
    • 최소 3개의 중첩된 control plane을 구성(5, 7개의 master nodes)
  • worker node
    • 도커 플랫폼을 통해 컨테이너를 동작하며 실제 서비스 제공

 

Multi-master(HA) 클러스터 구성 flow

  • 마스터를 여러대로 운영하여 비즈니스 연속성 지원 목적
    • single master 쿠버네티스 클러스터는 master가 다운되면 서비스 불가
  • 여러 마스터 노드를 한대처럼 운영하기 위해 load balancer 필요
    • 여러 마스터 노드의 etcd는 항상 동기화시켜 동일하게 함
    • load balancer는 작업을 균등하게 분배하여 마스터들의 api가 같이 일을 할 수 있도록 지원
    • 워커 노드는 load balancer를 통해 마스터 노드와 통신

 

Highly Available cluster 구성 순서

  1. all system - runtime(Docker) Install
  2. control plane, worker node - kubeadm 설치
    1. 설치 전 환경설정
    2. kubeadm, kubectl, kubelet 설치
  3. LB(Load Balaner)구성
  4. kubeadm을 이용한 HA 클러스터 구성
    1. master1: kubeadm init명령으로 초기화 - LB 등록
    2. master2, master3을 master1에 join
    3. CNI(Container Network Interface) 설치
    4. worker node를 LB 통해 master와 join
    5. 설치된 시스템 확인

 

Reference

따배쿠 23강

 

반응형