AI Platform Pipelines bergantung pada peran Identity and Access Management (IAM) untuk memberikan otorisasi kepada pengguna, grup, dan layanan saat pipeline machine learning (ML) mengakses resource Google Cloud.
Dokumen ini menjelaskan peran-peran yang diperlukan untuk:
- Menyiapkan Pipeline AI Platform.
- Jalankan Pipeline AI Platform dengan akun layanan yang dikelola pengguna.
- Mengakses Pipeline AI Platform sebagai pengguna.
Pelajari konsep IAM dan cara kerja IAM lebih lanjut.
Peran yang diperlukan untuk menyiapkan AI Platform Pipelines
Untuk men-deploy Pipeline AI Platform, Anda harus diberi peran Viewer (roles/viewer
) dan Admin Kubernetes Engine (roles/container.admin
) pada project.
Peran Viewer memberikan akses baca ke semua resource dalam suatu project. Peran Kubernetes Engine Admin memberikan akses penuh ke cluster Kubernetes dan objek Kubernetes API.
Untuk mengikuti prinsip hak istimewa terendah, siapkan cluster Pipeline AI Platform
untuk menggunakan akses terperinci. Untuk menyiapkan cluster dengan akses terperinci, Anda juga harus diberi peran Admin Akun Layanan (roles/iam.serviceAccountAdmin
) pada project tersebut. Peran Admin Akun Layanan memberikan akses untuk membuat dan mengonfigurasi akun layanan IAM.
Pelajari lebih lanjut cara memberikan akses ke peran IAM.
Peran | Izin |
---|---|
Viewer (roles/viewer ) |
Izin untuk tindakan hanya-baca yang tidak memengaruhi status, seperti melihat (tetapi tidak memodifikasi) resource atau data yang sudah ada dalam sebuah project. |
Kubernetes Engine Admin( Menyediakan akses ke pengelolaan cluster secara penuh dan objek Kubernetes API-nya.
Untuk menetapkan akun layanan pada node, Anda juga harus memiliki peran Service Account User ( Resource tingkat terendah yang dapat Anda beri peran ini:
|
|
Service Account Admin( Membuat dan mengelola akun layanan. Resource tingkat terendah yang dapat Anda beri peran ini:
|
|
Peran yang diperlukan untuk menjalankan AI Platform Pipelines dengan akun layanan yang dikelola pengguna
Pod di cluster Google Kubernetes Engine (GKE)
melakukan autentikasi ke Google Cloud menggunakan akun
layanan cluster GKE. Untuk mempermudah penyiapan dan penggunaan Pipeline AI Platform, cluster GKE yang dibuat oleh Pipeline AI Platform menggunakan akun layanan Compute Engine default dengan cakupan akses https://www.googleapis.com/auth/cloud-platform
. Cakupan
akses ini menyediakan akses penuh ke resource dan API Google Cloud yang telah Anda
aktifkan dalam project Anda, yang dapat menyebabkan beban kerja di cluster Anda
memiliki akses berlebihan ke Google Cloud.
Untuk menetapkan izin terperinci pada beban kerja yang berjalan di cluster AI Platform Pipelines, buat akun layanan untuk cluster Anda dan beri akun layanan ini akses ke peran berikut pada project:
- Monitoring Viewer: Peran Monitoring Viewer (
roles/monitoring.viewer
) memberikan akses baca ke data dan konfigurasi pemantauan. - Monitoring Metric Writer: Peran Monitoring Metric Writer (
roles/monitoring.metricWriter
) menyediakan akses tulis sehingga cluster Anda dapat menulis metrik. - Logs Writer: Peran Logs Writer (
roles/logging.logWriter
) memungkinkan Anda untuk menulis entri log cluster. - Storage Object Viewer: Jika Anda berencana membuat image container kustom untuk pipeline Anda yang disimpan di Container Registry, berikan akses cluster Pipeline AI Platform ke peran Storage Object Viewer (
roles/storage.objectViewer
) pada project.
Anda juga harus memberi akun layanan Anda akses ke resource atau API Google Cloud apa pun yang digunakan pipeline ML Anda.
- Konfigurasikan cluster GKE Anda untuk menggunakan akun layanan yang dikelola pengguna.
- Pelajari peran IAM dan cara mengelola akun layanan lebih lanjut.
Peran | Judul | Deskripsi | Izin |
---|---|---|---|
Monitoring Viewer( Menyediakan akses hanya baca untuk mendapatkan dan mencantumkan informasi tentang semua data dan konfigurasi pemantauan. Resource tingkat terendah yang dapat Anda beri peran ini:
|
|
||
Monitoring Metric Writer( Menyediakan akses hanya tulis ke metrik. API ini menyediakan izin yang diperlukan oleh agen Cloud Monitoring dan sistem lain yang mengirim metrik. Resource tingkat terendah yang dapat Anda beri peran ini:
|
|
||
Logs Writer( Memberikan izin untuk menulis entri log. Resource tingkat terendah yang dapat Anda beri peran ini:
|
|
||
Storage Object Viewer( Memberikan akses untuk melihat objek dan metadatanya, tidak termasuk ACL. Juga dapat mencantumkan objek dalam bucket. Resource tingkat terendah yang dapat Anda beri peran ini:
|
|
Peran yang diperlukan untuk mengakses AI Platform Pipelines sebagai pengguna
Untuk mengakses cluster Pipeline AI Platform, setiap pengguna harus diberi peran Kubernetes Engine Cluster Viewer (roles/container.clusterViewer
) dan Service Account User Role untuk akun layanan cluster Google Kubernetes Engine.
Peran | Judul | Deskripsi | Izin |
---|---|---|---|
Kubernetes Engine Cluster Viewer( Menyediakan akses untuk mendapatkan dan membuat daftar cluster GKE. |
|
Lanjutkan ke bagian berikutnya untuk mempelajari cara memberi pengguna akses ke peran Kubernetes Engine Cluster Viewer dan Service Account User Role.
Memberi pengguna akses ke AI Platform Pipelines
Gunakan petunjuk berikut untuk memberi akun pengguna akses ke cluster AI Platform Pipelines Anda.
Buka Pipeline AI Platform di Konsol Google Cloud.
Temukan cluster AI Platform Pipelines Anda. Catat Cluster dan Zona untuk digunakan di langkah berikutnya.
Buka sesi Cloud Shell.
Cloud Shell akan terbuka dalam frame di bagian bawah Konsol Google Cloud. Gunakan Cloud Shell untuk menyelesaikan proses ini.
Jalankan perintah berikut guna menetapkan project Google Cloud default untuk sesi Cloud Shell ini.
gcloud config set project PROJECT_ID
Ganti PROJECT_ID dengan ID project Google Cloud Anda.
Jalankan perintah berikut untuk menemukan akun layanan yang digunakan cluster GKE Anda.
gcloud container clusters describe CLUSTER_NAME --zone ZONE \ --format="flattened(nodePools[].config.serviceAccount)"
Ganti kode berikut:
- CLUSTER_NAME: Nama cluster GKE Anda.
- ZONE: Zona tempat cluster Anda dibuat.
Responsnya mungkin menunjukkan bahwa cluster Anda menggunakan akun layanan bernama
default
. Nilai ini merujuk ke akun layanan default untuk Compute Engine. Jalankan perintah berikut untuk menemukan nama lengkap akun layanan ini.gcloud iam service-accounts list \ --filter "compute@developer.gserviceaccount.com"
Pelajari akun layanan default Compute Engine lebih lanjut.
Berikan peran Service Account User ke akun pengguna Anda di akun layanan cluster GKE Anda.
gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_NAME \ --member=user:USERNAME \ --role=roles/iam.serviceAccountUser
Ganti kode berikut:
- SERVICE_ACCOUNT_NAME: Nama akun layanan cluster GKE Anda, yang ditemukan pada langkah sebelumnya. Nama akun layanan memiliki format seperti *@*.gserviceaccount.com.
- USERNAME: Nama pengguna Anda di Google Cloud.
Beri akun pengguna Anda akses ke peran GKE Cluster Viewer pada project.
gcloud projects add-iam-policy-binding PROJECT_ID \ --member user:USERNAME --role roles/container.clusterViewer
Ganti kode berikut:
- PROJECT_ID: ID project Google Cloud Anda.
- USERNAME: Nama pengguna Anda di Google Cloud.