Panduan: Membuat jendela pemeliharaan untuk memperbaruiSSM Agent (AWS CLI) - AWS Systems Manager

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

Panduan: Membuat jendela pemeliharaan untuk memperbaruiSSM Agent (AWS CLI)

Panduan berikut menunjukkan cara menggunakan AWS Command Line Interface (AWS CLI) untuk membuat jendela pemeliharaan AWS Systems Manager. Panduan juga menjelaskan cara mendaftarkan node terkelola Anda sebagai target dan mendaftarkanRun Command tugas Systems Manager untuk memperbaruiSSM Agent.

Sebelum Anda memulai

Sebelum menyelesaikan prosedur berikut, Anda harus memiliki izin administrator pada node yang ingin Anda konfigurasikan atau telah diberi izin yang sesuai diAWS Identity and Access Management (IAM). Sebelum Anda menyelesaikan prosedur berikut, pastikan Anda memiliki setidaknya satu node terkelola untuk Linux atauWindows Server yang dikonfigurasi untuk Systems Manager di lingkungan hibrid dan multicloud. Untuk informasi selengkapnya, lihat Menyiapkan AWS Systems Manager.

Langkah 1: Memulai

Untuk menjalankan perintah menggunakan AWS CLI
  1. Instal dan konfigurasikanAWS Command Line Interface (AWS CLI), jika Anda belum melakukannya.

    Untuk informasi, lihat Menginstal atau memperbarui versi terbaru dariAWS CLI.

  2. Pastikan node siap untuk didaftarkan sebagai target untuk jendela pemeliharaan.

    Jalankan perintah berikut untuk melihat node mana yang online.

    aws ssm describe-instance-information --query "InstanceInformationList[*]"

    Jalankan perintah berikut untuk melihat detail tentang node tertentu.

    aws ssm describe-instance-information --instance-information-filter-list key=InstanceIds,valueSet=instance-id

Langkah 2: Membuat jendela pemeliharaan

Gunakan prosedur berikut untuk membuat jendela pemeliharaan dan menentukan pilihan dasarnya, seperti jadwal dan durasi.

Membuat jendela pemeliharaan (AWS CLI)
  1. Buka AWS CLI dan jalankan perintah berikut untuk membuat jendela pemeliharaan yang berjalan setiap minggu pada hari Minggu pukul 02.00, di zona waktu Pasifik Amerika Serikat, dengan satu jam cutoff.

    Linux & macOS
    aws ssm create-maintenance-window \ --name "My-First-Maintenance-Window" \ --schedule "cron(0 2 ? * SUN *)" \ --duration 2 \ --schedule-timezone "America/Los_Angeles" \ --cutoff 1 \ --no-allow-unassociated-targets
    Windows
    aws ssm create-maintenance-window ^ --name "My-First-Maintenance-Window" ^ --schedule "cron(0 2 ? * SUN *)" ^ --duration 2 ^ --schedule-timezone "America/Los_Angeles" ^ --cutoff 1 ^ --no-allow-unassociated-targets

    Untuk informasi lebih lanjut tentang cara membuat ekspresi cron untuk parameter schedule, lihat Referensi: Ekspresi cron dan rate untuk Systems Manager.

    Untuk penjelasan tentang cara berbagai pilihan terkait jadwal untuk windows pemeliharaan berkaitan satu sama lain, lihat Penjadwalan jendela pemeliharaan dan pilihan periode aktif.

    Untuk informasi lebih lanjut tentang penggunaan pilihan --schedule, lihat Referensi: Ekspresi cron dan rate untuk Systems Manager.

    Sistem mengembalikan informasi seperti berikut.

    {
       "WindowId":"mw-0c50858d01EXAMPLE"
    }
  2. Untuk mencantumkan ini dan setiap jendela pemeliharaan lainnya yang dibuat di Akun AWS di Wilayah AWS Anda saat ini, jalankan perintah berikut.

    aws ssm describe-maintenance-windows

    Sistem mengembalikan informasi seperti berikut.

    {
        "WindowIdentities": [
            {
                "Cutoff": 1,
                "Name": "My-First-Maintenance-Window",
                "NextExecutionTime": "2019-02-03T02:00-08:00",
                "Enabled": true,
                "WindowId": "mw-0c50858d01EXAMPLE",
                "Duration": 2
            }
        ]
    }

Langkah 3: Mendaftarkan target jendela pemeliharaan (AWS CLI)

Gunakan prosedur berikut untuk mendaftarkan target dengan jendela pemeliharaan yang Anda buat di Langkah 2. Dengan mendaftarkan target, Anda menentukan node mana yang diperbarui.

