Tentang dokumen SSM AWS-RunPatchBaselineWithHooks - AWS Systems Manager

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Tentang dokumen SSM AWS-RunPatchBaselineWithHooks

AWS Systems Manager mendukungAWS-RunPatchBaselineWithHooks, dokumen Systems Manager (dokumen SSM) untukPatch Manager, kemampuan. AWS Systems Manager Dokumen SSM ini melakukan operasi penambalan pada node terkelola untuk pembaruan terkait keamanan dan jenis pembaruan lainnya.

AWS-RunPatchBaselineWithHooks berbeda dari AWS-RunPatchBaseline dengan cara berikut:

  • Dokumen pembungkusAWS-RunPatchBaselineWithHooks adalah pembungkus untuk AWS-RunPatchBaseline dan bergantung pada AWS-RunPatchBaseline untuk beberapa operasinya.

  • InstallOperasiAWS-RunPatchBaselineWithHooks mendukung kait siklus hidup yang berjalan pada titik yang ditentukan selama patch node terkelola. Karena instalasi patch kadang-kadang memerlukan node terkelola untuk reboot, operasi patching dibagi menjadi dua peristiwa, dengan total tiga kait yang mendukung fungsionalitas kustom. Kait pertama adalah sebelum operasi Install with NoReboot. Kait kedua adalah setelah operasi Install with NoReboot. Kait ketiga tersedia setelah reboot dari node terkelola.

  • Tidak ada support daftar patch kustomAWS-RunPatchBaselineWithHooks tidak support parameter InstallOverrideList.

  • SSM Agentdukungan - AWS-RunPatchBaselineWithHooks mengharuskan SSM Agent 3.0.502 atau yang lebih baru diinstal pada node yang dikelola untuk menambal.

Saat dokumen dijalankan, ia menggunakan dasar patch yang ditentukan saat ini sebagai "default" untuk suatu jenis sistem operasi jika tidak ada grup patch yang ditentukan. Jika tidak, ia menggunakan dasar patch yang terkait dengan grup patch. Untuk informasi tentang grup patch, lihat Tentang grup patch.

Anda dapat menggunakan AWS-RunPatchBaselineWithHooks untuk menerapkan patch untuk sistem operasi dan aplikasi. (Pada Windows, support aplikasi dibatasi pada pembaruan untuk aplikasi yang dirilis oleh Microsoft.)

Dokumen ini mendukung Linux,macOS, dan node Windows Server terkelola. Dokumen ini akan melakukan tindakan yang sesuai untuk setiap platform.

Linux

Pada node yang dikelola Linux, AWS-RunPatchBaselineWithHooks dokumen tersebut memanggil modul Python, yang pada gilirannya mengunduh snapshot dari baseline patch yang berlaku untuk node terkelola. Snapshot dasar tambalan ini menggunakan aturan yang ditentukan dan daftar tambalan yang disetujui dan diblokir untuk mendorong manajer paket yang sesuai untuk setiap jenis node:

  • Amazon Linux 1, Amazon Linux 2, CentOSOracle Linux, dan RHEL 7 node terkelola menggunakan YUM. Untuk operasi YUM, Patch Manager membutuhkan Python 2.6 atau versi yang didukung yang lebih baru (2.6 - 3.10).

  • RHEL8 node terkelola menggunakan DNF. Untuk operasi DNF, Patch Manager memerlukan versi yang didukung dari Python 2 atau Python 3 (2.6 - 3.10). (Tidak ada versi yang diinstal secara default pada RHEL 8. Anda harus menginstal satu atau yang lain secara manual.)

  • Debian Server,Raspberry Pi OS, dan Ubuntu Server instance menggunakan APT. Untuk operasi APT, Patch Manager memerlukan versi yang didukung Python 3 (3.0 - 3.10).

  • SUSE Linux Enterprise Servernode terkelola menggunakan Zypper. Untuk operasi Zypper, Patch Manager membutuhkan Python 2.6 atau versi yang didukung yang lebih baru (2.6 - 3.10).

macOS

