Dokumen ini menjelaskan cara menangguhkan atau melanjutkan instance Compute Engine. Untuk mempelajari lebih lanjut cara menangguhkan, menghentikan, atau mereset instance, lihat Menangguhkan, menghentikan, atau mereset instance Compute Engine.
Jika ingin mempertahankan instance Compute Engine, tetapi tidak ingin dikenai biaya saat instance tidak digunakan, Anda dapat menangguhkan instance tersebut. Menangguhkan instance akan mempertahankan instance dan memigrasikan konten memori instance ke penyimpanan. Setelah melanjutkan instance, Compute Engine akan memigrasikan kembali memori instance dari penyimpanan ke instance, dan instance akan mulai berjalan kembali.
Menangguhkan instance Compute Engine berguna untuk hal berikut:
Lingkungan pengembangan dan pengujian yang tidak digunakan sepenuhnya selama periode non-puncak, seperti pada malam hari atau akhir pekan, dan yang ingin Anda pertahankan untuk menghemat biaya atau inisialisasi yang lebih cepat daripada membuat instance baru.
Aplikasi yang memerlukan periode inisialisasi yang lama setelah instance selesai melakukan booting, tetapi sebelum aplikasi siap melayani permintaan pertamanya, seperti workstation developer virtual atau aplikasi Java yang kompleks.
Batasan
Saat Anda menangguhkan instance komputasi, batasan berikut berlaku:
Anda hanya dapat menangguhkan instance jika OS tamu mendukungnya. Untuk mengetahui informasi selengkapnya, lihat Detail sistem operasi.
Anda hanya dapat menangguhkan instance yang menggunakan image OS berikut jika Anda mengonfigurasi OS-nya, seperti yang dijelaskan dalam dokumen ini:
Debian 8 atau 9
Semua OS Windows
Anda dapat menangguhkan instance hanya hingga 60 hari sebelum Compute Engine otomatis mengalihkan statusnya ke
TERMINATED.Anda dapat menangguhkan Spot VM atau instance preemptible. Namun, jika Compute Engine melakukan preempt terhadap instance sebelum operasi penangguhan selesai, Compute Engine akan mengakhiri operasi penangguhan dan melakukan preempt terhadap instance.
Anda tidak dapat menangguhkan instance menggunakan proses standar yang dibuat ke dalam lingkungan tamu. Perintah seperti
systemctl suspenddi Ubuntu 16.04 atau yang lebih baru tidak didukung. Jika dipanggil, Compute Engine akan mengabaikan sinyal dalam tamu.Anda tidak dapat menangguhkan jenis instance berikut:
Instance bare metal.
Confidential VM.
Instance yang telah memasang GPU.
Instance yang memiliki memori lebih dari 208 GB.
Instance yang memiliki disk yang dilindungi dengan CSEK.
Mengaktifkan operasi penangguhan pada OS tamu
Jika instance komputasi Anda menggunakan Debian 8 atau 9 sebagai OS tamu, atau OS Windows apa pun, Anda harus mengonfigurasi OS sebelum dapat menangguhkan dan melanjutkan instance. Jika instance Anda menggunakan OS tamu yang berbeda, lewati bagian ini.
Mengaktifkan operasi penangguhan di Debian 8 atau 9
Sebelum dapat menangguhkan atau melanjutkan instance komputasi yang menggunakan Debian 8 atau 9 sebagai OS tamu, Anda harus mengonfigurasi OS tamu menggunakan salah satu metode berikut:
Mengonfigurasi ACPID
Untuk mengaktifkan operasi penangguhan dan melanjutkan di Debian 8 atau 9, Anda dapat mengonfigurasi Daemon peristiwa Antarmuka Daya dan Konfigurasi Lanjutan (ACPID) untuk menangani peristiwa tombol tidur. Setelah mengaktifkan peristiwa tombol tidur lelap, Anda dapat menambahkan skrip shell untuk menangani peristiwa tidur seperti yang dijelaskan di bagian ini.
Untuk mengonfigurasi ACPID agar mendukung operasi penangguhan dan pelanjutan, lakukan hal berikut:
Jika Anda belum melakukannya, hubungkan ke instance Linux Anda.
Buat folder
eventsdi folderacpi:sudo mkdir -p /etc/acpi/events/Konfigurasi ACPID untuk menangani peristiwa tombol sleep:
cat <<EOF | sudo tee /etc/acpi/events/sleepbtn-acpi-support event=button[ /]sleep action=/etc/acpi/sleepbtn-acpi-support.sh EOFBuat skrip penanganan peristiwa tidur:
cat <<EOF | sudo tee /etc/acpi/sleepbtn-acpi-support.sh #!/bin/sh echo mem > /sys/power/state EOFSiapkan izin untuk skrip:
sudo chmod 755 /etc/acpi/sleepbtn-acpi-support.shAgar perubahan diterapkan, mulai ulang ACPID:
sudo systemctl restart acpid.service
Menginstal D-Bus
Untuk mengaktifkan operasi penangguhan dan pelanjutan di Debian 8 atau 9, Anda dapat menginstal D-Bus.
Untuk menginstal D-Bus di OS tamu instance komputasi Anda saat OS menggunakan Debian 8 atau 9, lakukan hal berikut:
Jika Anda belum melakukannya, hubungkan ke instance Linux Anda.
Instal D-Bus:
sudo apt-get install dbusUntuk menerapkan perubahan, mulai ulang
logind:sudo systemctl restart systemd-logind.service
Mengaktifkan operasi penangguhan di Windows
Untuk menangguhkan instance yang menggunakan OS tamu Windows, Anda harus menonaktifkan hibernasi di OS. Jika Anda mengimpor image Windows, hibernasi mungkin diaktifkan secara default, dan Anda harus menonaktifkannya untuk menangguhkan instance.
Untuk menonaktifkan hibernasi di Windows, ikuti langkah-langkah berikut:
Jika Anda belum melakukannya, hubungkan ke instance Windows Anda.
Buka PowerShell sebagai administrator.
Nonaktifkan hibernasi:
powercfg -h offPastikan hibernasi dinonaktifkan:
powercfg -a
Sebelum memulai
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud dan API. Untuk menjalankan
kode atau sampel dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke
Compute Engine dengan memilih salah satu opsi berikut:
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan konsol Google Cloud untuk mengakses layanan Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initJika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
- Tetapkan region dan zona default.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Jika Anda menggunakan shell lokal, buat kredensial autentikasi lokal untuk akun pengguna Anda:
gcloud auth application-default login
Anda tidak perlu melakukan langkah ini jika menggunakan Cloud Shell.
Jika error autentikasi ditampilkan, dan Anda menggunakan penyedia identitas (IdP) eksternal, konfirmasi bahwa Anda telah login ke gcloud CLI dengan identitas gabungan Anda.
Go
Untuk menggunakan contoh Go di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk menggunakan contoh Java di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk menggunakan contoh Node.js di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
PHP
Untuk menggunakan contoh PHP di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk menggunakan contoh Python di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk menangguhkan atau melanjutkan instance komputasi, minta administrator untuk memberi Anda peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) di instance.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk menangguhkan atau melanjutkan instance komputasi. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk menangguhkan atau melanjutkan instance komputasi:
-
Untuk menangguhkan instance:
compute.instances.suspend -
Untuk melanjutkan instance:
compute.instances.resume
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Menangguhkan instance
Jika OS tamu instance komputasi Anda menggunakan Debian 8 atau 9, maka, sebelum menangguhkan instance, Anda harus mengonfigurasi OS tamu untuk mendukung operasi penangguhan dan melanjutkan seperti yang dijelaskan dalam dokumen ini.
Untuk menangguhkan instance, gunakan metode berikut berdasarkan apakah instance memiliki disk SSD Lokal yang terpasang:
Jika instance Anda tidak memiliki disk SSD Lokal yang terpasang, lihat Menangguhkan instance tanpa disk SSD Lokal.
Jika instance Anda memiliki disk SSD Lokal yang terpasang, dan Anda ingin menghapus atau mempertahankan (Pratinjau) data SSD Lokal disk, lihat Menangguhkan instance dengan disk SSD Lokal.
Menangguhkan instance tanpa disk SSD Lokal
Anda dapat menangguhkan beberapa instance komputasi secara bersamaan atau instance satu per satu. Untuk beberapa instance, gunakan konsol Google Cloud atau, untuk instance yang berada di zona yang sama, Google Cloud CLI. Untuk instance satu per satu, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Pilih satu atau beberapa instance untuk ditangguhkan.
Klik Tangguhkan, lalu klik Tangguhkan untuk mengonfirmasi.
gcloud
Untuk menangguhkan satu atau beberapa instance dalam satu zona, gunakan
perintah gcloud compute instances suspend:
gcloud compute instances suspend INSTANCE_NAMES \
--zone=ZONE
Ganti kode berikut:
INSTANCE_NAMES: daftar nama instance yang dipisahkan dengan spasi—misalnya,instance-01 instance-02 instance-03.ZONE: zona tempat instance berada.
Go
Java
Node.js
PHP
Python
REST
Untuk menangguhkan instance, buat permintaan POST ke
metode instances.suspend:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/suspend
Ganti kode berikut:
PROJECT_ID: ID project tempat instance berada.ZONE: zona tempat instance berada.INSTANCE_NAME: nama instance.
Menangguhkan instance dengan disk SSD Lokal
Berdasarkan jumlah instance komputasi yang ingin Anda tangguhkan secara bersamaan dan apakah Anda perlu menyimpan data disk SSD Lokal yang terpasang, lakukan hal berikut:
Untuk menyimpan data disk SSD Lokal yang terpasang ke instance (kecuali instance dengan disk SSD Titanium), tangguhkan instance menggunakan gcloud CLI atau REST API.
Untuk menangguhkan beberapa instance secara bersamaan, gunakan konsol Google Cloud atau, untuk instance yang berada di zona yang sama, gcloud CLI.
Untuk menangguhkan satu atau beberapa instance yang memiliki disk SSD Lokal terpasang, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Pilih satu atau beberapa instance untuk ditangguhkan.
Klik Tangguhkan, lalu klik Tangguhkan untuk mengonfirmasi.
gcloud
Saat menangguhkan satu atau beberapa instance dalam satu zona yang memiliki disk SSD Lokal terpasang, tentukan apakah akan menghapus atau mempertahankan data SSD Lokal sebagai berikut:
Untuk menghapus data SSD Lokal, gunakan perintah
gcloud compute instances suspenddengan flag--discard-local-ssd=true:gcloud compute instances suspend INSTANCE_NAMES \ --discard-local-ssd=true \ --zone=ZONEUntuk mempertahankan data SSD Lokal, gunakan perintah
gcloud beta compute instances suspenddengan flag--discard-local-ssd=false:gcloud beta compute instances suspend INSTANCE_NAMES \ --discard-local-ssd=false \ --zone=ZONE
Ganti kode berikut:
INSTANCE_NAMES: daftar nama instance yang dipisahkan dengan spasi—misalnya,instance-01 instance-02 instance-03.ZONE: zona tempat instance berada.
REST
Saat menangguhkan instance yang memiliki disk SSD Lokal terpasang, tentukan apakah akan menghapus atau mempertahankan data SSD Lokal sebagai berikut:
Untuk menghapus data SSD Lokal, buat permintaan
POSTke metodeinstances.suspend. Di URL permintaan, sertakan parameter kueridiscardLocalSsdyang ditetapkan ketrue:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/suspend?discardLocalSsd=trueUntuk menyimpan data SSD Lokal, buat permintaan
POSTke metodebeta.instances.suspend. Di URL permintaan, sertakan parameter kueridiscardLocalSsdyang ditetapkan kefalse:POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/suspend?discardLocalSsd=false
Ganti kode berikut:
PROJECT_ID: ID project tempat instance berada.ZONE: zona tempat instance berada.INSTANCE_NAME: nama instance.
Melanjutkan instance yang ditangguhkan
Sebelum melanjutkan instance komputasi yang ditangguhkan, pertimbangkan hal berikut:
Anda dapat melanjutkan instance hanya jika ada kapasitas yang memadai di zona tempat instance berada. Biasanya hal ini tidak menjadi masalah. Jika Anda mengalami masalah saat melanjutkan instance, coba lagi nanti.
Jika Anda melampirkan disk SSD Lokal ke instance dan memilih untuk mempertahankan data SSD Lokal saat menangguhkannya, Anda mungkin perlu memasang kembali disk SSD Lokal setelah melanjutkannya. Untuk mengetahui informasi selengkapnya, lihat cara memasang ulang non-boot disk di instance Linux atau instance Windows.
Anda dapat melanjutkan beberapa instance secara bersamaan atau instance satu per satu. Untuk beberapa instance, gunakan konsol Google Cloud atau, untuk instance yang berada di zona yang sama, gcloud CLI. Untuk instance satu per satu, pilih salah satu opsi berikut:
Konsol
Di konsol Google Cloud , buka halaman VM instances.
Pilih satu atau beberapa instance yang ditangguhkan untuk dilanjutkan.
Klik Start / Resume, lalu klik Start.
gcloud
Untuk melanjutkan satu atau beberapa instance yang ditangguhkan dalam satu zona, gunakan
perintah gcloud compute instances resume:
gcloud compute instances resume INSTANCE_NAMES \
--zone=ZONE
Ganti kode berikut:
INSTANCE_NAMES: daftar nama instance yang dipisahkan dengan spasi—misalnya,instance-01 instance-02 instance-03.ZONE: zona tempat instance yang ditangguhkan berada.
Go
Java
Node.js
PHP
Python
REST
Untuk melanjutkan instance yang ditangguhkan, buat permintaan POST ke
metode instances.resume:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/resume
Ganti kode berikut:
INSTANCE_NAME: nama instance yang ditangguhkan untuk dilanjutkan.PROJECT_ID: ID project tempat instance yang ditangguhkan berada.ZONE: zona tempat instance yang ditangguhkan berada.