Untuk mendaftarkan target jendela pemeliharaan (AWS CLI)
  1. Jalankan perintah berikut. Ganti setiap contoh placeholder sumber daya dengan informasi Anda sendiri.

    Linux & macOS
    aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" \ --resource-type "INSTANCE"
    Windows
    aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" ^ --resource-type "INSTANCE"

    Sistem mengembalikan informasi seperti berikut, yang menyertakan ID target jendela pemeliharaan. Salin atau catat nilai WindowTargetId. Anda harus menentukan ID ini di langkah berikutnya untuk mendaftarkan tugas bagi jendela pemeliharaan ini.

    {
       "WindowTargetId":"1a2b3c4d-1a2b-1a2b-1a2b-1a2b3c4d-1a2"
    }
    Perintah alternatif

    Gunakan perintah berikut untuk mendaftarkan beberapa node terkelola.

    Linux & macOS
    aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE" \ --resource-type "INSTANCE"
    Windows
    aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE" ^ --resource-type "INSTANCE"

    Gunakan perintah berikut untuk mendaftarkan node dengan menggunakan tag.

    Linux & macOS
    aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --targets "Key=tag:Environment,Values=Prod" "Key=tag:Role,Values=Web" \ --resource-type "INSTANCE"
    Windows
    aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --targets "Key=tag:Environment,Values=Prod" "Key=tag:Role,Values=Web" ^ --resource-type "INSTANCE"
  2. Jalankan perintah berikut untuk menampilkan target untuk jendela pemeliharaan.

    aws ssm describe-maintenance-window-targets --window-id "mw-0c50858d01EXAMPLE"

    Sistem mengembalikan informasi seperti berikut ini.

    {
        "Targets": [
            {
                "ResourceType": "INSTANCE",
                "WindowId": "mw-0c50858d01EXAMPLE",
                "Targets": [
                    {
                        "Values": [
                            "i-02573cafcfEXAMPLE"
                        ],
                        "Key": "InstanceIds"
                    }
                ],
                "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            },
            {
                "ResourceType": "INSTANCE",
                "WindowId": "mw-0c50858d01EXAMPLE",
                "Targets": [
                    {
                        "Values": [
                            "Prod"
                        ],
                        "Key": "tag:Environment"
                    },
                    {
                        "Values": [
                            "Web"
                        ],
                        "Key": "tag:Role"
                    }
                ],
                "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            }
        ]
    }

Langkah 4: MendaftarkanRun Command tugas agar jendela pemeliharaan diperbaruiSSM Agent

Gunakan prosedur berikut untuk mendaftarkanRun Command tugas untuk jendela pemeliharaan yang Anda buat di Langkah 2. Run CommandTugas memperbaruiSSM Agent target terdaftar.

Untuk mendaftarkanRun Command tugas agar jendela pemeliharaan memperbaruiSSM Agent (AWS CLI)
  1. Jalankan perintah berikut untuk mendaftarkanRun Command tugas untuk jendela pemeliharaan menggunakanWindowTargetId nilai di Langkah 3. Ganti setiap contoh placeholder sumber daya dengan informasi Anda sendiri. Pembaruan tugasSSM Agent dengan menggunakanAWS-UpdateSSMAgent dokumen.

    Linux & macOS
    aws ssm register-task-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --task-arn "AWS-UpdateSSMAgent" \ --name "UpdateSSMAgent" \ --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \ --service-role-arn "arn:aws:iam:account-id:role/MW-Role" \ --task-type "RUN_COMMAND" \ --max-concurrency 1 --max-errors 1 --priority 10
    Windows
    aws ssm register-task-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --task-arn "AWS-UpdateSSMAgent" ^ --name "UpdateSSMAgent" ^ --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^ --service-role-arn "arn:aws:iam:account-id:role/MW-Role" ^ --task-type "RUN_COMMAND" ^ --max-concurrency 1 --max-errors 1 --priority 10
    catatan

    Jika target yang Anda daftarkan pada langkah sebelumnya adalahWindows Server 2012 R2 atau yang lebih lama, Anda harus menggunakan dokumen AWS-UpdateEC2Config.

    Sistem mengembalikan informasi seperti berikut.

    {
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
    }
  2. Jalankan perintah berikut untuk mencantumkan semua tugas terdaftar untuk jendela pemeliharaan.

    aws ssm describe-maintenance-window-tasks --window-id "mw-0c50858d01EXAMPLE"

    Sistem mengembalikan informasi seperti berikut ini.

    {
        "Tasks": [
            {
                "ServiceRoleArn": "arn:aws:iam::111122223333:role/MW-Role",
                "MaxErrors": "1",
                "TaskArn": "AWS-UpdateSSMAgent",
                "MaxConcurrency": "1",
                "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
                "TaskParameters": {},
                "Priority": 10,
                "WindowId": "mw-0c50858d01EXAMPLE",
                "Type": "RUN_COMMAND",
                "Targets": [
                    {
                        "Values": [
                            "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
                        ],
                        "Key": "WindowTargetIds"
                    }
                ],
                "Name": "UpdateSSMAgent"
            }
        ]
    }