Dokumen ini menjelaskan tiga metode untuk terhubung ke cluster AKS terlampir:
- Metode #1 terhubung ke cluster Anda sebagai pengguna Google.
- Metode #2 terhubung ke cluster Anda sebagai anggota grup Google.
- Metode #3 terhubung ke cluster Anda sebagai pengguna atau grup non-Google.
Tiga metode untuk terhubung ke cluster terdaftar ini diaktifkan oleh layanan Google yang disebut gateway koneksi. Untuk mengetahui detail tentang gateway koneksi, lihat Menghubungkan ke cluster terdaftar dengan gateway Koneksi.
Halaman ini ditujukan untuk administrator dan Operator IT yang ingin menyiapkan, memantau, dan mengelola infrastruktur cloud. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam Google Cloud konten, lihat Peran dan tugas pengguna GKE umum.
Sebelum memulai
Sebelum menjalankan salah satu metode, pastikan Anda telah melampirkan cluster. Untuk mengetahui detailnya, lihat Melampirkan cluster AKS.
Sebelum melanjutkan ke metode #2 atau metode #3, Anda harus memenuhi prasyarat tambahan. Untuk mengetahui detailnya, lihat bagian berikut.
Sebelum memulai metode #2
Untuk menggunakan metode #2 dalam menghubungkan ke cluster terlampir, pastikan Anda memiliki prasyarat berikut:
- Google Cloud CLI versi terbaru. Untuk mengetahui informasi tentang cara mengupdate
gcloud CLI, lihat
gcloud components update. - Cluster terlampir versi 1.26.0-gke.8, 1.27.0-gke.5, 1.28.0-gke.2 atau yang lebih baru.
Sebelum memulai metode #3
Untuk menggunakan metode #3 dalam menghubungkan ke cluster terlampir, pastikan Anda memiliki prasyarat berikut:
Pastikan Anda memiliki Google Cloud CLI versi terbaru. Untuk mengetahui informasi tentang cara mengupdate gcloud CLI, lihat
gcloud components update.Pastikan Anda menggunakan cluster terlampir versi 1.27.0-gke.5, 1.28.0-gke.2 atau yang lebih baru.
Konfigurasi workforce identity federation (agar pengguna atau grup eksternal dapat menggunakan GKE attached clusters API):
- Untuk pengguna Azure, lihat Mengonfigurasi workforce identity federation dengan Azure AD.
- Untuk pengguna Okta, lihat Mengonfigurasi workforce identity federation dengan Okta.
- Untuk pengguna dari platform lain, lihat Mengonfigurasi workforce identity federation.
Opsional: Tetapkan peran Identity and Access Management (IAM) yang sesuai kepada pengguna atau grup eksternal Anda. Langkah ini hanya diperlukan jika Anda ingin memberikan kemampuan kepada pengguna atau grup untuk membuat atau mengupdate cluster; langkah ini tidak diperlukan hanya untuk mengakses cluster.
Perhatikan bahwa peran adalah kumpulan izin. Saat Anda menetapkan peran ke entity (pengguna, grup, atau akun layanan), Anda memberikan semua izin yang terdapat dalam peran tersebut kepada entity tersebut.
Pengguna
Untuk setiap pengguna, Anda harus menetapkan peran
gkemulticloud.admin:gcloud projects add-iam-policy-binding PROJECT_ID \ --role="roles/gkemulticloud.admin" \ --member="principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject SUBJECT_VALUE"Ganti kode berikut:
PROJECT_ID: ID project Anda. Google CloudWORKFORCE_POOL_ID: ID yang secara unik mengidentifikasi workforce identity pool Anda di Google Cloud. Saat memformat ID, pastikan Anda mengikuti panduan yang direkomendasikan yang disediakan dalam dokumentasi IAM di bagian Parameter kueri.SUBJECT_VALUE: ID yang secara unik mengidentifikasi pengguna eksternal. Misalnya, ID dapat berupa alamat email sepertialex@cymbalgroup.com.
Grup
Untuk grup, Anda harus menetapkan peran
gkemulticloud.admin:gcloud projects add-iam-policy-binding PROJECT_ID \ --role="roles/gkemulticloud.admin" \ --member="principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"Ganti kode berikut:
PROJECT_ID: ID project Anda. Google CloudWORKFORCE_POOL_ID: ID yang secara unik mengidentifikasi workforce identity pool Anda di Google Cloud. Saat memformat ID, pastikan Anda mengikuti panduan yang direkomendasikan yang disediakan dalam dokumentasi IAM di bagian Parameter kueri.GROUP_ID: ID yang secara unik mengidentifikasi grup eksternal.
Untuk mengetahui informasi selengkapnya tentang peran dan izin API yang diperlukan untuk cluster terlampir GKE, lihat Peran dan izin API.
Metode #1: terhubung ke cluster terlampir sebagai pengguna Google
Untuk terhubung ke cluster terlampir sebagai pengguna Google, ikuti langkah-langkah berikut:
Aktifkan
connectgatewaydancloudresourcemanagerAPI dengan perintah berikut:gcloud services enable --project=PROJECT_ID \ connectgateway.googleapis.com \ cloudresourcemanager.googleapis.comGanti
PROJECT_IDdengan ID project Anda. Google CloudSiapkan dan terapkan aturan RBAC secara otomatis atau manual:
Metode otomatis: Jika, saat Anda melampirkan cluster, Anda menentukan pengguna Google di kolom
--admin-usersperintahgcloud container attached clusters register, pengguna ini akan otomatis diberi hak istimewa administrator di cluster. Oleh karena itu, Anda dapat melewati langkah ini.Metode manual: Siapkan aturan RBAC secara manual untuk setiap pengguna Google dengan membuat manifes YAML Kubernetes. Untuk mengetahui detailnya, lihat Menggunakan Otorisasi RBAC.
Dapatkan file konfigurasi
kubeconfigKubernetes dengan perintah berikut:gcloud container fleet memberships get-credentials CLUSTER_NAMEGanti
CLUSTER_NAMEdengan nama cluster yang kredensial koneksinya Anda inginkan.
Setelah melakukan langkah-langkah ini, Anda dapat terhubung ke cluster terlampir sebagai pengguna Google.
Metode #2: terhubung ke cluster terlampir dengan grup Google
Metode ini memungkinkan Anda terhubung ke cluster terlampir sebagai anggota grup Google. Dengan kata lain, Anda memberikan akses grup Google ke cluster dan semua pengguna yang tergabung dalam grup Google tersebut memiliki akses ke cluster.
Menggunakan Google Grup untuk memberikan akses cluster lebih efisien daripada membuat otorisasi terpisah untuk setiap pengguna. Misalnya, Anda ingin menambahkan 50 pengguna ke grup Administrator cluster, 75 pengguna ke grup Editor, dan 100 pengguna ke grup Pembaca. Metode #1, yang dijelaskan dalam dokumen ini, mengharuskan Anda membuat aturan RBAC dalam file manifes Kubernetes untuk 225 pengguna. Namun, metode #2 menghemat waktu Anda karena Anda hanya perlu membuat aturan RBAC untuk tiga grup Google.
Untuk memberikan otorisasi kepada grup Google agar dapat terhubung ke cluster terlampir, ikuti langkah-langkah berikut:
Aktifkan
connectgatewaydancloudresourcemanagerAPI dengan perintah berikut:gcloud services enable --project=PROJECT_ID \ connectgateway.googleapis.com \ cloudresourcemanager.googleapis.comGanti
PROJECT_IDdengan ID project Anda.Google CloudBuat grup bernama
gke-security-groupssebagai grup di domain project Anda jika belum ada.Buat satu atau beberapa sub-grup dalam grup
gke-security-groupsuntuk autentikasi cluster.Tambahkan pengguna ke sub-grup yang baru dibuat.
Berikan peran IAM ke Google Grup:
Pilih peran yang sesuai untuk grup. Peran ini menentukan cara grup berinteraksi dengan gateway koneksi. Peran tersebut dapat berupa salah satu dari berikut ini:
roles/gkehub.gatewayAdmin,roles/gkehub.gatewayEditor,roles/gkehub.gatewayReader. (Perhatikan bahwa Anda tidak memberikan izin atas cluster terlampir di sini - langkah tersebut akan dilakukan nanti. Di sini, Anda hanya menentukan cara pengguna grup dapat memanipulasi gateway koneksi).Jalankan perintah berikut untuk memberikan peran ke grup:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=group:GROUP_NAME@DOMAIN \ --role=GATEWAY_ROLEGanti 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 jenis izin yang dimiliki setiap grup Google di cluster. Misalnya, manifes berikut memberikan peran administrator cluster kepada Grup Google
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.ioSimpan manifes ke file dan terapkan ke cluster dengan menjalankan perintah berikut:
kubectl apply -kubeconfig=KUBECONFIG_PATH -f FILENAMEGanti kode berikut:
KUBECONFIG_PATH: jalur ke filekubeconfigAnda.FILENAME: nama file manifes yang Anda buat.
Setelah melakukan langkah-langkah ini, pengguna yang tergabung dalam grup Google tertentu dapat terhubung ke cluster terlampir. Dalam contoh yang diberikan, pengguna yang tergabung dalam Grup Google cluster-admin-team dapat terhubung ke cluster sebagai administrator.
Metode #3: memberikan akses ke identitas eksternal saat melampirkan atau mengupdate cluster
Metode #3 memberikan akses ke identitas eksternal saat Anda melampirkan atau mengupdate cluster.
Untuk melampirkan cluster AKS, ikuti langkah-langkah di Melampirkan cluster AKS. Untuk mengupdate cluster AKS, ikuti langkah-langkah di Mengupdate cluster AKS.
Saat menjalankan perintah gcloud CLI untuk mendaftarkan atau mengupdate cluster, tentukan parameter admin-users dan/atau admin-groups sebagai berikut:
gcloud container attached clusters [register|update] CLUSTER_NAME \
--admin-users=principal://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/subject SUBJECT_VALUE \
--admin-groups=principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID
Ganti kode berikut:
CLUSTER_NAME: nama cluster Anda.WORKFORCE_POOL_ID: ID yang secara unik mengidentifikasi workforce identity pool Anda di Google Cloud. Saat memformat ID, pastikan Anda mengikuti panduan yang direkomendasikan yang disediakan dalam dokumentasi IAM di bagian Parameter kueri.SUBJECT_VALUE: ID yang secara unik mengidentifikasi pengguna eksternal. Misalnya, ID dapat berupa alamat email sepertialex@cymbalgroup.com.GROUP_ID: ID yang secara unik mengidentifikasi grup eksternal.
Langkah berikutnya
Untuk mengelola cluster dari konsol Google Cloud dengan Cloud Identity Anda, lihat Login menggunakan identitas Google Cloud Anda.