Pemantauan sistem dengan notifikasi email

10

Saat ini saya memiliki Ubuntu Server 16.04 LTS dan saya ingin dapat menerima pemberitahuan email dengan informasi tentang penggunaan sumber daya di server saya. CPU, memori, swap, apa saja.

Saya mengerti bahwa saya dapat menggunakan Pandangan untuk pemantauan lokal tetapi saya tidak akan berada di konsol melihat informasi sepanjang waktu. Saya hanya perlu pemberitahuan email yang memberi tahu saya tentang sumber daya yang mencapai di atas nilai normal / kritis dan mendapatkan pemberitahuan.

Adakah yang tahu metode yang memungkinkan saya melakukan ini?

SersanSerk
sumber
netdata sangat cocok untuk kebutuhan Anda.
luv.preet

Jawaban:

13

Saya akan memberi Anda daftar kecil alat - sementara saya pribadi akan merekomendasikan Nagios seperti yang biasa saya lakukan. Muncul dengan basis pengguna yang besar, koleksi plug-in yang bagus, dll - tetapi saya telah mendengar hal-hal baik tentang Icinga juga.

Perlu diketahui bahwa pengaturan Nagios atau Icinga akan memakan waktu hingga Anda memiliki pengaturan yang berfungsi sempurna yang mencakup / memantau semua layanan Anda yang ada. Permulaannya kemungkinan besar tidak semudah itu, tetapi begitu Anda membuatnya bekerja, itu adalah pengaturan yang indah yang akan memberi tahu semua layanan yang Anda tentukan jika negara mengubah sehingga sesuatu yang dapat dilaporkan / didefinisikan sebagai kritis

Nama proyek & tautan

Pertama-tama - gambaran umum cepat:

Pengaturan Klien & Server

Perangkat lunak lain yang menarik

  • Perokok (terbatas fungsi-bijaksana)

Pengaturan host tunggal

Informasi Lebih Lanjut

Tentang nagios

Wikipedia menulis

Nagios / ˈnɑːɡiːoʊs /, sekarang dikenal sebagai Nagios Core, adalah aplikasi perangkat lunak komputer bebas dan sumber terbuka yang memantau sistem, jaringan, dan infrastruktur. Nagios menawarkan layanan pemantauan dan peringatan untuk server, sakelar, aplikasi, dan layanan. Ini memberi tahu pengguna ketika ada masalah dan memperingatkan mereka untuk kedua kalinya ketika masalah telah diselesaikan.

Contoh gambar - menampilkan 1 dari beberapa tampilan yang Anda miliki:

masukkan deskripsi gambar di sini

Ini adalah posting AskUbuntu yang bagus tentang Cara Memasang Nagios . Nagios Exchange menawarkan banyak koleksi plugin, tambahan, dokumentasi, ekstensi, dan banyak lagi.

Tentang Munin

Wikipedia menulis

Munin adalah aplikasi sistem komputer pemantauan dan sumber terbuka gratis, pemantauan jaringan dan perangkat lunak pemantauan infrastruktur. Ia menawarkan layanan pemantauan dan peringatan untuk server, sakelar, aplikasi, layanan, dll. Ini memberi tahu pengguna ketika ada masalah dan memperingatkan mereka untuk kedua kalinya ketika masalahnya telah diselesaikan

Contoh Gambar

masukkan deskripsi gambar di sini

Tentang Icinga

Wikipedia menulis

Icinga adalah sistem komputer sumber terbuka dan aplikasi pemantauan jaringan. Awalnya dibuat sebagai garpu aplikasi pemantauan sistem Nagios pada tahun 2009.

Icinga berusaha untuk melewati masa datang yang dirasakan dalam proses pengembangan Nagios, serta menambahkan fitur baru seperti antarmuka pengguna gaya Web 2.0 modern, konektor database tambahan (untuk MySQL, Oracle, dan PostgreSQL), dan REST API yang memungkinkan administrator mengintegrasikan banyak ekstensi tanpa modifikasi rumit dari inti Icinga.

Contoh Gambar menampilkan 1 dari beberapa tampilan:

masukkan deskripsi gambar di sini

Tentang Spiceworks

Wikipedia menulis:

Spiceworks adalah jaringan profesional untuk industri teknologi informasi (TI) yang berkantor pusat di Austin, Texas. Perusahaan ini didirikan pada Januari 2006 oleh Scott Abel, Jay Hallberg, Greg Kattawar, dan Francis Sullivan untuk membangun perangkat lunak manajemen TI.