Pada node macOS terkelola, AWS-RunPatchBaselineWithHooks dokumen memanggil modul Python, yang pada gilirannya mengunduh snapshot dari baseline patch yang berlaku untuk node terkelola. Selanjutnya, subproses Python memanggil CLI pada node untuk mengambil instalasi dan memperbarui informasi untuk manajer paket yang ditentukan dan untuk mendorong manajer paket yang sesuai untuk setiap paket pembaruan.

Windows Server

Pada node Windows Server terkelola, AWS-RunPatchBaselineWithHooks dokumen mengunduh dan memanggil PowerShell modul, yang pada gilirannya mengunduh snapshot dari baseline patch yang berlaku untuk node terkelola. snapshot dasar patch ini berisi daftar patch yang disetujui yang dikumpulkan dengan melakukan kueri dasar patch pada server Windows Server Update Services (WSUS). Daftar ini diteruskan ke API Windows Update, yang mengendalikan pengunduhan dan instalasi patch yang disetujui sesuai kebutuhan.

Setiap snapshot khusus untuk, grup patch Akun AWS, sistem operasi, dan ID snapshot. Snapshot dikirimkan melalui URL Amazon Simple Storage Service (Amazon S3) yang telah ditandatangani sebelumnya, yang kedaluwarsa 24 jam setelah snapshot dibuat. Namun, setelah URL kedaluwarsa, jika Anda ingin menerapkan konten snapshot yang sama ke node terkelola lainnya, Anda dapat membuat URL Amazon S3 baru yang telah ditetapkan sebelumnya hingga tiga hari setelah snapshot dibuat. Untuk melakukannya, gunakan perintah get-deployable-patch-snapshot-for-instance.

Setelah semua pembaruan yang disetujui dan berlaku telah diinstal, dengan reboot dilakukan seperlunya, informasi kepatuhan tambalan dihasilkan pada node yang dikelola dan dilaporkan kembali kePatch Manager.

catatan

Jika RebootOption parameter disetel ke NoReboot dalam AWS-RunPatchBaselineWithHooks dokumen, node terkelola tidak di-boot ulang setelah Patch Manager dijalankan. Untuk informasi selengkapnya, lihat Nama parameter: RebootOption.

Untuk informasi tentang melihat data kepatuhan patch, lihat Tentang kepatuhan patch.

Langkah-langkah operasional AWS-RunPatchBaselineWithHooks

