Anthos 비공개 모드 아키텍처

이 페이지에서는 Anthos 비공개 모드의 개념 증명 배포에 사용되는 아키텍처를 간략하게 설명합니다. 이 개념 증명의 클러스터 기술은 Anthos on bare metal을 기반으로 합니다.

Anthos 비공개 모드 용어

  • 관리자 워크스테이션: 관리자 클러스터를 만들고 다른 하위 수준의 관리 작업을 수행하기 위해 사용되는 Linux 머신입니다.
  • 관리자 클러스터: 사용자 클러스터를 관리하는 데 사용되는 Anthos 클러스터입니다. 이 클러스터에서는 관리 워크로드만 실행됩니다. 관리자 클러스터는 앱을 배포하는 데 사용되지 않습니다. 일반적으로 사용자 클러스터보다 작습니다. 관리자 클러스터는 로컬 제어 영역과 웹 인터페이스가 설치되는 곳입니다.
  • 사용자 클러스터: 앱이 배포되는 Anthos 클러스터입니다. 단일 관리자 클러스터는 여러 사용자 클러스터를 관리할 수 있습니다.
  • 제어 영역 노드: 이 노드는 특정 클러스터의 핵심 구성요소를 실행합니다(예: Kubernetes API 서버 또는 etcd). 각 클러스터에는 제어 영역 노드 1개(가용성이 낮은 설정) 또는 제어 영역 노드 3개(고가용성 설정)가 있습니다.
  • 워커 노드: 특정 클러스터에 워크로드를 배포하는 노드입니다. 클러스터에 많은 워커 노드를 포함할 수 있습니다.
  • 부하 분산기 노드: Anthos용 부하 분산기가 실행되는 노드입니다. Anthos on mare metal(및 Anthos 비공개 모드)의 경우 이 부하 분산기가 MetalLB입니다. 이 개념 증명에서는 제어 영역 노드에 부하 분산기를 배포합니다. 이러한 노드는 제어 영역 노드와 부하 분산기 노드 둘 다 입니다. 프로덕션 시나리오에서 부하 분산기를 워커 노드로 이동하여 제어 영역 노드에서 실행되는 Kubernetes API 서버를 모든 인터페이스로부터 보호할 수 있습니다. 또한 워커 노드를 부하 분산 전용으로 사용할 수도 있습니다. Google은 10개를 초과하는 부하 분산기 노드 실행을 권장하지 않습니다.

아키텍처

사용 가능한 하드웨어와 테스트하려는 Anthos 비공개 모드의 기능에 따라 다음 옵션 중 하나를 사용하는 것이 좋습니다.

최소 설치 고가용성 설치 멀티 클러스터 설치
  • 관리자 워크스테이션 1개
  • 관리자 클러스터의 노드 2개: 제어 영역 노드 1개 및 워커 노드 1개
  • 사용자 클러스터의 노드 2개: 제어 영역 노드 1개 및 워커 노드 1개
  • 합계: 노드 5개
  • 최소 설치 다이어그램
  • 관리자 워크스테이션 1개
  • 관리자 클러스터의 노드 6개: 제어 영역 노드 3개, 워커 노드 3개
  • 사용자 클러스터의 노드 6개: 제어 영역 노드 3개 및 워커 노드 3개
  • 합계: 노드 13개
  • 고가용성 설치 다이어그램
  • 관리자 워크스테이션 1개
  • 관리자 클러스터의 노드 2개: 제어 영역 노드 1개 및 워커 노드 1개
  • 각각 노드 2개가 있는 사용자 클러스터 3개: 제어 영역 노드 1개, 워커 노드 1개
  • 합계: 노드 9개
  • 멀티 클러스터 설치 다이어그램
  • 장점:
    • 하드웨어 설치 공간 및 비용 절감
    • 고가용성 및 멀티 클러스터 기능을 제외하고 모든 Anthos 비공개 모드 기능을 테스트할 수 있습니다.
    장점:
    • 대규모 워크로드 실행
    • 고가용성을 포함한 모든 Anthos 비공개 모드 기능을 테스트할 수 있지만 멀티 클러스터 기능은 테스트할 수 없습니다.
    장점:
    • 멀티 클러스터 기능을 포함 된 Anthos 비공개 모드의 모든 기능을 테스트할 수 있지만 단일 클러스터의 고가용성을 테스트할 수 없습니다.

    모든 옵션에 대해 다음을 수행합니다.

    • 부하 분산기는 각 클러스터의 제어 영역 노드에서 실행됩니다.
    • 요구사항을 충족해야 합니다.

    이러한 옵션을 혼합할 수 있습니다. 예를 들어 소규모 2노드 관리자 클러스터(제어 영역 노드 1개와 워커 노드 1개)와 대규모 6노드 사용자 클러스터를 사용할 수 있습니다. 별도의 Anthos 비공개 모드 환경 2개(예: 개발 및 스테이징)를 만들 수도 있습니다. 하나는 최소한의 설치, 다른 하나는 가용성이 높은 설치입니다. 2개의 노드가 각각 최적인 것으로 간주되는 분할 브레인 시나리오를 방지하기 위해 지정된 클러스터에 항상 홀수 (일반적으로 1 또는 3)의 제어 영역 노드가 있어야 합니다.

    기본적으로 노드는 로컬 하드 드라이브 또는 SSD를 사용하여 PersistentVolumes를 프로비저닝합니다. 로컬 드라이브는 가용성이 높지 않기 때문에 노드 간에 이동할 수 없습니다. 클러스터가 생성되면 다음을 수행하는 것이 좋습니다.

    1. 스토리지 제공업체와 호환되는 컨테이너 스토리지 인터페이스(CSI) 드라이버를 설치합니다(Anthos Ready Storage 파트너 목록 참조).
    2. 이 CSI 드라이버에서 지원하는 StorageClass를 만듭니다.
    3. 이 StorageClass를 기본값으로 지정합니다.

    다이어그램

    이러한 다이어그램은 각 옵션에 대한 대략적인 아키텍처를 보여줍니다. 다이어그램에 표시된 라우터와 스위치는 예시일 뿐입니다. 요구사항을 준수하는 한 원하는 네트워크 아키텍처를 사용할 수 있습니다.

    최소 설치

    그림

    고가용성 설치

    가용성이 높은 설치를 수행하려면 네트워크의 가용성이 높아야 합니다. 이 설치 구현은 기존 네트워크 환경에 따라 다릅니다.

    그림

    멀티 클러스터 설치

    그림

    다음 단계