Spiceworks adalah komunitas online tempat pengguna dapat berkolaborasi dan mencari saran satu sama lain dan juga terlibat dalam pasar untuk membeli layanan dan produk yang terkait dengan TI. Jaringan ini diperkirakan akan digunakan oleh lebih dari enam juta profesional TI dan 3.000 vendor teknologi.

Tentang monit

Wikipedia menulis

Monit adalah alat pengawasan proses sumber terbuka gratis untuk Unix dan Linux. Dengan Monit, status sistem dapat dilihat langsung dari baris perintah, atau melalui server web HTTP asli (S). Monit menjadi populer dengan Ruby on Rails dan server web Mongrel, [rujukan?] Karena alat diperlukan yang dapat mengelola banyak proses Mongrel identik yang perlu dijalankan untuk mendukung situs Ruby on Rails yang dapat diskalakan, dan Monit cukup unik. cocok untuk kebutuhan komunitas Ruby on Rails. Banyak situs Rails populer menggunakan Monit, termasuk Twitter dan scribd.

Tentang Cacti

Wikipedia menulis:

Cacti adalah open-source, pemantauan jaringan berbasis web dan alat grafik yang dirancang sebagai aplikasi front-end untuk open-source, alat data logging industri RRDtool. Cacti memungkinkan pengguna untuk polling layanan pada interval yang telah ditentukan dan grafik data yang dihasilkan. Biasanya digunakan untuk membuat grafik data time-series metrik seperti beban CPU dan pemanfaatan bandwidth jaringan. Penggunaan umum adalah untuk memantau lalu lintas jaringan dengan polling switch jaringan atau antarmuka router melalui Simple Network Management Protocol (SNMP).

Ujung depan dapat menangani beberapa pengguna, masing-masing dengan set grafik mereka sendiri, sehingga kadang-kadang digunakan oleh penyedia hosting web (terutama server khusus, server pribadi virtual, dan penyedia kolokasi) untuk menampilkan statistik bandwidth untuk pelanggan mereka. Itu dapat digunakan untuk mengkonfigurasi pengumpulan data itu sendiri, yang memungkinkan pengaturan tertentu untuk dimonitor tanpa konfigurasi manual RRDtool. Cacti dapat diperluas untuk memantau sumber apa pun melalui skrip shell dan file yang dapat dieksekusi.

Tentang Zabbix

Wikpedia menulis:

Zabbix adalah perangkat lunak pemantauan sumber terbuka perusahaan untuk jaringan dan aplikasi, yang dibuat oleh Alexei Vladishev. Ini dirancang untuk memantau dan melacak status berbagai layanan jaringan, server, dan perangkat keras jaringan lainnya.

Zabbix menggunakan MySQL, PostgreSQL, SQLite, Oracle atau IBM DB2 untuk menyimpan data. Backendnya ditulis dalam C dan frontend web ditulis dalam PHP. Zabbix menawarkan beberapa opsi pemantauan

dufte
sumber
3

Anda dapat menggunakan beberapa solusi. Salah satunya adalah monit.

Dari baris perintah, jalankan saja perintah berikut:

sudo apt-get install monit

Monit sekarang harus diinstal dan diakses melalui salah satu URL berikut:

http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)

Konfigurasi Monit

Sebelum Anda dapat mulai menggunakan Monitpemantauan server otomatis, Anda harus melakukan beberapa konfigurasi dasar. Pertama-tama buat cadangan Monitkonfigurasi default yang ada menggunakan perintah berikut:

sudo mv /etc/monit/monitrc /etc/monit/monitrc.bak

Selanjutnya, buat monitrcfile baru menggunakan perintah

sudo /etc/monit/monitrc 

dan salin konten berikut untuk itu.

# How often in seconds should monit check your services.
set daemon 120

set logfile /var/log/monit.log
set idfile /var/lib/monit/id
set statefile /var/lib/monit/state

# Configure your SMTP out server. 
set mailserver smtp-server.columbus.rr.com port 25,localhost

set eventqueue
    basedir /var/lib/monit/events # set the base directory where events will be stored
    # optionally limit the queue size
    slots 100 

# Use one of the following 2 lines. The second line alerts on every little change and can be annoying.
set alert [email protected] but not on { instance, pid, ppid } #does not send alert on pid changes
#set alert [email protected] 

set httpd port 2812 and
    #Change username and password
    allow Username:Password
    # To enable SSL for WebUI uncomment the next 2 lines
    #ssl enable
    #pemfile /path/to/unified/certificate.pem
    # To restrict access to localhost only uncomment the following line
    #allow localhost