Saat AWS-RunPatchBaselineWithHooks berjalan, langkah-langkah berikut dilakukan:

  1. Pindai - Scan Operasi yang AWS-RunPatchBaseline digunakan dijalankan pada node terkelola, dan laporan kepatuhan dibuat dan diunggah.

  2. Verifikasi status patch lokal - Script dijalankan untuk menentukan langkah-langkah apa yang akan dilakukan berdasarkan operasi yang dipilih dan hasil Scan dari Langkah 1.

    1. Jika operasi yang dipilih adalah Scan, operasi ditandai selesai. Operasi berakhir.

    2. Jika operasi yang dipilih adalahInstall, Patch Manager mengevaluasi Scan hasil dari Langkah 1 untuk menentukan apa yang akan dijalankan selanjutnya:

      1. Jika tidak terdeteksi ada patch yang hilang, dan tidak perlu reboot tertunda, operasi langsung melanjutkan ke langkah terakhir (Langkah 8), yang mencakup kait yang telah Anda berikan. Setiap langkah yang ada di antaranya dilewati.

      2. Jika tidak terdeteksi ada patch yang hilang, tapi ada reboot tertunda yang diperlukan dan opsi reboot yang dipilih adalah NoReboot, operasi langsung melanjutkan ke langkah terakhir (Langkah 8), yang mencakup kait yang telah Anda berikan. Setiap langkah yang ada di antaranya dilewati.

      3. Jika tidak, operasi dilanjutkan ke langkah berikutnya.

  3. Operasi kait pra-tambalan - Dokumen SSM yang telah Anda sediakan untuk hook siklus hidup pertama,PreInstallHookDocName, dijalankan pada node terkelola.

  4. Instal dengan NoReboot - Install Operasi dengan opsi reboot untuk NoReboot menggunakan AWS-RunPatchBaseline dijalankan pada node yang dikelola, dan laporan kepatuhan dibuat dan diunggah.

  5. Operasi kait pasca-instal - Dokumen SSM yang telah Anda sediakan untuk hook siklus hidup kedua,PostInstallHookDocName, dijalankan pada node terkelola.

  6. Verifikasi reboot - Skrip berjalan untuk menentukan apakah reboot diperlukan untuk node terkelola dan langkah-langkah apa yang harus dijalankan:

    1. Jika opsi reboot yang dipilih adalah NoReboot, operasi langsung melanjutkan ke langkah terakhir (Langkah 8), yang mencakup kait yang telah Anda berikan. Setiap langkah yang ada di antaranya dilewati.

    2. Jika opsi reboot yang dipilih adalahRebootIfNeeded, Patch Manager periksa apakah ada reboot tertunda yang diperlukan dari inventaris yang dikumpulkan di Langkah 4. Ini berarti bahwa operasi berlanjut ke Langkah 7 dan node terkelola di-boot ulang dalam salah satu kasus berikut:

      1. Patch Managermemasang satu atau lebih tambalan. (Patch Managertidak mengevaluasi apakah reboot diperlukan oleh tambalan. Sistem di-boot ulang bahkan jika tambalan tidak memerlukan reboot.)

      2. Patch Managermendeteksi satu atau lebih tambalan dengan status INSTALLED_PENDING_REBOOT selama operasi Instal. INSTALLED_PENDING_REBOOTStatus dapat berarti bahwa opsi NoReboot dipilih saat terakhir kali operasi Instal dijalankan, atau tambalan dipasang di luar Patch Manager sejak terakhir kali node terkelola di-boot ulang.

      Jika tidak ada patch yang memenuhi kriteria ini ditemukan, operasi patch node terkelola selesai, dan operasi berlanjut langsung ke langkah terakhir (Langkah 8), yang mencakup hook yang telah Anda berikan. Setiap langkah yang ada di antaranya dilewati.

  7. Reboot dan laporkan - Operasi instalasi dengan opsi reboot RebootIfNeeded berjalan pada node terkelola menggunakanAWS-RunPatchBaseline, dan laporan kepatuhan dibuat dan diunggah.

  8. Operasi kait pasca-reboot - Dokumen SSM yang telah Anda sediakan untuk hook siklus hidup ketiga,OnExitHookDocName, dijalankan pada node terkelola.

Untuk operasi Scan, jika Langkah 1 gagal, proses menjalankan dokumen berhenti dan langkah tersebut dilaporkan gagal, meskipun langkah-langkah berikutnya dilaporkan sebagai sukses.

Untuk operasi Install, jika salah satu langkah aws:runDocument gagal selama operasi, langkah-langkah tersebut dilaporkan gagal, dan operasi langsung melanjutkan ke langkah terakhir (Langkah 8), yang mencakup kait yang telah Anda berikan. Setiap langkah yang ada di antaranya dilewati. Langkah ini dilaporkan gagal, langkah terakhir melaporkan status hasil operasi, dan semua langkah di antaranya dilaporkan sebagai sukses.

Parameter AWS-RunPatchBaselineWithHooks

AWS-RunPatchBaselineWithHooks support enam parameter.

parameter Operation diperlukan.

Parameter RebootOption, PreInstallHookDocName, PostInstallHookDocName, dan OnExitHookDocName bersifat opsional.

Snapshot-ID secara teknis opsional, tetapi kami merekomendasikan Anda untuk menyediakan nilai kustom untuknya ketika Anda menjalankan AWS-RunPatchBaselineWithHooks di luar jendela pemeliharaan. Biarkan Patch Manager memberikan nilai secara otomatis ketika dokumen dijalankan sebagai bagian dari operasi jendela pemeliharaan.

Nama parameter: Operation

Penggunaan: Wajib.

Opsi: Scan | Install.

Pemindaian

Ketika Anda memilih Scan opsi, sistem menggunakan AWS-RunPatchBaseline dokumen untuk menentukan status kepatuhan patch dari node terkelola dan melaporkan informasi ini kembali kePatch Manager. Scantidak meminta pembaruan untuk diinstal atau node yang dikelola untuk di-boot ulang. Sebaliknya, operasi mengidentifikasi di mana pembaruan hilang yang disetujui dan berlaku untuk node.

Menginstal

