Membuat instance dari image bersama


Dokumen ini menjelaskan cara membuat instance Compute Engine dari image kustom yang dibagikan oleh project lain.

Instance berisi bootloader, sistem file boot, dan OS image. Anda dapat membuat image kustom dari disk sumber, image, snapshot, atau image yang disimpan di Cloud Storage dan menggunakan image ini untuk membuat instance. Secara default, image kustom hanya dimiliki oleh project tempat image tersebut dibuat. Jika pengguna lain telah membagikan image dengan Anda, Anda dapat menggunakan image tersebut untuk membuat instance.

Sebelum memulai

  • Saat membuat instance dari image menggunakan Google Cloud CLI atau Compute Engine API, terdapat batas 20 instance per detik. Jika Anda perlu membuat jumlah instance per detik yang lebih tinggi, minta batas kuota yang lebih tinggi untuk resource Image.
  • Jika Anda belum melakukannya, siapkan autentikasi. Autentikasi adalah proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud . Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Untuk mengetahui informasi selengkapnya, lihat Mengautentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan guna membuat instance dari image bersama, minta administrator untuk memberi Anda peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) di project. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk membuat instance dari image bersama. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat instance dari image bersama:

  • compute.instances.create pada project
  • Untuk menggunakan image bersama guna membuat instance: compute.images.useReadOnly pada image

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Membuat instance dari image bersama

Untuk membuat instance dari image bersama, ikuti langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud, buka halaman Create an instance.

    Buka halaman Buat instance

    Jika diminta, pilih project Anda, lalu klik Lanjutkan.

    Halaman Create an instance akan muncul dan menampilkan panel Machine configuration.

  2. Di panel Machine configuration, lakukan hal berikut:

    1. Di kolom Name, tentukan nama untuk instance Anda. Untuk mengetahui informasi selengkapnya, lihat Konvensi penamaan resource.
    2. Opsional: Di kolom Zone, pilih zona untuk instance ini.

      Pilihan defaultnya adalah Semua. Jika Anda tidak mengubah pilihan default ini, Google akan otomatis memilih zona untuk Anda berdasarkan jenis dan ketersediaan mesin.

    3. Pilih kelompok mesin untuk instance Anda. KonsolGoogle Cloud kemudian menampilkan rangkaian mesin yang tersedia untuk kelompok mesin yang Anda pilih. Opsi keluarga mesin berikut tersedia:

      • Tujuan umum
      • Dioptimalkan untuk komputasi
      • Dioptimalkan untuk memori
      • Dioptimalkan untuk penyimpanan
      • GPU

    4. Di kolom Series, pilih seri mesin untuk instance Anda.

      Jika Anda memilih GPUs sebagai kelompok mesin pada langkah sebelumnya, pilih GPU type yang Anda inginkan. Kemudian, seri mesin akan otomatis dipilih untuk jenis GPU yang dipilih.

    5. Di bagian Machine type, pilih jenis mesin untuk instance Anda.

  3. Di menu navigasi, klik OS and storage. Di panel Operating system and storage yang muncul, konfigurasikan boot disk Anda dengan melakukan hal berikut:

    1. Klik Ubah. Panel Disk booting akan muncul dan menampilkan tab Image publik.
    2. Klik Custom images. Tab Custom images akan muncul.
    3. Untuk memilih project image, klik Change, lalu pilih project yang berisi image tersebut.
    4. Di daftar Image, pilih gambar yang ingin Anda impor.
    5. Pada daftar Boot disk type, pilih jenis disk booting.
    6. Di kolom Size (GB), tentukan ukuran boot disk.
    7. Opsional: Untuk opsi konfigurasi lanjutan, luaskan bagian Show advanced configurations.
    8. Untuk mengonfirmasi opsi disk booting dan kembali ke panel Sistem operasi dan penyimpanan, klik Select.
  4. Di menu navigasi, klik Networking. Di panel Networking yang muncul, lakukan hal berikut:

    1. Buka bagian Firewall.
    2. Untuk mengizinkan traffic HTTP atau HTTPS ke instance, pilih Allow HTTP traffic atau Allow HTTPS traffic.

      Compute Engine menambahkan tag jaringan ke instance Anda dan membuat aturan firewall masuk yang sesuai, yang mengizinkan semua traffic masuk di tcp:80 (HTTP) atau tcp:443 (HTTPS). Tag jaringan mengaitkan aturan firewall dengan instance. Untuk mengetahui informasi selengkapnya, lihat Ringkasan aturan firewall dalam dokumentasi Cloud Next Generation Firewall.

  5. Opsional: Tentukan opsi konfigurasi lainnya. Untuk mengetahui informasi selengkapnya, lihat Opsi konfigurasi selama pembuatan instance.

  6. Untuk membuat dan memulai instance, klik Create.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Buat instance menggunakan gcloud compute instances create command, dan gunakan flag --image dan --image-project untuk menentukan nama image dan project tempat image tersebut berada:

    gcloud compute instances create INSTANCE_NAME \
    --image=IMAGE \
    --image-project=IMAGE_PROJECT
    

    Ganti kode berikut:

    • INSTANCE_NAME: nama untuk instance baru
    • IMAGE: nama image
    • IMAGE_PROJECT: project tempat image berada

    Jika perintah berhasil, gcloud akan merespons dengan properti instance baru, seperti dalam contoh berikut:

    Created [https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-b/instances/example-instance].
    NAME                 ZONE           MACHINE_TYPE   PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP    STATUS
    example-instance     us-central1-b  e2-standard-2               10.240.0.4   104.198.53.60  RUNNING
    

