Sebelum memulai
- Jika ingin mencatat output port serial ke dalam log di Cloud Logging, pahami Cloud Logging.
-
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.
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 .
Kernel panic
Kernel panic dapat terjadi saat kernel tidak dapat memuat modul initramfs dengan benar, yang diperlukan agar OS tamu dapat melakukan booting.
Bentuk lain dari kernel panic dapat terjadi jika kernel tidak tahu cara menangani permintaan tertentu dan melindungi dirinya sendiri dengan berhenti. Kernel panic dapat terjadi pada VM Compute Engine yang menjalankan RedHat, SUSE, CentOS, atau Ubuntu.
Pesan error umum
Di bawah ini adalah beberapa peristiwa kernel panic yang paling umum sebagai referensi:
Kernel panic - not syncing: hung_task: blocked tasks
Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Kernel panic - not syncing: NMI: Not continuing
Kernel panic - not syncing: out of memory. panic_on_oom is selected
Kernel panic - not syncing: Fatal Machine check
Penyebab umum
Error kernel panic dapat terjadi karena berbagai alasan. Beberapa alasan umumnya adalah:
- Entri terkait file
initramfsyang sesuai dengan kernel tidak ada dalam filegrub.cfg. - File
initramfstidak dibuat dalam direktori/bootselama penginstalan kernel. - File
initramfshanya dibuat sebagian atau rusak.
Gejala
Ketika Anda mengalami kernel panic pada instance VM, gejala umumnya adalah kernel tidak mengizinkan Anda terhubung ke VM, meskipun saat menggunakan konsol serial.
Anda harus memeriksa log konsol serial untuk mengidentifikasi kernel yang dimuat oleh OS tamu, misalnya:
[ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-1160.95.1.el7.x86_64 (mockbuild@x86-vm-42.build.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Aug 10 10:46:21 EDT 2023
Contoh berikut menunjukkan peristiwa kernel panic karena masalah initramfs:
[ 1.520840] No filesystem could mount root, tried: [ 1.520840] [ 1.521964] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) [ 1.523495] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 3.10.0-1160.95.1.el7.x86_64 #1 [ 1.524932] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/11/2022 [ 1.526901] Call Trace: [ 1.527421] dump_stack+0x41/0x60 [ 1.527978] panic+0xe7/0x2ac [ 1.528578] mount_block_root+0x2be/0x2e6 [ 1.529693] ? do_early_param+0x95/0x95 [ 1.530441] prepare_namespace+0x135/0x16b [ 1.531237] kernel_init_freeable+0x203/0x22d [ 1.532081] ? rest_init+0xaa/0xaa [ 1.532808] kernel_init+0xa/0x103 [ 1.533395] ret_from_fork+0x35/0x40 [ 1.535229] Kernel Offset: 0x23a00000 from 0xffffffff81000000
Mengatasi error kernel panic
Untuk mengatasi error kernel panic, lakukan langkah-langkah berikut:
Hubungkan ke konsol serial dan login ke VM dari konsol Google Cloud .
Klik Reset untuk VM di konsol Google Cloud .
Setelah layar pembuka GRUB muncul, pilih kernel yang sebelumnya berfungsi atau kernel rescue, lalu booting sistem. Tindakan ini menyebabkan VM dimulai dengan kernel yang dipilih.

Ketika VM dapat diakses, Anda dapat memulai koneksi SSH ke VM.
Mengidentifikasi penyebab masalahnya dan mengambil tindakan yang sesuai.
Misalnya, jika file
initramfstidak ada atau rusak, selesaikan langkah-langkah berikut:Buat file
initramfsyang sesuai dengan kernel asli menggunakan perintahdracut:dracut -f /boot/initramfs-KERNEL_VERSION.img KERNEL_VERSION
Ganti
KERNEL_VERSIONdengan versi kernel VM saat ini. Contoh,3.10.0-1160.95.1.el7.x86_64.Update file
grub2.cfgmenggunakan perintahgrub2-mkconfig, misalnya:grub2-mkconfig -o /boot/grub2/grub.cfg
Setelah file
initramfsdibuat, Anda dapat memulai ulang VM tanpa error.