Dokumen ini memberikan ringkasan arsitektur agen tamu. Agen tamu adalah komponen penting dari lingkungan tamu. Lingkungan tamu berisi skrip, daemon, dan biner yang dibutuhkan instance untuk berjalan di Compute Engine. Untuk mengetahui informasi selengkapnya, lihat Lingkungan tamu.
Agen tamu menyiapkan layanan dan menentukan konfigurasi minimum untuk fitur seperti eksekusi skrip snapshot, failover Windows, login OS, dan autentikasi SSH berbasis metadata. Untuk mengetahui informasi selengkapnya tentang fungsi inti agen tamu, lihat Fungsi agen tamu.
Arsitektur agen tamu
Mulai dari versi 20250901.00
, arsitektur agen tamu diperbarui dari desain monolitik ke sistem modern berbasis plugin. Evolusi ini meningkatkan fleksibilitas, keandalan, dan ekstensibilitas.
Arsitektur monolitik: agen tamu yang lebih lama dari
20250901.00
menampilkan satu proses terpadu yang berpusat pada deskripsi instance server metadata. Server metadata adalah server HTTP per-instance yang berjalan bersama setiap instance Compute Engine. Untuk mengetahui informasi selengkapnya tentang server metadata, lihat Metadata VM.Agen tamu melakukan polling panjang server metadata dan mengambil tindakan berdasarkan perubahan status. Dengan arsitektur ini, status agen dibagikan di semua tugas seperti SSH dan penyiapan jaringan. Pendekatan monolitik ini tidak memiliki isolasi antarmuka dan komponen. Perubahan atau pengenalan fitur di satu area agen akan memengaruhi seluruh sistem secara bersamaan. Pola ini membuat penambahan fitur dan cakupan pengujian menjadi sulit.
Arsitektur berbasis plugin: mulai dari versi
20250901.00
, agen tamu dibagi menjadi plugin yang berbeda dan independen yang dikelola oleh pengelola pusat. Setiap plugin dapat berinteraksi dengan server metadata dan, seperti yang diarahkan oleh pengelola pusat, melakukan perubahan sesuai kebutuhan. Pendekatan modular ini memastikan bahwa error di satu plugin tidak memengaruhi agen inti atau plugin lainnya.
Arsitektur berbasis plugin
Arsitektur ini dibangun di sekitar pengelola pusat yang mengontrol berbagai plugin, yang memisahkan fungsi inti dari plugin opsional dan khusus layanan.
Komponen utama
Diagram berikut menunjukkan komponen utama agen tamu dan interaksinya.

