Dokumen ini menjelaskan cara terhubung ke GKE di AWS sebagai anggota grup Google.
Menggunakan grup Google untuk memberikan akses cluster lebih efisien daripada membuat otorisasi terpisah untuk masing-masing pengguna. Misalnya, Anda ingin menambahkan 50 pengguna ke grup Administrator cluster, 75 pengguna ke grup Editor, dan 100 pengguna ke grup Reader. Agar semua pengguna ini dapat terhubung ke cluster, Anda harus membuat aturan RBAC dalam file manifes Kubernetes untuk 225 pengguna. Namun, mengaktifkan akses ke cluster Anda dengan grup Google akan menghemat waktu karena Anda hanya perlu membuat aturan RBAC untuk tiga grup Google.
Sebelum memulai
Untuk terhubung ke cluster Anda sebagai anggota grup Google, Anda harus memenuhi prasyarat berikut:
Pastikan Anda memiliki Google Cloud CLI versi terbaru. Untuk mengetahui informasi tentang cara mengupdate gcloud CLI, lihat
gcloud components update
.Gunakan GKE di AWS versi 1.25 atau yang lebih baru, yang diperlukan untuk akses
kubectl
menggunakan gateway koneksi.
Hubungkan ke cluster Anda dengan grup Google
Untuk mengizinkan grup Google agar terhubung ke GKE di AWS, ikuti langkah-langkah berikut:
Aktifkan
connectgateway
API dancloudresourcemanager
API dengan perintah berikut:gcloud services enable --project=PROJECT_ID \ connectgateway.googleapis.com \ cloudresourcemanager.googleapis.com
Ganti
PROJECT_ID
dengan ID project AWS Anda.Buat grup bernama
gke-security-groups
sebagai grup di domain project Anda jika tidak ada.Buat satu atau beberapa subgrup dalam grup
gke-security-groups
untuk autentikasi cluster.Tambahkan pengguna ke subgrup yang baru dibuat.
Untuk akses
kubectl
yang menggunakan gateway penghubung, Anda perlu memberikan peran IAM ke grup Google:Pilih peran yang sesuai untuk grup. Peran ini menentukan cara grup berinteraksi dengan gateway koneksi. Peran tersebut dapat berupa salah satu dari hal berikut:
roles/gkehub.gatewayAdmin
,roles/gkehub.gatewayEditor
,roles/gkehub.gatewayReader
. (Perhatikan bahwa Anda tidak memberikan izin melalui cluster di sini. Langkah tersebut akan dilakukan nanti. Di sini, Anda hanya menentukan bagaimana pengguna grup dapat memanipulasi gateway yang terhubung.)Jalankan perintah berikut untuk memberikan peran ke grup:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=group:GROUP_NAME@DOMAIN \ --role=GATEWAY_ROLE
Ganti kode berikut:
PROJECT_ID
: ID project Google AndaGROUP_NAME
: nama grup yang akan diberi aksesDOMAIN
: domain Google Workspace AndaGATEWAY_ROLE
: peran yang dipilih. Misalnyaroles/gkehub.gatewayAdmin
,roles/gkehub.gatewayEditor
, atauroles/gkehub.gatewayReader
.
Dalam manifes Kubernetes, tentukan izin yang dimiliki setiap grup Google di cluster. Misalnya, manifes berikut memberikan peran administrator cluster kepada Google Grup
cluster-admin-team
:apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: gateway-cluster-admin-group subjects: - kind: Group name: cluster-admin-team@example.com roleRef: kind: ClusterRole name: cluster-admin apiGroup: rbac.authorization.k8s.io
Simpan manifes ke file dan terapkan ke cluster dengan menjalankan perintah berikut:
kubectl apply -kubeconfig=KUBECONFIG_PATH -f FILENAME
Ganti kode berikut:
KUBECONFIG_PATH
: jalur ke filekubeconfig
Anda.FILENAME
: nama file manifes yang Anda buat.
Setelah Anda melakukan langkah-langkah ini, pengguna yang termasuk dalam grup Google tertentu dapat terhubung ke cluster. Pada contoh yang diberikan, pengguna yang termasuk dalam grup Google cluster-admin-team
dapat terhubung ke cluster sebagai administrator.