GKE on AWS 아키텍처

AWS용 GKE는 AWS 계정에서 Kubernetes 클러스터를 프로비저닝, 운영, 확장할 수 있게 해주는 관리형 서비스입니다.

제어 영역과 노드 풀을 포함하는 Google Cloud 서비스 및 클러스터를 보여주는 AWS용 GKE 아키텍처입니다.

리소스 관리

AWS용 GKE는 AWS API를 사용하여 가상 머신, 관리형 디스크, 자동 확장 그룹, 보안 그룹, 부하 분산기를 포함하여 클러스터에 필요한 리소스를 프로비저닝합니다.

Google Cloud CLI 또는 GKE Multi-cloud API를 사용하여 클러스터를 생성, 설명, 삭제할 수 있습니다.

AWS에 인증

AWS용 GKE를 설정할 때 필요한 권한으로 AWS 계정에 AWS IAM 역할을 만듭니다. 또한 Google Cloud 프로젝트에 서비스 계정을 만들어 AWS IAM ID 제휴에 대한 트러스트 관계를 설정합니다.

자세한 내용은 인증 개요를 참조하세요.

Google Cloud의 리소스

AWS용 GKE는 Google Cloud 프로젝트를 사용하여 Google Cloud에 클러스터 구성 정보를 저장합니다.

Fleet 및 Connect

AWS용 GKE는 생성될 때 각 클러스터를 Fleet에 등록합니다. Connect는 Google Cloud에서 클러스터 및 워크로드 관리 기능에 액세스할 수 있게 해줍니다. 클러스터의 Fleet 멤버십 이름은 클러스터 이름과 동일합니다.

Fleet 내에서 Config Management 및 Anthos Service Mesh와 같은 기능을 사용 설정할 수 있습니다.

클러스터 아키텍처

AWS용 GKE는 AWS Virtual Private Cloud 내의 비공개 서브넷을 사용하여 클러스터를 프로비저닝합니다. 각 클러스터는 다음 구성요소로 구성됩니다.

  • 제어 영역: Kubernetes 제어 영역은 3개 복제본이 포함된 고가용성 아키텍처를 사용합니다. 각 복제본은 kube-apiserver, kube-controller-manager, kube-scheduler, etcd를 포함하여 모든 Kubernetes 구성요소를 실행합니다. 각 etcd 인스턴스는 EBS 볼륨에 데이터를 저장하고 네트워크 인터페이스를 사용하여 다른 etcd 인스턴스와 통신합니다. 표준 부하 분산기는 Kubernetes API 엔드포인트 kube-apiserver에 대한 트래픽을 조정하기 위해 사용됩니다.

  • 노드 풀: 노드 풀은 인스턴스 유형, 디스크 구성, 인스턴스 프로필을 포함하여 동일한 구성을 갖는 Kubernetes 작업자 노드의 그룹입니다. 노드 풀의 모든 노드는 동일한 서브넷에서 실행됩니다. 고가용성을 위해서는 동일한 AWS 리전에서 서로 다른 서브넷 간에 여러 노드 풀을 프로비저닝할 수 있습니다.

다음 다이어그램에서는 네트워크 주소 변환(NAT) 게이트웨이 및 부하 분산기를 포함하여 샘플 VPC, 노드 풀, 제어 영역 구조를 보여줍니다. AWS VPC 만들기빠른 시작의 안내에 따라 이 인프라를 만듭니다.

샘플 VPC

다음 단계