Membuat peran dan akun layanan Google Cloud secara manual

Topik ini menjelaskan cara menyiapkan izin untuk migrasi manual Google Cloud Migrate for Compute Engine (sebelumnya Velostrata). Panduan di sini bertujuan untuk membantu pengguna yang ingin memahami atau mengontrol izin yang diberikan untuk proses migrasi dan workload yang dimigrasikan.

Halaman ini menjelaskan proses pembuatan peran untuk bermigrasi ke:

  • Satu project Google Cloud
  • Beberapa project Google Cloud

Prasyarat

Dua akun layanan diperlukan untuk migrasi Migrate for Compute Engine. Untuk mengetahui informasi selengkapnya tentang setiap akun layanan ini dan peran yang terkait, lihat Mengonfigurasi Google Cloud. Untuk mengetahui informasi lebih lanjut tentang perintah gcloud beserta parameternya, baca dokumentasi gcloud CLI.

  1. Anda harus menginstal Google Cloud SDK.
  2. Buat project Google Cloud untuk menghosting infrastruktur Migrate for Compute Engine di Google Cloud. Kami akan menyebut proyek ini sebagai proyek infrastruktur. Gunakan project ini di mana pun Anda melihat project-ID.
  3. Aktifkan API berikut di project infrastruktur Anda.
    gcloud services enable iam.googleapis.com --project project-ID
    gcloud services enable cloudresourcemanager.googleapis.com --project project-ID
    gcloud services enable compute.googleapis.com --project project-ID
    gcloud services enable storage-component.googleapis.com --project project-ID
    gcloud services enable logging.googleapis.com --project project-ID
    gcloud services enable monitoring.googleapis.com --project project-ID
    

Untuk melanjutkan, pilih apakah Anda bermigrasi ke satu atau beberapa project.

Project Tunggal

Bagian ini menjelaskan cara membuat akun layanan yang diperlukan untuk satu project mandiri, dan menetapkan peran yang sesuai ke akun layanan tersebut.

Membuat peran

Membuat peran-peran di level proyek:

  1. Buka command prompt dan jalankan perintah berikut. Ganti parameter login dengan informasi login akun Google Cloud Anda.
    gcloud auth login login@google.com --no-launch-browser --brief
    
  2. Download file Cloud Deployment Manager dari halaman Download.
  3. Luaskan file yang didownload dan simpan ke direktori yang dapat Anda akses saat membuat peran.
  4. Dalam direktori yang diperluas, buka direktori manual.
    cd google/migrate/gce/manual
    
  5. Dengan menggunakan file YAML di direktori tersebut, tetapkan izin ke peran:

    gcloud iam roles create "velos_manager" --project project-ID \
    --file velos_gcp_mgmt_role.yaml --no-user-output-enabled --quiet
    gcloud iam roles create "velos_ce" --project project-ID \
    --file velos_gcp_ce_role.yaml.yaml --no-user-output-enabled --quiet
    

Membuat akun layanan

  1. Buat akun layanan velos-manager di Google Cloud. Catatan: project-ID adalah project infrastruktur Anda.

    gcloud config set project project-ID
    gcloud iam service-accounts create "velos-manager" --display-name "velos-manager"

  2. Tetapkan peran velos_manager ke akun layanan velos-manager.

    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "projects/project-ID/roles/velos_manager" \
     --no-user-output-enabled --quiet
    
  3. Tambahkan peran lain yang diperlukan ke peran velos_manager:

    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/iam.serviceAccountUser"
     --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/logging.logWriter"
     --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/monitoring.metricWriter"
     --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/monitoring.viewer"
     --no-user-output-enabled --quiet
    
    gcloud iam service-accounts add-iam-policy-binding \
    "velos-manager@project-ID.iam.gserviceaccount.com" \
    --member=serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
    --role=roles/iam.serviceAccountTokenCreator --project project-ID
    
  4. Buat akun layanan velos-cloud-extension di Google Cloud. Buat akun ini di project tempat Anda berencana men-deploy Ekstensi Cloud Migrate for Compute Engine (CE).

    gcloud iam service-accounts create "velos-cloud-extension" \
    --display-name "velos-cloud-extension"
  5. Tetapkan peran velos_ce untuk akun layanan velos-cloud-extension:

    gcloud projects add-iam-policy-binding project-ID \
    --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \
    --role "projects/project-ID/roles/velos_ce" \
    --no-user-output-enabled --quiet
    
  6. Tetapkan peran tambahan yang diperlukan untuk akun layanan velos-cloud-extension:

    gcloud projects add-iam-policy-binding project-ID \
    --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \
    --role "roles/logging.logWriter" \
    --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID \
    --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \
    --role "roles/monitoring.metricWriter" \
    --no-user-output-enabled --quiet
    