Ketika Anda memilih Install opsi, AWS-RunPatchBaselineWithHooks mencoba untuk menginstal pembaruan yang disetujui dan berlaku yang hilang dari node terkelola. Informasi kepatuhan patch yang dihasilkan sebagai bagian operasi Install tidak mencantumkan pembaruan yang hilang, tetapi mungkin melaporkan pembaruan yang berstatus gagal jika instalasi pembaruan tidak berhasil karena alasan apa pun. Setiap kali pembaruan diinstal pada node terkelola, node di-reboot untuk memastikan pembaruan diinstal dan aktif. (Pengecualian: Jika RebootOption parameter disetel ke NoReboot dalam AWS-RunPatchBaselineWithHooks dokumen, node terkelola tidak di-boot ulang setelah Patch Manager dijalankan. Untuk informasi lebih lanjut, lihatNama parameter: RebootOption.)

catatan

Jika patch yang ditentukan oleh aturan dasar diinstal sebelum Patch Manager memperbarui node terkelola, sistem mungkin tidak reboot seperti yang diharapkan. Hal ini dapat terjadi ketika patch diinstal secara manual oleh pengguna atau diinstal secara otomatis oleh program lain, seperti unattended-upgrades paket aktifUbuntu Server.

Nama parameter: Snapshot ID

Penggunaan: Opsional.

Snapshot IDadalah ID unik (GUID) yang digunakan oleh Patch Manager untuk memastikan bahwa satu set node terkelola yang ditambal dalam satu operasi semuanya memiliki set patch yang disetujui yang sama persis. Meskipun parameter didefinisikan sebagai opsional, rekomendasi praktik terbaik kami bergantung pada apakah Anda menjalankan AWS-RunPatchBaselineWithHooks atau tidak di jendela pemeliharaan, seperti yang dijelaskan dalam tabel berikut.

Praktik terbaik AWS-RunPatchBaselineWithHooks
Mode Praktik terbaik Detail
Menjalankan AWS-RunPatchBaselineWithHooks di dalam jendela pemeliharaan Jangan berikan ID Snapshot. Patch Managerakan memasoknya untuk Anda.

Jika Anda menggunakan jendela pemeliharaan untuk menjalankanAWS-RunPatchBaselineWithHooks, Anda seharusnya tidak memberikan ID Snapshot yang dibuat sendiri. Dalam skenario ini, Systems Manager menyediakan nilai GUID berdasarkan ID eksekusi jendela pemeliharaan. Hal ini memastikan bahwa digunakan ID yang benar untuk semua pemanggilan AWS-RunPatchBaselineWithHooks dalam jendela pemeliharaan tersebut.

Jika Anda menentukan nilai dalam skenario ini, perhatikan bahwa snapshot dari baseline patch mungkin tidak tetap di tempatnya selama lebih dari 3 hari. Setelah itu, snapshot baru akan dihasilkan bahkan jika Anda menentukan ID yang sama setelah snapshot berakhir.

Menjalankan AWS-RunPatchBaselineWithHooks di luar jendela pemeliharaan Menghasilkan dan menentukan nilai GUID kustom untuk ID Snapshot.¹

Bila Anda tidak menggunakan jendela pemeliharaan untuk menjalankanAWS-RunPatchBaselineWithHooks, kami sarankan Anda membuat dan menentukan ID Snapshot unik untuk setiap baseline patch, terutama jika Anda menjalankan AWS-RunPatchBaselineWithHooks dokumen pada beberapa node terkelola dalam operasi yang sama. Jika Anda tidak menentukan ID dalam skenario ini, Systems Manager akan menghasilkan ID Snapshot yang berbeda untuk setiap node terkelola tempat perintah dikirim. Hal ini dapat mengakibatkan berbagai set patch yang ditentukan di antara node.

Misalnya, katakanlah Anda menjalankan AWS-RunPatchBaselineWithHooks dokumen secara langsung melaluiRun Command, kemampuan AWS Systems Manager, dan menargetkan sekelompok 50 node terkelola. Menentukan ID Snapshot kustom menghasilkan pembuatan snapshot dasar tunggal yang digunakan untuk mengevaluasi dan menambal semua node yang dikelola, memastikan bahwa mereka berakhir dalam status yang konsisten.

