Cara Health Check Server - OS Linux
Berperan sebagai IT Consultant yang objective-nya menjual beberapa produk mostly untuk beberapa Bank di Indonesia, saya dan tim akan berperan dari proses implementasi di beberapa environment mulai dari instalasi, configuration dan monitoring service
Namun setelah seluruh service sudah Go Live serta dipastikan berjalan dengan baik, tanggung jawab belum selesai sampai disitu saja. Saya dan tim juga akan melakukan maintainance pada server Production yang menampung service tersebut yang biasanya biasanya diadakan per 3 atau 4 bulan sekali.
Maintainance ini berupa proses Health Check yang kemudian di analisa untuk menciptakan output atau goals berupa summary dari hasil pengecekan seluruh status kinerja server. Outputnya berbentuk dokumen yang berisikan detail value, chart, persentase dari akumulasi keseluruhan server yang akan di olah menggunakan rumus tertentu.
Apa itu Health Check?
Seperti nama nya yaitu "Health Check" berarti memiliki arti pengecekan kesehatan. Mirip dengan Check Up yang kita lakukan secara rutin untuk mengetahui summary kesehatan tubuh. Namun health check server adalah proses pemeriksaan dan pengumpulan gambaran menyeluruh tentang kinerja dan status server. Ini melibatkan pemantauan spesifikasi perangkat keras, metrik, dan statistik kinerja server secara berkala.
Kegunaan Health Check?
Dengan melakukan health check secara rutin, Anda dapat mendeteksi dan mengatasi masalah potensial dengan aktif. Jadi, mirip dengan pemeriksaan kesehatan kita, server juga memerlukan perawatan agar tetap berfungsi optimal! Hal ini sebagai tindakan preventif mencegah service padam akibat status server yang down, sebagai contoh insiden karena memory usage yang critical.
Tindakan setelah Health Check?
Hasil health check yang berupa dokumentasi serta summary information, akan diserahkan ke pihak Bank untuk ditindaklanjuti proses pemulihannya. Apabila server masih dalam keadaan aman, tidak ada tindakan apapun yang akan dilakukan dari sisi Bank. Namun apabila sebaliknya, maka pihak Bank akan melakukan pemulihan berdasarkan insiden yang ditemukan ; dimana biasanya peran ini ditangani oleh Tim IT Ops.
Sebagai contoh insiden apabila disk usage sudah critical mungkin akan ditambahkan disk baru sebagai perluasan space , dsb.
____
Cara Health Check Server Manual
Apa saja komponen server yang akan di check?
- systemctl status iptables
Tujuan: Memeriksa status layanan iptables (aturan firewall).
Kegunaan: Memastikan aturan firewall berfungsi dengan baik. - systemctl status firewalld
Tujuan: Memeriksa status layanan firewalld (manajemen firewall).
Kegunaan: Memastikan manajemen firewall berjalan dengan benar. - sestatus
Tujuan: Menampilkan status dan mode SELinux.
Kegunaan: Memeriksa konfigurasi keamanan SELinux. - uptime
Tujuan: Menampilkan waktu aktif sistem dan rata-rata beban.
Kegunaan: Memantau kinerja server secara keseluruhan. - free -m
Tujuan: Menampilkan penggunaan memori dalam megabita.
Kegunaan: Memantau penggunaan memori. - service crond status
Tujuan: Memeriksa status daemon cron (tugas terjadwal).
Kegunaan: Memastikan tugas terjadwal berjalan dengan baik. - crontab -l
Tujuan: Menampilkan daftar pekerjaan cron pengguna.
Kegunaan: Memeriksa jadwal tugas terjadwal. - Navigasi ke direktori /etc/cron.d/
Tujuan: Menavigasi ke direktori cron.d.
Kegunaan: Melihat file-file konfigurasi cron. - df -ah
Tujuan: Menampilkan penggunaan ruang disk untuk semua sistem file yang dipasang.
Kegunaan: Memantau kapasitas penyimpanan. - route -n
Tujuan: Menampilkan tabel routing jaringan sistem.
Kegunaan: Memeriksa konfigurasi routing. - ntpstat
Tujuan: Memeriksa status sinkronisasi NTP (Network Time Protocol).
Kegunaan: Memastikan waktu sistem terkoreksi dengan benar. - cat /etc/resolv.conf
Tujuan: Menampilkan konfigurasi resolver DNS.
Kegunaan: Memeriksa pengaturan DNS. - ifconfig
Tujuan: Menampilkan konfigurasi antarmuka jaringan.
Kegunaan: Memantau status antarmuka jaringan. - top
Tujuan: Menampilkan penggunaan sumber daya sistem secara real-time (CPU, memori, dll.).
Kegunaan: Memantau kinerja sistem.
Cara Health Check Server Otomatis Menggunakan File .sh
Berikut script nya
#!/bin/bashecho "Process to record Healt Check information"FILE_NAME=$(hostname)_$(date '+%Y-%m-%d').txtDEFAULT_DIRNAME=$(pwd)DIRECTORY=$DEFAULT_DIRNAMEecho "Enter full path directory name [$DEFAULT_DIRNAME]"read DIRECTORY_NAMEif ! [ -z $DIRECTORY_NAME ]thenDIRECTORY=$DIRECTORY_NAMEfiif ! [ -d $DIRECTORY ]thenmkdir $DIRECTORY -pficd $DIRECTORYecho "Created directory [$(pwd)]"echo "Recording is begin..."echo "=== General Information ===" > $FILE_NAMEhostname >> $FILE_NAMEcat /etc/redhat-release >> $FILE_NAMEuname -r >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Hardware Information ===" >> $FILE_NAMEcat /sys/devices/virtual/dmi/id/sys_vendor >> $FILE_NAMEcat /sys/devices/virtual/dmi/id/product_name >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Process Information ===" >> $FILE_NAMEtop -n 3 -b >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Memory Information ===" >> $FILE_NAMEfree -m >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Disk Information ===" >> $FILE_NAMEdf -ah >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Firewall Information ===" >> $FILE_NAMEsystemctl status iptables >> $FILE_NAMEsystemctl status firewalld >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== SELinux Information ===" >> $FILE_NAMEsestatus >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Uptime Information ===" >> $FILE_NAMEuptime >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Last Information ===" >> $FILE_NAMEecho "Last Reboot" >> $FILE_NAMElast reboot >> $FILE_NAMEecho "Last Shutdown " >> $FILE_NAMElast shutdown >> $FILE_NAMEecho "Last" >> $FILE_NAMElast >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Network Information ===" >> $FILE_NAMEroute -n >> $FILE_NAMEntpstat >> $FILE_NAMEcat /etc/resolv.conf >> $FILE_NAMEifconfig >> $FILE_NAMEecho "" >> $FILE_NAMEecho "=== Scheduler Information ===" >> $FILE_NAMEservice crond status >> $FILE_NAMEcrontab -l >> $FILE_NAMEls /etc/cron.d/ >> $FILE_NAMECRON_FILES=/etc/cron.d/*for CRON_FILE in $CRON_FILESdoecho ">>> $CRON_FILE :" >> $FILE_NAMEcat $CRON_FILE >> $FILE_NAMEdoneecho "Recording success."echo "Check result at [$DIRECTORY/$FILE_NAME]"
Langkah - langkah
- Simpan script di atas dalam bentuk file .sh pada local anda.
contoh : health_check.sh - Pastikan sudah create folder terlebih dahulu di dalam server , khusus untuk eksekusi health check ini. Saran bisa di dalam folder /apps, dengan cara ;cd /appsmkdir health_check
chmod +x health_check
- Pindahkan file tersebut dari local ke dalam server yang akan di check
- Menggunakan WinSCP : akses artikel ini jika belum pernah menggunakan WinSCP
- Menggunakan command scp - Pastikan file health_check.sh sudah ada di directory/apps/health_checkllchmod +x health_check.sh
- Jalankan script .sh
./health_check.sh
Tunggu proses sampai selesai
File hasil health_check sudah berhasil di generate , pastikan dengan cek kembali terlebih dahulu hasilnya pada folder /apps/healthcheck, dengan cara
ll
dimana penamaan file sesuai script tersebut sudah di set dengan struktur
FILE_NAME=$(hostname)_$(date '+%Y-%m-%d').txtCek isi file tersebut apakah sudah berhasil membawa semua informasi health check atau belum
vi health_check.sh
Jika sudah sesuai, silahkan unduh file tersebut dan simpan di local anda.
File tersebut akan digunakan kembali untuk tahap berikutnya yaitu indikator perhitungan analisa health check.
Thankyou!
Regards,
Lily
Comments
Post a Comment