클러스터에 연결 및 인증

이 페이지에서는 Azure용 GKE에 연결하고 인증하는 방법을 설명합니다.

GKE 클러스터에 인증하는 옵션은 여러 가지가 있습니다. 다음 모든 옵션은 Connect 게이트웨이 또는 사용자가 클러스터 제어 영역에 연결할 수 있다고 가정합니다.

Google ID 인증

기본적으로 GKE Multi-cloud API는 클러스터를 만드는 사용자에게 사용자가 Google ID를 사용하여 인증할 수 있는 Kubernetes 역할 기반 액세스 제어(RBAC) 정책을 부여합니다. 클러스터를 만든 사용자는 클러스터에 대한 전체 관리 액세스 권한이 있는 다른 사용자를 관리자로 추가할 수 있습니다.

관리자에게 clusterrole/cluster-admin 역할을 부여하는 RBAC 권한 정책 외에도, GKE Multi-cloud API는 Connect 에이전트가 관리자 대신 Kubernetes API 서버에 요청을 보내는 것을 승인하는 명의 도용 정책을 구성합니다.

다음 방법으로 Google ID를 사용해서 클러스터에 인증을 수행할 수 있습니다.

gcloud CLI의 ID로 kubectl 사용

Google Cloud CLI를 사용하여 gcloud auth login으로 인증된 사용자의 ID를 사용하는 kubeconfig를 만들 수 있습니다. 그런 후 kubectl을 사용하여 클러스터에 액세스할 수 있습니다.

Connect 게이트웨이를 사용할 때 kubectl 액세스의 경우 관리자가 프로젝트 소유자가 아닌 경우 사용자에게 프로젝트에서 다음 역할이 부여되어야 합니다.

  • roles/gkehub.gatewayAdmin: 이 역할을 통해 사용자는 Connect Gateway API에 액세스하여 kubectl을 사용해 클러스터를 관리할 수 있습니다.

    • 사용자가 연결된 클러스터에 대한 읽기 전용 액세스 권한만 필요한 경우 대신 roles/gkehub.gatewayReader를 부여할 수 있습니다.

    • 사용자에게 연결된 클러스터에 대한 읽기/쓰기 액세스 권한이 필요한 경우 대신 roles/gkehub.gatewayEditor를 부여할 수 있습니다.

  • roles/gkehub.viewer: 이 역할을 통해 사용자는 클러스터 kubeconfigs를 검색할 수 있습니다.

이러한 역할에 포함된 권한에 대한 자세한 내용은 IAM 문서의 GKE 허브 역할을 참조하세요.

IAM 권한 및 역할 부여에 대한 자세한 내용은 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.

관리자에게 필요한 역할이 있으면 kubectl의 클러스터 액세스 구성 단계를 수행하세요.

Google Cloud 콘솔 사용

프로젝트 소유자가 아닌 관리자가 콘솔을 사용하여 클러스터와 상호작용하려면 최소한 다음 역할이 있어야 합니다.

  • roles/container.viewer. 이 역할을 통해 사용자는 Google Cloud 콘솔에서 GKE 클러스터 페이지 및 기타 컨테이너 리소스를 볼 수 있습니다. 이 역할에 포함된 권한에 대한 자세한 내용은 IAM 문서의 Kubernetes Engine 역할을 참조하세요.

  • roles/gkehub.viewer. 이 역할을 통해 사용자는 Google Cloud 콘솔에서 Google Cloud 외부에 있는 클러스터를 볼 수 있습니다. 이는 kubectl 액세스에 필요한 역할 중 하나입니다. 이 역할을 이미 사용자에게 부여했으면 다시 부여할 필요가 없습니다. 이 역할에 포함된 권한에 대한 자세한 내용은 IAM 문서의 GKE 허브 역할을 참조하세요.

IAM 권한 및 역할 부여에 대한 자세한 내용은 리소스에 대한 액세스 권한 부여, 변경, 취소를 참조하세요.

콘솔에서 클러스터에 로그인하는 방법에 대한 자세한 내용은 Google Cloud ID를 사용하여 로그인을 참조하세요.

Google 그룹스 사용

Google 그룹의 구성원으로 클러스터에 연결하려면 Google 그룹을 Azure용 GKE에 연결을 참조하세요.

OIDC로 인증

OIDC를 사용한 클러스터 인증에 대한 자세한 내용은 GKE Identity Service로 ID 관리를 참조하세요.

외부 ID로 인증

외부 ID를 사용한 클러스터 인증에 대한 자세한 내용은 외부 ID로 인증을 참조하세요.

클러스터 제어 영역에 연결

모든 Azure용 GKE는 비공개 서브넷에 생성됩니다. 노드 및 부하 분산기 엔드포인트와 같은 모든 기본 클러스터 인프라는 비공개 RFC 1918 IP 주소만으로 프로비저닝됩니다.

클러스터를 직접 관리하려면 클러스터의 제어 영역 부하 분산기에 연결할 수 있어야 합니다. 클러스터가 제어 영역에 직접 연결할 수 없지만 아웃바운드 연결을 설정할 수 있으면 클러스터에 대해 Google에서 호스팅하는 역방향 프록시인 Connect 게이트웨이를 통해 제어 영역에 연결할 수 있습니다. 자세한 내용은 Connect 게이트웨이로 등록된 클러스터에 연결을 참조하세요.

Azure의 ExpressRoute 서비스를 통해서도 연결할 수 있습니다.