¹ Anda dapat menggunakan alat yang mampu menghasilkan GUID untuk menghasilkan nilai untuk parameter ID Snapshot. Misalnya, di PowerShell, Anda dapat menggunakan New-Guid cmdlet untuk menghasilkan GUID dalam format. 12345699-9405-4f69-bc5e-9315aEXAMPLE

Nama parameter: RebootOption

Penggunaan: Opsional.

Pilihan: RebootIfNeeded | NoReboot

Default: RebootIfNeeded

Awas

Opsi default-nya adalah RebootIfNeeded. Pastikan untuk memilih opsi yang benar untuk kasus penggunaan Anda. Misalnya, jika node terkelola Anda harus segera reboot untuk menyelesaikan proses konfigurasi, pilihRebootIfNeeded. Atau, jika Anda perlu mempertahankan ketersediaan node terkelola hingga waktu reboot yang dijadwalkan, pilihNoReboot.

penting

Kami tidak menyarankan penggunaan Patch Manager untuk menambal instance cluster di Amazon EMR (sebelumnya disebut Amazon Elastic). MapReduce Secara khusus, jangan pilih RebootIfNeeded opsi untuk RebootOption parameter. (Opsi ini tersedia dalam dokumen Perintah SSM untuk ditambalAWS-RunPatchBaseline,AWS-RunPatchBaselineAssociation, danAWS-RunPatchBaselineWithHooks.)

Perintah yang mendasari untuk menambal menggunakan Patch Manager penggunaan yum dan dnf perintah. Oleh karena itu, operasi mengakibatkan ketidakcocokan karena bagaimana paket diinstal. Untuk informasi tentang metode yang disukai untuk memperbarui perangkat lunak di klaster EMR Amazon, lihat Menggunakan default untuk AMI Amazon EMR di Panduan Manajemen EMR Amazon.

RebootIfNeeded

Saat Anda memilih RebootIfNeeded opsi, node terkelola di-boot ulang dalam salah satu kasus berikut:

  • Patch Managermemasang satu atau lebih tambalan.

    Patch Managertidak mengevaluasi apakah reboot diperlukan oleh tambalan. Sistem di-boot ulang bahkan jika tambalan tidak memerlukan reboot.

  • Patch Managermendeteksi satu atau lebih tambalan dengan status INSTALLED_PENDING_REBOOT selama operasi. Install

    INSTALLED_PENDING_REBOOTStatus dapat berarti bahwa opsi NoReboot dipilih saat terakhir kali Install operasi dijalankan, atau tambalan dipasang di luar Patch Manager sejak terakhir kali node terkelola di-boot ulang.

Mem-boot ulang node terkelola dalam dua kasus ini memastikan bahwa paket yang diperbarui dikeluarkan dari memori dan menjaga perilaku patching dan reboot tetap konsisten di semua sistem operasi.

NoReboot

Ketika Anda memilih NoReboot opsi, Patch Manager tidak me-reboot node terkelola bahkan jika itu menginstal tambalan selama Install operasi. Opsi ini berguna jika Anda tahu bahwa node terkelola Anda tidak memerlukan reboot setelah tambalan diterapkan, atau Anda memiliki aplikasi atau proses yang berjalan pada node yang seharusnya tidak terganggu oleh reboot operasi patching. Ini juga berguna ketika Anda ingin lebih banyak kontrol atas waktu reboot node terkelola, seperti dengan menggunakan jendela pemeliharaan.

catatan

Jika Anda memilih opsi NoReboot dan sebuah patch diinstal, patch diberikan status InstalledPendingReboot. Node yang dikelola itu sendiri, bagaimanapun, ditandai sebagaiNon-Compliant. Setelah reboot terjadi dan Scan operasi dijalankan, status node diperbarui keCompliant.

File pelacakan instalasi patch: Untuk melacak instalasi patch, terutama patch yang diinstal sejak reboot sistem terakhir, Systems Manager memelihara file pada node terkelola.

penting

Jangan menghapus atau memodifikasi file pelacakan. Jika file ini dihapus atau rusak, laporan kepatuhan patch untuk node terkelola tidak akurat. Jika ini terjadi, reboot node dan jalankan operasi Pindai tambalan untuk memulihkan file.

