View a markdown version of this page

Menulis buku runbook Otomasi - AWS Systems Manager

• AWS Systems Manager CloudWatch Dasbor tidak akan lagi tersedia setelah 30 April 2026. Pelanggan dapat terus menggunakan CloudWatch konsol Amazon untuk melihat, membuat, dan mengelola dasbor Amazon CloudWatch mereka, seperti yang mereka lakukan hari ini. Untuk informasi selengkapnya, lihat dokumentasi CloudWatch Dasbor Amazon.

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

Menulis buku runbook Otomasi

Setiap runbook di Automation mendefinisikan otomatisasi. Runbook otomatisasi menentukan tindakan yang dilakukan selama otomatisasi. Dalam konten runbook, Anda menentukan parameter input, output, dan tindakan yang dilakukan Manajer Sistem pada instans dan AWS sumber daya terkelola Anda.

Otomatisasi mencakup beberapa runbook yang telah ditentukan sebelumnya yang dapat Anda gunakan untuk melakukan tugas umum seperti memulai ulang satu atau beberapa instans Amazon Elastic Compute Cloud (Amazon EC2) atau membuat (). Amazon Machine Image AMI Namun, kasus penggunaan Anda mungkin melampaui kemampuan runbook yang telah ditentukan sebelumnya. Jika ini masalahnya, Anda dapat membuat runbook Anda sendiri dan memodifikasinya sesuai kebutuhan Anda.

Runbook terdiri dari tindakan otomatisasi, parameter untuk tindakan tersebut, dan parameter input yang Anda tentukan. Konten runbook ditulis dalam YAML atau JSON. Jika Anda tidak terbiasa dengan YAML atau JSON, sebaiknya gunakan perancang visual, atau pelajari lebih lanjut tentang salah satu bahasa markup sebelum mencoba membuat runbook Anda sendiri. Untuk informasi lebih lanjut tentang desainer visual, lihatPengalaman desain visual untuk runbook Otomasi.

Bagian berikut akan membantu Anda menulis runbook pertama Anda.

Identifikasi kasus penggunaan Anda

Langkah pertama dalam menulis runbook adalah mengidentifikasi kasus penggunaan Anda. Misalnya, Anda menjadwalkan AWS-CreateImage runbook untuk berjalan setiap hari di semua instans Amazon EC2 produksi Anda. Pada akhir bulan, Anda memutuskan Anda memiliki lebih banyak gambar daripada yang diperlukan untuk titik pemulihan. Ke depan, Anda ingin secara otomatis menghapus inst AMI ans Amazon EC2 tertua saat yang baru AMI dibuat. Untuk mencapai hal ini, Anda membuat runbook baru yang melakukan hal berikut:

  1. Menjalankan aws:createImage tindakan dan menentukan ID instance dalam deskripsi gambar.

  2. Menjalankan aws:waitForAwsResourceProperty tindakan untuk melakukan polling status gambar hingga gambaravailable.

  3. Setelah status gambaravailable, aws:executeScript tindakan menjalankan skrip Python khusus yang mengumpulkan ID semua gambar yang terkait dengan instans Amazon EC2 Anda. Skrip melakukan ini dengan memfilter, menggunakan ID instance dalam deskripsi gambar yang Anda tentukan saat pembuatan. Kemudian, skrip mengurutkan daftar ID gambar berdasarkan gambar dan mengeluarkan ID yang tertuaAMI. creationDate

  4. Terakhir, aws:deleteImage tindakan berjalan untuk menghapus yang tertua AMI menggunakan ID dari output langkah sebelumnya.

Dalam skenario ini, Anda sudah menggunakan AWS-CreateImage runbook tetapi menemukan bahwa kasus penggunaan Anda membutuhkan fleksibilitas yang lebih besar. Ini adalah situasi umum karena dapat ada tumpang tindih antara runbook dan tindakan otomatisasi. Akibatnya, Anda mungkin harus menyesuaikan runbook atau tindakan yang Anda gunakan untuk mengatasi kasus penggunaan Anda.

