GKE 연결 클러스터에 배포

이 문서에서는 GKE 연결 클러스터에 애플리케이션을 배포하는 방법을 설명합니다. GKE 연결 클러스터 지원에 따라 AWS, Azure, 온프레미스 클러스터에 배포가 가능합니다.

Cloud Deploy를 사용하면 Connect 게이트웨이를 사용하여 액세스할 수 있는 GKE 연결된 클러스터에 컨테이너 기반 워크로드를 배포할 수 있습니다.

시작하기 전에

  • 배포 대상이 되는 사용자 클러스터가 있어야 합니다.

    클러스터는 GKE 연결 클러스터로 만들거나 기존 Kubernetes 클러스터를 등록할 수 있습니다. GKE 연결 클러스터로 만든 클러스터에는 멤버십이 자동으로 수신됩니다. Fleet에 등록하는 기존 클러스터의 경우 등록할 때 멤버십 이름을 지정합니다. 타겟을 구성할 때 이 멤버십 이름이 필요합니다.

    Google Cloud CLI 버전 407.0.0 이상을 사용할 경우 Google Kubernetes Engine 클러스터를 등록할 때 gcloud container fleet memberships register 명령어--install-connect-agent 플래그를 포함해야 합니다. Connect 에이전트는 더 이상 기본적으로 설치되지 않습니다.

  • 하나 이상의 등록된 클러스터를 Google Cloud에 연결하도록 Connect 게이트웨이를 설정합니다.

    Cloud Deploy 실행 서비스 계정으로 사용할 동일한 서비스 계정을 사용하여 게이트웨이를 설정해야 합니다. 그렇지 않으면 클러스터에 배포하는 데 필요한 권한이 실행 서비스 계정에 포함되지 않습니다.

GKE 연결 클러스터에 배포하도록 Cloud Deploy 설정

  1. 대상 구성을 만듭니다.

    대상은 배포 파이프라인 YAML에서 구성하거나 별도의 파일에 포함할 수 있습니다. 또한 동일한 파일에 대상을 두 개 이상 구성할 수 있지만 서로 다른 kind: Target 스탠자에 있어야 합니다.

  2. 게이트웨이를 통해 연결된 클러스터와 상호작용할 수 있도록 실행 서비스 계정필요한 역할을 부여합니다.

    이러한 권한 부여는 기본 Cloud Deploy 서비스 계정 또는 커스텀 서비스 계정 중 무엇을 사용하든 필요한 단계입니다.

  3. 기본 Kubernetes 클러스터의 실행 서비스 계정RBAC를 설정합니다.

  4. 선택사항: 기본 클러스터가 GKE 클러스터가 아닌 경우 클러스터가 Artifact Registry에서 가져올 수 있도록 imagePullSecret을 구성해야 할 수 있습니다.

  5. 대상 정의에서 클러스터를 가리키도록 anthosCluster 스탠자를 만듭니다.

    GKE 연결 클러스터를 지정하는 문법은 다음과 같습니다.

    anthosCluster:
     membership: projects/[project_name]/locations/global/memberships/[membership_name]
    

    이 GKE 연결 클러스터 리소스 식별자는 다음 요소를 사용합니다.

    • [project_name] 은 이 클러스터를 실행하는 Google Cloud 프로젝트의 이름입니다.

      GKE 연결된 클러스터를 포함한 배포 대상 클러스터가 배포 파이프라인과 동일한 프로젝트에 있을 필요는 없습니다.

    • [membership_name] 은 Fleet에 클러스터를 등록할 때 선택한 이름입니다.

    location의 경우 모든 클러스터 멤버십이 global이므로 이 리소스 식별자에서 /locations/global/을 변경할 필요가 없습니다.

다음은 대상 구성의 예시입니다.

      apiVersion: deploy.cloud.google.com/v1
      kind: Target
      metadata:
       name: qsdev
      description: development cluster
      anthosCluster:
       membership: projects/my-app/locations/global/memberships/my-app-dev-cluster

다음 단계