File pelacakan ini disimpan di lokasi berikut pada node terkelola Anda:

  • Sistem operasi Linux:

    • /var/log/amazon/ssm/patch-configuration/patch-states-configuration.json

    • /var/log/amazon/ssm/patch-configuration/patch-inventory-from-last-operation.json

  • Sistem operasi Windows Server:

    • C:\ProgramData\Amazon\PatchBaselineOperations\State\PatchStatesConfiguration.json

    • C:\ProgramData\Amazon\PatchBaselineOperations\State\PatchInventoryFromLastOperation.json

Nama parameter: PreInstallHookDocName

Penggunaan: Opsional.

Default: AWS-Noop.

Nilai untuk disediakan untuk parameter PreInstallHookDocName adalah nama atau Amazon Resource Name (ARN) dari dokumen SSM pilihan Anda. Anda dapat memberikan nama dokumen AWS terkelola atau nama atau ARN dari dokumen SSM khusus yang telah Anda buat atau yang telah dibagikan dengan Anda. (Untuk dokumen SSM yang telah dibagikan dengan Anda dari yang berbeda Akun AWS, Anda harus menentukan ARN sumber daya lengkap, sepertiarn:aws:ssm:us-east-2:123456789012:document/MySharedDocument.)

Dokumen SSM yang Anda tentukan dijalankan sebelum Install operasi dan melakukan tindakan apa pun yang didukungSSM Agent, seperti skrip shell untuk memeriksa pemeriksaan kesehatan aplikasi sebelum penambalan dilakukan pada node terkelola. (Untuk daftar tindakan, lihat Referensi plugin dokumen perintah). Nama dokumen SSM default adalahAWS-Noop, yang tidak melakukan operasi apa pun pada node terkelola.

Untuk informasi tentang membuat dokumen SSM kustom, lihat Membuat konten dokumen SSM.

Nama parameter: PostInstallHookDocName

Penggunaan: Opsional.

Default: AWS-Noop.

Nilai untuk disediakan untuk parameter PostInstallHookDocName adalah nama atau Amazon Resource Name (ARN) dari dokumen SSM pilihan Anda. Anda dapat memberikan nama dokumen AWS terkelola atau nama atau ARN dari dokumen SSM khusus yang telah Anda buat atau yang telah dibagikan dengan Anda. (Untuk dokumen SSM yang telah dibagikan dengan Anda dari yang berbeda Akun AWS, Anda harus menentukan ARN sumber daya lengkap, sepertiarn:aws:ssm:us-east-2:123456789012:document/MySharedDocument.)

Dokumen SSM yang Anda tentukan dijalankan setelah Install with NoReboot operasi dan melakukan tindakan apa pun yang didukung olehSSM Agent, seperti skrip shell untuk menginstal pembaruan pihak ketiga sebelum reboot. (Untuk daftar tindakan, lihat Referensi plugin dokumen perintah). Nama dokumen SSM default adalahAWS-Noop, yang tidak melakukan operasi apa pun pada node terkelola.

Untuk informasi tentang membuat dokumen SSM kustom, lihat Membuat konten dokumen SSM.

Nama parameter: OnExitHookDocName

Penggunaan: Opsional.

Default: AWS-Noop.

Nilai untuk disediakan untuk parameter OnExitHookDocName adalah nama atau Amazon Resource Name (ARN) dari dokumen SSM pilihan Anda. Anda dapat memberikan nama dokumen AWS terkelola atau nama atau ARN dari dokumen SSM khusus yang telah Anda buat atau yang telah dibagikan dengan Anda. (Untuk dokumen SSM yang telah dibagikan dengan Anda dari Akun AWS berbeda, Anda harus menentukan ARN sumber daya lengkap, seperti arn:aws:ssm:us-east-2:123456789012:document/MySharedDocument.)

Dokumen SSM yang Anda tentukan dijalankan setelah operasi reboot node terkelola dan melakukan tindakan apa pun yang didukungSSM Agent, seperti skrip shell untuk memverifikasi kesehatan node setelah operasi patching selesai. (Untuk daftar tindakan, lihat Referensi plugin dokumen perintah). Nama dokumen SSM default adalahAWS-Noop, yang tidak melakukan operasi apa pun pada node terkelola.

Untuk informasi tentang membuat dokumen SSM kustom, lihat Membuat konten dokumen SSM.