Saya memiliki skrip Python yang sangat sederhana yang saya ingin selalu berjalan di server Ubuntu 12.04 saya. Saya berpikir untuk menggunakan + pemula monit. Masalahnya adalah alat-alat itu tampak agak rumit untuk makhluk hidup sederhana seperti saya, dan saya tidak dapat menemukan contoh sederhana di web.
Apakah pemula + monit berlebihan? Apakah ada yang tahu alternatif yang lebih sederhana, atau tutorial yang bagus untuk pemula + monit? Jika saya hanya ingin memastikan skrip selalu berjalan, apakah diperlukan monit sama sekali?
python
upstart
monitoring
sebpiq
sumber
sumber
Jawaban:
Cara paling sederhana untuk melakukan ini adalah menempatkan ini di
/etc/init/something.conf
:Respawn akan memulai kembali jika terbunuh atau keluar tidak nol (seperti pengecualian yang tidak tertangkap). Ini akan bekerja kembali ke Ubuntu 10,04.
Jika Anda memiliki 12,04 Anda bisa mendapatkan lebih banyak. Di atas akan menjalankan skrip Anda sebagai root. Dalam 12,04 Anda dapat menambahkan setuid / setgid:
Jika skrip Anda keluar ketika tidak ada jaringan yang tersedia dan Anda berencana untuk menjalankannya pada koneksi jaringan yang tidak stabil, Anda harus memperbaikinya dan membuatnya tetap hidup / coba lagi. Tetapi jika Anda tidak bisa, Anda mungkin perlu menjalankannya secara manual setiap kali perangkat jaringan muncul. Jadi Anda dapat menempatkan ini di
/etc/network/if-up.d/yourscript
(membuatnya dapat dieksekusi dengan chmod + x)Di mana skrip Anda adalah sesuatu yang sewenang-wenang dan unik untuk skrip khusus ini, dan "sesuatu" sama dengan nama pekerjaan (seperti yang
/etc/init/something.conf
disarankan sebelumnya).sumber
upstart
benar? Apakah ini berarti bahwa skrip juga akan dimulai saat boot (yang akan lebih bagus!)? Danrespawn
apakah cukup sehingga Anda tidak perlu melakukan pengaturanmonit
?Pendekatan yang biasa dari masa lalu adalah menulis file yang berisi cap waktu atau id proses
/tmp
dan kemudian memeriksa apakah id proses ini masih berjalan atau hormat jika cap waktu masih baru.Anda juga dapat melakukan yang sederhana
while [ 1 ]; do phyton-script.ph; done
yang akan me-restart script jika itu kembali.Untuk kemungkinan lebih lanjut silakan berikan informasi lebih lanjut tentang skrip Anda. Terutama pada mengapa Anda mengharapkannya untuk keluar atau crash secara tak terduga.
sumber