Hanya menjawab bagian restart layanan. Saya menemukan Monit juga, tetapi pada CentOS 7 systemd mengurus semua itu untuk Anda. Anda hanya perlu menambahkan dua baris ini ke file .service (jika belum ada di sana):
Restart=always
RestartSec=3
Lihat https://jonarcher.info/2015/08/ensure-systemd-services-restart-on-failure/ untuk referensi.
Jika Anda ingin membuat layanan systemd kustom, cukup mudah untuk menulis file layanan Anda sendiri. Lihat contoh di bawah ini, untuk server http khusus.
Mulai editor dengan file layanan baru:
vim /etc/systemd/system/httpd.service
Dan tambahkan konten berikut, yang dapat Anda edit sesuai kebutuhan:
[Unit]
Description=My httpd Service
After=network.target
[Service]
Type=simple
User=root
Environment=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
Environment=PERLLIB=/perl
ExecStart=/bin/httpd /etc/httpd.conf
Restart=always
RestartSec=3
[Install]
WantedBy=multi-user.target
Saya ingin memulai secara otomatis saat boot:
systemctl enable httpd
Beri tahu systemd tentang perubahan dan mulai layanan:
systemctl daemon-reload
systemctl start httpd
Dan sekarang Anda dapat melihat statusnya:
systemctl status httpd
Untuk referensi, lihat https://scottlinux.com/2014/12/08/how-to-create-a-systemd-service-in-linux-centos-7/