Memperbarui AMIs menggunakan Otomasi dan Jenkins - AWS Systems Manager

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

Memperbarui AMIs menggunakan Otomasi dan Jenkins

Jika organisasi Anda menggunakan Jenkins perangkat lunak dalam pipeline CI/CD, Anda dapat menambahkan Automation sebagai langkah pasca-build untuk pra-instal rilis aplikasi ke (). Amazon Machine Images AMIs Otomasi adalah kemampuan AWS Systems Manager. Anda juga dapat menggunakan fitur Jenkins penjadwalan untuk memanggil Otomasi dan membuat irama patching sistem operasi (OS) Anda sendiri.

Contoh di bawah ini menunjukkan cara memanggil Otomasi dari Jenkins server yang berjalan baik lokal atau di Amazon Elastic Compute Cloud (Amazon). EC2 Untuk autentikasi, Jenkins server menggunakan AWS kredensional berdasarkan IAM kebijakan yang Anda buat dalam contoh dan lampirkan ke profil instans Anda.

catatan

Pastikan untuk mengikuti praktik terbaik Jenkins keamanan saat mengonfigurasi instans Anda.

Sebelum Anda mulai

Selesaikan tugas-tugas berikut sebelum Anda mengonfigurasi Otomasi denganJenkins:

Untuk membuat IAM kebijakan untuk Jenkins server
  1. Masuk ke AWS Management Console dan buka IAM konsol di https://console.aws.amazon.com/iam/.

  2. Di panel navigasi, pilih Kebijakan dan kemudian pilih Buat kebijakan.

  3. Pilih JSONtab.

  4. Ganti masing-masing example resource placeholder dengan informasi Anda sendiri.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:StartAutomationExecution", "Resource": [ "arn:aws:ssm:region:account ID:document/UpdateMyLatestWindowsAmi", "arn:aws:ssm:region:account ID:automation-definition/UpdateMyLatestWindowsAmi:$DEFAULT" ] } ] }
  5. Pilih Tinjau kebijakan.

  6. Pada halaman Tinjau kebijakan, untuk Nama, masukkan nama untuk kebijakan inline, seperti JenkinsPolicy.

  7. Pilih Buat kebijakan.

  8. Di panel navigasi, pilih Peran.

  9. Pilih profil instance yang dilampirkan ke Jenkins server Anda.

  10. Di tab Izin, pilih Tambahkan izin dan pilih Lampirkan kebijakan.

  11. Di bagian Kebijakan izin lainnya, masukkan nama kebijakan yang Anda buat di langkah sebelumnya. Misalnya, JenkinsPolicy.

  12. Pilih kotak centang di samping kebijakan Anda, lalu pilih Lampirkan kebijakan.

Gunakan prosedur berikut untuk mengkonfigurasi AWS CLI pada Jenkins server Anda.

Untuk mengkonfigurasi Jenkins server untuk Otomasi
  1. Connect ke Jenkins server Anda pada port 8080 menggunakan browser pilihan Anda untuk mengakses antarmuka manajemen.

  2. Masukkan kata sandi yang ditemukan di /var/lib/jenkins/secrets/initialAdminPassword. Untuk menampilkan kata sandi Anda, jalankan perintah berikut.

    sudo cat /var/lib/jenkins/secrets/initialAdminPassword
  3. Skrip Jenkins instalasi mengarahkan Anda ke Jenkins halaman Customize. Pilih Pasang plugin yang disarankan.

  4. Setelah instalasi selesai, pilih Administrator Credentials, pilih Save Credentials, dan kemudian pilih Start Using. Jenkins

  5. Di panel navigasi kiri, pilih KelolaJenkins, lalu pilih Kelola Plugin.

  6. Pilih tab Tersedia, dan kemudian masukkan Amazon EC2 plugin.

  7. Pilih kotak centang untuk Amazon EC2 plugin, dan kemudian pilih Instal tanpa memulai ulang.

  8. Ketika instalasi selesai, pilih Kembali ke halaman atas.

  9. Pilih Kelola Jenkins, lalu pilih Kelola node dan awan.

  10. Di bagian Konfigurasi Awan, pilih Tambahkan cloud baru, lalu pilih Amazon EC2.

  11. Masukkan informasi Anda di bidang yang tersisa. Pastikan Anda memilih opsi Use EC2 instance profile to get credentials.

Gunakan prosedur berikut untuk mengonfigurasi Jenkins proyek Anda untuk menjalankan Otomasi.

Untuk mengonfigurasi Jenkins server Anda untuk memanggil Otomasi
  1. Buka Jenkins konsol di browser web.

  2. Pilih proyek yang ingin Anda konfigurasikan dengan Otomatisasi, lalu pilih Konfigurasi.

  3. Pada tab Membanguntab, pilihTambah Langkah Bangun.

  4. Pilih Eksekusi shell atau Eksekusi perintah batch Windows(tergantung pada sistem operasi Anda).

  5. Di bidang Command, jalankan AWS CLI perintah seperti berikut ini. Ganti masing-masing example resource placeholder dengan informasi Anda sendiri.

    aws ssm start-automation-execution \ --document-name runbook name \ --region Wilayah AWS of your source AMI \ --parameters runbook parameters

    Perintah contoh berikut menggunakan UpdateMyLatestWindowsAmirunbook dan Parameter Systems Manager yang latestAmi dibuat diPerbarui emas AMI menggunakan Otomasi, AWS Lambda, dan Parameter Store.

    aws ssm start-automation-execution \ --document-name UpdateMyLatestWindowsAmi \ --parameters \ "sourceAMIid='{{ssm:latestAmi}}'" --region region

    DalamJenkins, perintah terlihat seperti contoh di screenshot berikut.

    Contoh perintah dalam Jenkins perangkat lunak.
  6. Dalam Jenkins proyek, pilih Build Now. Jenkinsmengembalikan output mirip dengan contoh berikut.

    Contoh output perintah dalam Jenkins perangkat lunak.