Tentang agen tamu


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.

Pengelola agen tamu pusat mengontrol plugin inti dan plugin opsional.
    Pengelola agen tamu berkomunikasi dengan bidang kontrol agen di backend Google untuk mengelola plugin opsional.
Gambar 1. Arsitektur agen tamu
  • 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