GNU/Linux >> Belajar Linux >  >> Linux

Jalankan skrip bash setelah instans EC2 melakukan booting

Solusi 1:

Saya sarankan hanya menggunakan opsi data pengguna untuk ec2-run-instances . Ini memungkinkan Anda memberikan semacam skrip ke VM yang akan dijalankan pada boot pertama. Jika Anda menggunakan ubuntu atau debian, Anda dapat menggunakan cloud-init, yang memoles prosesnya dengan baik. Jika menggunakan cloud-init, Anda dapat menggunakan [runcmd] bagian dari file konfigurasi untuk menentukan perintah sewenang-wenang untuk dijalankan setelah boot.

Terima kasih kepada pengguna SF Eric Hammond untuk halaman data pengguna. Lihat situsnya - situs ini memiliki banyak informasi tentang AWS.

Sunting:Setelah membaca ulang, tidak jelas apakah Anda ingin menjalankan perintah pada boot awal atau pada setiap boot. Instruksi di atas hanya berlaku untuk boot awal. Jika Anda ingin menjalankan perintah pada setiap boot, Anda memiliki beberapa opsi - Anda dapat menjalankan perintah melalui @reboot cron, atau sebagai alternatif, Anda dapat menambahkan skrip ke /etc/rc.local , yang akan dijalankan setiap kali sistem melakukan booting.

Solusi 2:

Jika Anda menggunakan AMI yang memiliki cloud-init paket diinstal (seperti Amazon Linux atau Ubuntu) maka Anda cukup meneruskan skrip bash (yang dimulai dengan #!) sebagai file data pengguna dan akan berjalan secara otomatis di akhir proses booting.

Misalnya, bisa sesederhana:

ec2-run-instances                             \
  --user-data-file /home/root/beginProcess.sh \
  --key $USER                                 \
  ami-XXXXXXXX

Inilah artikel tempat saya memperkenalkan konsep skrip data pengguna, yang kini tersedia di AMI EC2 utama seperti Amazon Linux dan Ubuntu:http://aletic.com/2009/06/ec2-user-data-scripts

Sayangnya, sepertinya Anda ingin menggunakan RHEL AMI. Saya menjalankan salinannya dan tidak dapat menemukan referensi apa pun ke cloud-init atau menjalankan skrip data pengguna pada boot pertama, juga tidak melakukan pengujian untuk pekerjaan yang sama.

Saya tidak mengatakan Anda harus mengganti distro Linux hanya untuk ini, tetapi Amazon Linux didasarkan pada RHEL, sehingga mungkin cocok untuk Anda.

Inilah artikel yang saya tulis yang dapat membantu Anda men-debug skrip data pengguna Anda jika tidak berfungsi pertama kali:http://aletic.com/2010/12/ec2-user-data-output


Linux
  1. Skrip Init.d Tidak Dijalankan Saat Boot?

  2. Jalankan skrip bash sebagai daemon

  3. Jalankan skrip bash setelah login

  1. Jalankan perintah bash pada pipa jenkins

  2. Jalankan bagian dari skrip bash sebagai pengguna yang berbeda

  3. Apakah perintah dalam skrip bash berjalan secara paralel atau satu demi satu?

  1. skrip startup utorrent / jalankan utorrent saat boot – Ubuntu 14.04 / 14.10

  2. Ssh – Bagaimana Cara Menjalankan Script Segera Setelah Terhubung Melalui Ssh?

  3. Bagaimana saya bisa menjalankan perintah setelah boot?