Misalnya, aws:invokeLambdaFunction tindakan aws:executeScript dan keduanya memungkinkan Anda menjalankan skrip khusus sebagai bagian dari otomatisasi Anda. Untuk memilih di antara mereka, Anda mungkin lebih suka aws:invokeLambdaFunction karena bahasa runtime tambahan yang didukung. Namun, Anda mungkin lebih suka aws:executeScript karena memungkinkan Anda untuk menulis konten skrip Anda langsung di runbook YAML dan menyediakan konten skrip sebagai lampiran untuk runbook JSON. Anda mungkin juga mempertimbangkan aws:executeScript untuk lebih sederhana dalam hal pengaturan AWS Identity and Access Management (IAM). Karena menggunakan izin yang disediakan diAutomationAssumeRole, aws:executeScript tidak memerlukan peran eksekusi AWS Lambda fungsi tambahan.

Dalam skenario tertentu, satu tindakan mungkin memberikan lebih banyak fleksibilitas, atau fungsionalitas tambahan, di atas yang lain. Oleh karena itu, kami menyarankan Anda meninjau parameter input yang tersedia untuk runbook atau tindakan yang ingin Anda gunakan untuk menentukan mana yang paling sesuai dengan kasus penggunaan dan preferensi Anda.

Siapkan lingkungan pengembangan Anda

Setelah Anda mengidentifikasi kasus penggunaan dan runbook atau tindakan otomatisasi yang telah ditentukan sebelumnya yang ingin Anda gunakan di runbook Anda, sekarang saatnya untuk menyiapkan lingkungan pengembangan Anda untuk konten runbook Anda. Untuk mengembangkan konten runbook Anda, sebaiknya gunakan konsol Dokumen Manajer Sistem sebagai pengganti. AWS Toolkit for Visual Studio Code

Toolkit untuk VS Code adalah ekstensi sumber terbuka untuk Visual Studio Code (VS Code) yang menawarkan lebih banyak fitur daripada konsol Documents Manager Systems. Fitur yang bermanfaat termasuk validasi skema untuk YAML dan JSON, cuplikan untuk jenis tindakan otomatisasi, dan dukungan pelengkapan otomatis untuk berbagai opsi di YAML dan JSON.

Untuk informasi selengkapnya tentang menginstal Toolkit untuk Kode VS, lihat Meng instal. AWS Toolkit for Visual Studio Code Untuk informasi selengkapnya tentang menggunakan Toolkit untuk VS Code untuk mengembangkan runbook, lihat Bek erja dengan dokumen Otomasi Manajer Sistem di Panduan AWS Toolkit for Visual Studio Code Pengguna.

Kembangkan konten runbook

Dengan kasus penggunaan Anda teridentifikasi dan pengaturan lingkungan, Anda siap mengembangkan konten untuk runbook Anda. Kasus penggunaan dan preferensi Anda sebagian besar akan menentukan tindakan otomatisasi atau runbook yang Anda gunakan dalam konten runbook Anda. Beberapa tindakan hanya mendukung subset parameter input bila dibandingkan dengan tindakan lain yang memungkinkan Anda menyelesaikan tugas serupa. Tindakan lain memiliki output tertentu, sepertiaws:createImage, di mana beberapa tindakan memungkinkan Anda untuk menentukan output Anda sendiri, sepertiaws:executeAwsApi.

Jika Anda tidak yakin cara menggunakan tindakan tertentu di runbook Anda, sebaiknya tinjau entri yang sesuai untuk tindakan diReferensi tindakan Otomatisasi Systems Manager. Kami juga merekomendasikan meninjau konten runbook yang telah ditentukan sebelumnya untuk melihat contoh dunia nyata tentang bagaimana tindakan ini digunakan. Untuk contoh lebih lanjut dari aplikasi runbook dunia nyata, lihatContoh runbook tambahan.

Untuk menunjukkan perbedaan dalam kesederhanaan dan fleksibilitas yang disediakan konten runbook, tutorial berikut memberikan contoh cara menambal grup instans Amazon EC2 secara bertahap:

  • Contoh 1: Membuat runbook orangtua-anak— Dalam contoh ini, dua runbook digunakan dalam hubungan orangtua-anak. Runbook induk memulai otomatisasi kontrol laju dari runbook anak.

  • Contoh 2: Runbook berskrip— Contoh ini menunjukkan bagaimana Anda dapat menyelesaikan tugas yang sama dari Contoh 1 dengan memadatkan konten menjadi satu runbook dan menggunakan skrip di runbook Anda.