Terraform

Proses pembuatan instance dengan image bersama di Terraform sama seperti saat Anda membuat instance dengan image yang tersedia secara publik.

  1. Di konsol Google Cloud , buka halaman Instance VM.

    Buka Instance VM

  2. Klik Create instance.
  3. Tentukan parameter yang Anda inginkan.
  4. Di bagian atas atau bawah halaman, klik Kode yang setara, lalu klik tab Terraform untuk melihat kode Terraform.

REST

Proses untuk membuat instance dengan image bersama di dalam API sama seperti jika Anda membuat instance dengan image yang tersedia secara publik.

Untuk membuat instance dari image bersama, gunakan metode instances.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances

{
   "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
   "name":"VM_NAME",
   
   "disks":[
      {
         "initializeParams":{
            "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE"
         },
         "boot":true
      }
   ],
   
   
   "networkInterfaces":[
      {
         "network":"global/networks/NETWORK_NAME"
      }
   ],
   
  
   "shieldedInstanceConfig":{
      "enableSecureBoot":"ENABLE_SECURE_BOOT"
   }
}

Ganti kode berikut:

  • PROJECT_ID: ID project tempat VM akan dibuat
  • ZONE: zone tempat VM akan dibuat
  • MACHINE_TYPE_ZONE: zona yang berisi jenis mesin yang akan digunakan untuk VM baru
  • MACHINE_TYPE: jenis mesin, telah ditetapkan atau kustom, untuk VM baru
  • VM_NAME: nama VM yang baru
  • IMAGE_PROJECT: nama project yang berisi image yang dibagikan
  • IMAGE: tentukan salah satu dari hal berikut:
    • IMAGE: nama image yang dibagikan. Misalnya, "sourceImage": "projects/finance-project-1234/global/images/finance-debian-image-v2".
    • IMAGE_FAMILY: jika image yang dibagikan dibuat sebagai bagian dari kelompok image kustom, tentukan kelompok image kustom tersebut.

      Ini akan membuat VM dari OS image dan versi OS terbaru yang masih digunakan dalam kelompok image kustom Anda. Misalnya, jika Anda menentukan "sourceImage": "projects/finance-project-1234/global/images/family/finance-debian-family", Compute Engine akan membuat VM dari versi terbaru OS image di dalam kelompok image finance-debian-family kustom.

  • NETWORK_NAME: jaringan VPC yang ingin Anda gunakan untuk VM. Anda dapat menentukan default untuk menggunakan jaringan default Anda.
  • ENABLE_SECURE_BOOT: Jika Anda memilih image yang mendukung fitur Shielded VM, Compute Engine, secara default, akan mengaktifkan virtual trusted platform module (vTPM) dan integrity monitoring. Compute Engine tidak mengaktifkan Booting Aman secara default.

    Jika Anda menentukan true untuk enableSecureBoot, Compute Engine akan membuat VM dengan ketiga fitur Shielded VM diaktifkan. Setelah Compute Engine memulai VM Anda, untuk mengubah opsi Shielded VM, Anda harus menghentikan VM tersebut.

Langkah selanjutnya