Plugin inti: plugin ini mengenkapsulasi fungsi agen tamu asli. Komponen ini melakukan tugas penting yang diperlukan agar instance Anda dapat berjalan di Google Cloud. Hal ini mencakup tugas-tugas seperti berikut:
- Konfigurasi jaringan: menyiapkan antarmuka jaringan utama untuk mengaktifkan komunikasi.
- Akses SSH: mengelola kunci SSH pengguna untuk mengizinkan koneksi yang aman ke instance Anda.
- Akses metadata: menyediakan jalur bagi instance untuk mengakses metadata instance dan project.
Anda tidak dapat menonaktifkan plugin inti.
Untuk mengetahui informasi selengkapnya tentang fungsi inti agen tamu, lihat Fungsi agen tamu.
Plugin opsional: Anda dapat menyediakan plugin ini untuk berintegrasi dengan layananGoogle Cloud lainnya guna melakukan tugas seperti:
- Pemantauan dan logging: aktifkan plugin Agen Operasional untuk mengumpulkan metrik dan log untuk Cloud Monitoring.
- Pengelolaan beban kerja: aktifkan plugin Workload Manager untuk mengumpulkan informasi konfigurasi dan runtime dari beban kerja Anda untuk dianalisis.
- Pengoptimalan workload: aktifkan plugin Agen SAP untuk mendukung workload SAP Anda yang berjalan di Google Cloud.
Anda dapat mengaktifkan atau menonaktifkan plugin opsional sesuai kebutuhan.
Bidang kontrol agen: layanan Google Cloud terkelola ini berjalan di infrastruktur backend Google. Bidang kontrol mengelola siklus proses plugin opsional, termasuk penginstalan, update, dan konfigurasi, dengan berkomunikasi dengan pengelola agen tamu di instance.
Pengelola agen tamu: proses pusat ini memulai, menghentikan, dan memantau status semua plugin. Pengelola agen tamu memfasilitasi komunikasi antara plugin inti dan bidang kontrol agen. Pengelolaan siklus proses untuk plugin opsional mencakup hal berikut:
- Penginstalan dan update: pengelola agen tamu menginstal, memulai, menghentikan, dan mengonfigurasi plugin opsional berdasarkan petunjuk dari bidang kontrol agen.
- Pemantauan kondisi: pengelola agen tamu memantau kondisi dan status plugin opsional, termasuk penggunaan CPU dan memori, serta melaporkan informasi ini kembali ke bidang kontrol agen.
- Pengelolaan kebijakan: gunakan Compute Engine API untuk membuat kebijakan yang mengontrol penginstalan dan pembuatan versi plugin opsional.
Manfaat
Arsitektur berbasis plugin menawarkan beberapa keunggulan dibandingkan desain monolitik. Manfaat tersebut mencakup:
- Isolasi plugin: setiap plugin berjalan dalam proses terpisah, sehingga error di satu plugin tidak memengaruhi agen inti atau plugin lainnya.
- Perlindungan resource: agen tamu menggunakan fitur tingkat OS untuk menerapkan batas resource pada plugin, sehingga mencegah satu plugin menggunakan CPU atau memori secara berlebihan.
- Pemulihan error otomatis: sistem otomatis pulih dari error plugin dengan menghentikan dan meluncurkan kembali plugin.
- Pengaktifan selektif: Anda dapat menonaktifkan plugin opsional yang tidak diperlukan, sehingga Anda dapat mengamankan atau mengoptimalkan instance.
- Mengurangi overhead untuk plugin opsional: pengelola agen tamu secara otomatis menangani penginstalan dan update plugin opsional, sehingga mengurangi upaya manual yang diperlukan agar plugin tersebut tetap terupdate.
Lokasi biner agen tamu
Tabel berikut mencantumkan jalur file untuk berbagai biner agen tamu di instance Linux dan Windows, bergantung pada arsitekturnya.
Biner agen berbasis plugin
Tabel ini mencantumkan jalur file untuk biner agen tamu berbasis plugin di instance Linux dan Windows:
Komponen | Jalur di Linux | Jalur di Windows |
---|---|---|
Pengelola agen tamu | /usr/bin/google_guest_agent_manager |
C:\ProgramData\Google\Compute Engine\google-guest-agent |
Biner plugin inti | /usr/lib/google/guest_agent/core_plugin |
C:\Program Files\Google\Compute Engine\agent\CorePlugin.exe |
Runner skrip metadata | /usr/bin/gce_metadata_script_runner |
C:\Program Files\Google\Compute Engine\agent\GCEMetadataScriptRunner.exe |
Biner agen monolitik
Tabel berikut mencantumkan jalur file untuk biner agen tamu monolitik di instance Linux dan Windows:
Komponen | Jalur di Linux | Jalur di Windows |
---|---|---|
Agen tamu | /usr/bin/google_guest_agent |
C:\Program Files\Google\Compute Engine\google_guest_agent.exe |
Runner skrip metadata | /usr/bin/google_metadata_script_runner |
C:\Program Files\Google\Compute Engine\metadata_scripts\GCEMetadataScripts.exe |
Kunci yang diizinkan | Tidak berlaku | C:\Program Files\Google\Compute Engine\agent\GCEAuthorizedKeys.exe |
Kompatibilitas mundur
Untuk memastikan transisi yang lancar dari agen tamu monolitik sebelumnya ke sistem berbasis plugin, paket agen tamu mencakup beberapa komponen yang dirancang untuk kompatibilitas mundur. Komponen ini bukan bagian dari
arsitektur berbasis plugin dan hanya diaktifkan jika Anda memilih untuk kembali ke
agen monolitik secara manual dengan menyetel atribut metadata
enable-guest-agent-core-plugin
ke false
.
Komponen yang mendukung kompatibilitas ini meliputi:
- Pengelola kompatibilitas agen tamu: paket ini mengelola peralihan antara agen berbasis plugin dan agen monolitik.
- Pengelola kompatibilitas peluncur skrip metadata: paket ini memastikan peluncur skrip yang benar digunakan, bergantung pada apakah agen monolitik atau berbasis plugin aktif.
- Pengelola kompatibilitas kunci yang diotorisasi (khusus Windows): paket ini menangani kunci SSH, memastikan bahwa kunci yang benar digunakan untuk agen lama atau baru.
Komponen | Jalur di Linux | Jalur di Windows |
---|---|---|
Pengelola kompatibilitas agen tamu | /usr/bin/google_guest_compat_manager |
C:\Program Files\Google\Compute Engine\agent\GCEWindowsCompatManager.exe |
Pengelola kompatibilitas pelaksana skrip metadata | /usr/bin/metadata_script_runner_compat |
C:\Program Files\Google\Compute Engine\metadata_scripts\GCECompatMetadataScripts.exe |
Pengelola kompatibilitas kunci yang sah | Tidak berlaku | C:\Program Files\Google\Compute Engine\agent\GCEWindowsAuthorizedKeysCompat.exe |
Langkah berikutnya
- Untuk mengetahui informasi selengkapnya tentang fungsi plugin inti, lihat Fungsi agen tamu