Dokumen ini menjelaskan cara memecahkan masalah terkait VM Manager.
Untuk informasi selengkapnya tentang VM Manager, lihat VM Manager.
Sebelum memulai
-
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Pesan error atau peringatan apa pun yang dicatat dalam log oleh VM. Cara ini ideal untuk mengidentifikasi error tingkat VM, atau error dari layanan lain yang berjalan pada VM Anda. Untuk meninjau log ini, lihat Memeriksa Cloud Logging.
- Informasi debug panjang yang dicatat ke dalam log oleh agen Konfigurasi OS. Hal ini berguna untuk mengidentifikasi masalah pada operasi apa pun yang dijalankan oleh VM Manager. Guna memeriksa log debug untuk agen OS Config, lihat Memeriksa log debug.
- Di konsol Google Cloud, buka tab Patch Jobs di halaman OS patch management.
- Klik nama tugas patch yang ingin Anda debug.
- Scroll ke bawah ke bagian Updated VM instances.
- Untuk VM tertentu, di bagian Logs, klik View.
- Di konsol Google Cloud, buka tab VM instances di halaman OS configuration management.
- Klik nama VM yang ingin Anda debug.
- Scroll ke bawah ke bagian Policies.
- Di bagian Logs, klik View.
Di konsol Google Cloud, buka halaman Instance VM.
Klik nama VM yang ingin Anda tetapkan nilai metadatanya.
Di halaman Instance details, klik Edit untuk mengedit setelan.
Di bagian Custom metadata, tambahkan entri metadata berikut:
Kunci:
osconfig-log-level
Nilai:debug
Klik Save untuk menerapkan perubahan ke VM.
- Cloud Logging: gunakan konsol Google Cloud atau Google Cloud CLI
Konsol port serial
Buka halaman Logging > Logs Explorer (Logs Explorer) di konsol Google Cloud:
Jika perlu, pilih project Google Cloud yang sudah ada di bagian atas halaman, atau buat project baru.
Di menu drop-down Resource, pilih VM Instance. Daftar VM yang tersedia (
instance_id
) akan ditampilkan.Klik VM yang ingin Anda lihat.
Klik Tambahkan.
Pada menu drop-down Log name, pilih OSConfigAgent.
Klik Add.
Kueri Anda harus mirip dengan kueri berikut ini:
resource.type="gce_instance" resource.labels.instance_id="INSTANCE_ID" logName="projects/PROJECT_ID/logs/OSConfigAgent"
Klik Run query.
- Akun layanan terlampir. VM Manager menggunakan akun layanan ini untuk menandatangani permintaan ke layanan API.
- Pastikan akun layanan yang terlampir memiliki peran
roles/logging.logWriter
untuk menulis log ke Logging API. - Agen Layanan Konfigurasi Google Cloud OS. VM Manager membuat agen layanan ini saat memulai tugas patch dan memberinya peran Agen Layanan Konfigurasi Cloud OS. Untuk membuat kebijakan OS, Anda tidak perlu mengonfigurasi agen layanan ini.
- Pastikan semua VM memiliki akun layanan terlampir.
Pastikan peran Agen Layanan Konfigurasi Cloud OS (
roles/osconfig.serviceAgent
) ditetapkan pada Agen Layanan Konfigurasi Google Cloud OS.gcloud projects add-iam-policy-binding PROJECT_ID \ --member='serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com' \ --role='roles/osconfig.serviceAgent'
Ganti kode berikut:
PROJECT_ID
: project ID AndaPROJECT_NUMBER
: nomor project Anda
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 informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Ringkasan
Untuk memecahkan masalah, verifikasi terlebih dahulu bahwa VM Manager disiapkan dengan benar. Jika penyiapan sudah benar dan Anda masih mengalami masalah, Anda dapat meninjau log. Saat meninjau log, Anda dapat mengidentifikasi masalah pada VM atau dalam alur kerja VM Manager, seperti error dalam perintah atau skrip, yang dapat Anda pisahkan dan selesaikan.
Anda dapat mengumpulkan informasi berikut dari log:
Setelah mengidentifikasi masalah atau error, Anda juga dapat meninjau bagian error umum untuk melihat kemungkinan perbaikan.
Memeriksa Cloud Logging
Anda dapat menggunakan link cepat Konsol Google Cloud untuk setiap fitur guna melihat log untuk VM tertentu.
Patch OS
Kebijakan OS
Prosedur ini didukung untuk kebijakan OS. Untuk kebijakan tamu (beta), gunakan opsi log debug, di bagian berikut.
Memeriksa log debug
Anda dapat mengidentifikasi masalah pada fitur VM Manager apa pun dengan mengaktifkan proses debug untuk agen Konfigurasi OS dan melihat log debug.
Mengaktifkan logging debug untuk agen Konfigurasi OS
Anda dapat mengaktifkan logging debug dengan menetapkan metadata
osconfig-log-level=debug
pada instance atau project VM.Untuk mengaktifkan logging debug di VM Anda, selesaikan langkah-langkah berikut:
Konsol
gcloud
Gunakan perintah
instances add-metadata
dengan flag--metadata=osconfig-log-level=debug
.gcloud compute instances add-metadata VM_NAME \ --metadata=osconfig-log-level=debug
Ganti
VM_NAME
dengan nama VM Anda.REST
Untuk mengetahui petunjuk tentang cara menetapkan metadata instance, ikuti petunjuk API untuk menetapkan metadata instance.
Key-value pair berikut diperlukan sebagai bagian dari properti metadata:
Kunci:
osconfig-log-level
Nilai:debug
Lihat log debug
Ketika logging debug diaktifkan, agen OS Config akan menulis entri log ke Cloud Logging dan konsol port serial.
Setelah Anda mengaktifkan logging debug di VM, agen Konfigurasi OS memerlukan waktu sekitar sepuluh menit untuk mulai menulis pesan debug di Cloud Logging. Anda dapat mengurangi waktu tunggu ini dengan memulai ulang agen atau me-reboot VM. Untuk mengetahui informasi lebih lanjut tentang Cloud Logging, lihat artikel Melihat log Cloud Logging.
Untuk melihat log debug, Anda dapat menggunakan opsi berikut:
Konsol
gcloud
Jalankan
gcloud logging read
perintah.gcloud logging read "resource.type=gce_instance AND logName=projects/PROJECT_ID/logs/OSConfigAgent"
Ganti
PROJECT_ID
dengan project ID Anda.Port serial
Untuk melihat informasi log debug dari konsol port serial, lihat Melihat output port serial.
Error yang biasa terjadi
Masalah Authentication
Agar VM Manager dapat berfungsi, Anda harus memiliki hal berikut:
Jika menggunakan VM Manager dan tidak memiliki akun layanan yang terpasang, atau Agen Layanan Config Google Cloud OS, Anda mungkin melihat error berikut saat bekerja dengan tugas patch:
Service account permissions are missing. Verify that the service account has the correct permissions and try again.
OSConfigAgent Error main.go:88: error getting token from metadata: metadata: GCE metadata "instance/service-accounts/default/identity?audience=osconfig.googleapis.com&format=full" not defined
message: "Error running OPERATION_NAME: error calling OPERATION_NAME: code: "PermissionDenied", message: "The caller does not have permission", details: []"
Masalah autentikasi juga dapat mencegah instance VM muncul di dasbor Patch.
Untuk mengatasi masalah tersebut, coba salah satu atau semua langkah berikut:
Error saat mengecualikan paket untuk update patch
Jika Anda menentukan karakter pengganti atau karakter khusus untuk nama paket saat mengecualikan paket dalam tugas patch, OS patch management mungkin akan mengabaikan daftar tersebut dan memperbarui semua paket.
Untuk mengatasi masalah ini, update agen Konfigurasi OS ke versi
20220829.00
dan gunakan garis miring (/
) untuk menggabungkan nama paket.Pada contoh berikut, OS patch management mengecualikan paket
yum
dengan awalangoogle-
dalam nama paket.gcloud compute os-config patch-jobs execute --instance-filter-all
--yum-excludes=/google-.*/Apa langkah selanjutnya?
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-12-22 UTC.
-