Beberapa Project

Bagian ini menjelaskan cara membuat peran yang diperlukan untuk migrasi ke beberapa project, dan menetapkan peran tersebut ke akun layanan.

Membuat peran

Langkah-langkah berikut akan membuat peran untuk Migrate for Compute Engine di Google Cloud.

  1. Buat peran Migrate for Compute Engine dalam Google Cloud di level Organisasi:
    gcloud auth login orgadmin@google.com --no-launch-browser --brief
  2. Download file Cloud Deployment Manager dari halaman Download.
  3. Luaskan file yang didownload dan simpan ke direktori yang dapat Anda akses saat membuat peran.
  4. Dalam direktori yang diperluas, buka direktori manual.
    cd google/migrate/gce/manual
    
  5. Dengan menggunakan file YAML di direktori tersebut, tetapkan izin ke peran:

    gcloud iam roles create "velos_manager" --organization organization-ID \
    --file velos_gcp_mgmt_role.yaml --no-user-output-enabled --quiet
    gcloud iam roles create "velos_ce" --project project-ID \
    --file velos_gcp_ce_role.yaml.yaml --no-user-output-enabled --quiet
    

Membuat akun layanan dan menetapkan peran ke akun tersebut

  1. Buat akun layanan velos-manager di Google Cloud. Meskipun Anda dapat membuat akun layanan velos-manager di salah satu project Anda, Migrate for Compute Engine 4.8 merekomendasikan untuk membuat layanan ini dalam project host guna menyederhanakan konfigurasi.

    gcloud config set project project-ID
    gcloud iam service-accounts create "velos-manager" \
    --display-name "velos-manager"
  2. Tetapkan peran velos_manager ke akun layanan velos-manager.

    gcloud organizations add-iam-policy-binding organization-ID \
    --member serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com"\
    --role organizations/organization-ID/roles/"velos_manager"\
    --no-user-output-enabled --quiet
    
    gcloud iam service-accounts add-iam-policy-binding \
    "velos-manager@project-ID.iam.gserviceaccount.com" \
    --member=serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
    --role=roles/iam.serviceAccountTokenCreator --project project-ID
    
  3. Tambahkan peran lain yang diperlukan ke peran velos_manager:

    gcloud organizations add-iam-policy-binding organization-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/iam.serviceAccountUser"
     --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/logging.logWriter"
     --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/monitoring.metricWriter"
     --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID --member \
     serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
     --role "roles/monitoring.viewer"
     --no-user-output-enabled --quiet
    
    gcloud iam service-accounts add-iam-policy-binding \
    "velos-manager@project-ID.iam.gserviceaccount.com" \
    --member=serviceAccount:"velos-manager@project-ID.iam.gserviceaccount.com" \
    --role=roles/iam.serviceAccountTokenCreator --project project-ID
    
    
  4. Buat akun layanan velos-cloud-extension di Google Cloud. Buat akun ini di project tempat Anda berencana men-deploy Ekstensi Cloud Migrate for Compute Engine (CE).

    gcloud iam service-accounts create "velos-cloud-extension" \
    --display-name "velos-cloud-extension"
  5. Tetapkan peran velos_ce untuk akun layanan velos-cloud-extension:

    gcloud projects add-iam-policy-binding project-ID \
    --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \
    --role "projects/project-ID/roles/velos_ce" \
    --no-user-output-enabled --quiet
    
  6. Tetapkan peran tambahan yang diperlukan untuk akun layanan velos-cloud-extension:

    gcloud projects add-iam-policy-binding project-ID \
    --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \
    --role "roles/logging.logWriter" \
    --no-user-output-enabled --quiet
    
    gcloud projects add-iam-policy-binding project-ID \
    --member serviceAccount:"velos-cloud-extension@project-ID.iam.gserviceaccount.com" \
    --role "roles/monitoring.metricWriter" \
    --no-user-output-enabled --quiet