include /etc/monit/conf.d/*

Baris yang dimulai dengan # adalah komentar untuk membantu Anda menyesuaikan konfigurasi. Pastikan Anda memiliki setidaknya admin email, SMTP server, dan port SMTP yang dikonfigurasi dengan benar. Anda juga harus mempertimbangkan untuk mengubah nama pengguna dan kata sandi WebUI Monit. Jika Anda memiliki sertifikat SSL, Anda dapat mengaktifkannya juga untuk akses HTTPS

Untuk saat ini gunakan perintah berikut untuk memastikan Monit berfungsi dengan baik.

Untuk menguji Monitkonfigurasi untuk kesalahan sintaks:

sudo monit -t

Untuk memulai Monit:

sudo monit

Untuk memeriksa Status Monit:

sudo monit status

Pemantauan Beban Sistem dengan Monit

Anda diharuskan memiliki instance Monit yang berfungsi dengan /etc/monit/monitrcfile yang tepat . Konfigurasi monit untuk berbagai layanan diambil dari /etc/monit/conf.dfolder. Untuk memantau pemuatan server Monit, buat Monitfile konfigurasi menggunakan perintah berikut:

sudo /etc/monit/conf.d/systemload

Salin konten berikut untuk itu, simpan, dan keluar

# domain.com could be IP, hostname, or localhost
check System domain.com
    if loadavg (1min) > 4 then alert
    if loadavg (5min) > 2 then alert
    if memory usage > 75% then alert
    if swap usage > 25% then alert
    if cpu usage (user) > 80% then alert
    if cpu usage (system) > 30% then alert
    if cpu usage (wait) > 20% then alert

Kode ini akan membuat MonitAnda mengirimkan peringatan email ketika salah satu kondisi di atas (mis. Memuat rata-rata >4untuk setidaknya 1 menit atau ketika lebih dari 75% RAMpenuh) terpenuhi. Anda dapat menyesuaikan aturan di atas sesuka Anda. Di bawah ini adalah contoh peringatan email yang dikirimkan Monitbersama dengan deskripsi kondisi apa yang menyebabkan peringatan itu.

Tes dan Muat Ulang Monit

Setelah Anda melakukan perubahan apa pun, Anda harus menguji Monitkonfigurasi:

sudo monit -t

Anda harus melihat pesan berikut: Control File Syntax OK.

Kemudian, periksa untuk melihat apakah Monitsudah berjalan menggunakan perintah berikut:

sudo /etc/init.d/monit status

Jika Monitsedang berjalan, muat ulang Monitkonfigurasi menggunakan perintah berikut:

sudo /etc/init.d/monit reload

Sekarang, jalankan browser web Anda dan kunjungi salah satu URL berikut tergantung pada bagaimana Monit Anda dikonfigurasi (pastikan untuk menggunakan nomor port yang benar):

http://localhost:2812
http://IPADDRESS:2812 (local network IP)
http://domain.com:2812 (if you have domain name pointing to your server)

Anda harus melihat status sistem, beban, beban CPU, Beban Memori, dan beban Tukar

Pemantauan Penyimpanan dengan Monit

Selanjutnya, Anda diharuskan memiliki Monitinstance yang berfungsi dengan /etc/monit/monitrcfile yang tepat . Monitkonfigurasi untuk berbagai layanan diambil dari /etc/monit/conf.dfolder. Untuk pemantauan ruang drive dengan Monit, create afile konfigurasi Monit` menggunakan perintah berikut:

sudo /etc/monit/conf.d/storagespace

Salin konten berikut untuk itu, simpan, dan keluar

# add each drive you want to monitor below
check filesystem Ubuntu with path /dev/sda1
    if space usage > 90% then alert
check filesystem Home with path /dev/sda3
    if space usage > 90% then alert
check filesystem Media with path /dev/sdb1
    if space usage > 90% then alert

Kode di atas akan memonitor ruang hard drive dalam 3 partisi dalam 2 drive. Jika salah satu dari mereka lebih dari 90% penuh, Anda akan mendapat peringatan.

Anda juga dapat memonitor layanan tertentu.

Monitor Apache Server dengan Monit

Menyiapkan pemantauan server Apache Monitadalah dengan Monit’stemplat konfigurasi yang dibuat sebelumnya. Yang harus Anda lakukan adalah menyalin template yang ada dari /etc/monit/monitrc.dke /etc/monit/conf.dfolder.

sudo cp /etc/monit/monitrc.d/apache2 /etc/monit/conf.d/

Alih-alih menyalin, Anda juga dapat membuat tautan simbolis. Proses pembuatan server web Apache apache2.pid. apache2.pidFile monitor kode di atas dan jika tidak ada, Monitakan mencoba me-restart Apache. Restart akan memicu peringatan email. Jika restart gagal beberapa kali maka Monit berhenti memonitor server Apache.

...

2707974
sumber
2

Anda juga dapat melihat SeaLion. Anda dapat mengatur lansiran khusus untuk penggunaan CPU, memori, dll. Selain itu, Anda juga dapat menambahkan metrik Anda sendiri dan mengonfigurasi pemberitahuan untuk mereka. Anda juga dapat menjadwalkan perintah untuk dijalankan pada interval tertentu dan melihat hasilnya di tampilan garis waktu. Anda dapat menemukannya di sini .

Araknid
sumber
1

Alat-alat di atas semuanya hebat dalam menghasilkan email. Saya lebih suka menerima email untuk pemantauan harian saya karena saya tidak ingin duduk dan menonton dasbor sepanjang hari. Masalahnya adalah Anda dibanjiri email dan Anda hanya tertarik ketika ada masalah. Juga bagaimana Anda tahu jika email karena alasan tertentu tidak pernah dikirimkan dan Anda pikir semuanya berfungsi dengan baik.

Saya telah lama mencari dan menemukan 2 produk yang dapat membaca laporan email Anda dan memperingatkan Anda ketika Anda perlu mengambil tindakan.

  1. PRTG Anda dapat mengatur filter email untuk mencari email yang berisi kata-kata tertentu. Agak rumit untuk dilakukan.
  2. Alat daring yang disebut wwww.smtpviewer.com benar-benar berfungsi dan ditambah dengan pengaturan batas waktu yang akan memperingatkan Anda ketika email dari perangkat Anda yang dipantau belum tiba untuk waktu yang ditentukan.
John Grobbelaar
sumber
Banyak klien email telah datang dengan kemampuan untuk memfilter, menyortir, menandai, ... surat. Jadi saya tidak benar-benar melihat perlunya solusi eksternal untuk ini. Saya telah menggunakan filter Thunderbird untuk melakukan ini selama bertahun-tahun sekarang, misalnya. Jika server surat mendukungnya, Anda juga dapat menggunakan skrip Saringan untuk memfilter, mengurutkan, menandai, ... surat-surat langsung di server.
Henning Kockerbeck
0

Di sekolah saya, guru kami memberi kami pelatihan Pandora FMS, solusi pemantauan yang mencakup pemantauan server, aplikasi, dan bahkan jaringan!

Saya hanya mengenal Zabbix dan Nagios pada saat itu, saya belum pernah mendengar solusi ini sebelumnya, tetapi sekarang saya mendasarkan proyek saya di dalamnya karena fitur tambahan yang disediakannya. Bagian pemantauan server benar-benar matang dan menurut saya, ini lebih mudah untuk mengkonfigurasi dan mendapatkan statistik kinerja SECEPATNYA: http://pandorafms.com/monitoring-solutions/server-monitoring/

mentah
sumber
-1 paket komersial ...
Fabby
0

Meskipun tidak persis melakukan apa yang Anda inginkan, saya menemukan logwatchalat yang sangat berguna, namun sederhana.

Ini memberi Anda ringkasan harian dari semua peristiwa yang telah terjadi di /var/logdirektori Anda serta beberapa informasi sistem penting lainnya seperti ruang disk saat ini. Apa pun yang hilang dapat ditambahkan dengan cukup sederhana (misalnya, saya telah menambahkan skrip yang memeriksa daemon tertentu masih berjalan).

Darren
sumber
0

Dari apa yang saya mengerti kebutuhan Anda sangat mendasar. Anda ingin mencari konten email pencarian teks untuk kata kunci tertentu dan kemudian diberitahu ketika ini terjadi. Jadi hanya ketika misalnya email berisi kata gagal Anda ingin diberi tahu dan tidak ketika itu berisi kesuksesan. Saya juga menggunakan www.smtpviewer.com sebagaimana disebutkan oleh John Grobbelaar untuk mendapatkan pemberitahuan. Keuntungan menggunakan alat online adalah Anda selalu dapat diberitahu ketika email yang diharapkan tidak tiba. Dari semua alat monitor surat yang saya mainkan dengan yang ini adalah yang paling sederhana dan hanya melakukan hal yang satu ini.

Dirk Hemmingway
sumber
Tampaknya ini tidak menjawab pertanyaan. Harap ulangi ini untuk menjawab pertanyaan, atau hapus jawaban ini / pindahkan ke komentar. Terima kasih, dan selamat datang di Tanya Ubuntu!
zwork