Men-deploy ke Compute Engine

Compute Engine dapat menarik container langsung dari repositori Artifact Registry sehingga Anda dapat menjalankan workload yang di-container di instance virtual machine (VM). Anda dapat mengonfigurasi peran akun layanan dan cakupan akses untuk mengontrol cara VM mengakses atau mengupload artefak di seluruh project.

Izin yang diperlukan

Akun layanan Compute Engine memerlukan akses ke Artifact Registry untuk menarik image container.

Bergantung pada konfigurasi kebijakan organisasi Anda, akun layanan default mungkin secara otomatis diberi peran Editor di project Anda. Sebaiknya Anda menonaktifkan pemberian peran otomatis dengan menerapkan batasan kebijakan organisasi iam.automaticIamGrantsForDefaultServiceAccounts. Jika Anda membuat organisasi setelah 3 Mei 2024, batasan ini diterapkan secara default.

Jika Anda menonaktifkan pemberian peran otomatis, Anda harus menentukan peran mana yang akan diberikan ke akun layanan default, lalu memberikan peran tersebut sendiri.

Jika akun layanan default sudah memiliki peran Editor, sebaiknya ganti peran Editor dengan peran yang kurang permisif.Untuk mengubah peran akun layanan dengan aman, gunakan Policy Simulator untuk melihat dampak perubahan, lalu berikan dan cabut peran yang sesuai.

Beberapa contoh cakupan akses yang diperlukan dan peran yang diperlukan untuk berbagai skenario adalah sebagai berikut:

  • Untuk menarik image container dari repositori Artifact Registry, Anda harus memberikan peran Pembaca Artifact Registry (roles/artifactregistry.reader) ke akun layanan Compute Engine. Selain itu, pastikan cakupan akses read-only ditetapkan untuk bucket penyimpanan Cloud Storage.
  • Anda ingin instance VM mengupload ke repositori. Dalam hal ini, Anda harus mengonfigurasi cakupan akses dengan akses tulis ke penyimpanan: read-write, cloud-platform, atau full-control.
  • Instance VM berada dalam project yang berbeda dengan repositori yang ingin Anda akses. Di project dengan repositori, berikan izin yang diperlukan ke akun layanan instance.
  • Repositori berada dalam project yang sama, tetapi Anda tidak ingin akun layanan default memiliki tingkat akses yang sama di semua repositori. Dalam hal ini, Anda harus memberikan izin yang sesuai di tingkat repositori dan mencabut izin Artifact Registry di tingkat project.
  • VM dikaitkan dengan akun layanan kustom. Pastikan akun layanan memiliki izin dan cakupan akses yang diperlukan.
  • Anda menggunakan peran khusus untuk memberikan izin dan peran khusus tersebut tidak mencakup izin Artifact Registry yang diperlukan. Tambahkan izin yang diperlukan ke peran.