Jaminan kualitas memerlukan kombinasi tindakan proaktif dan protokol reaktif yang efisien. Dengan keseimbangan yang tepat, Anda dapat memberikan layanan dan fungsionalitas yang sangat baik kepada pengguna di server yang tersedia sepanjang tahun. Satu-satunya cara untuk mencapai keseimbangan itu adalah dengan mengidentifikasi metrik pemantauan server yang paling relevan.
Dengan memilih metrik pemantauan server yang ideal sejak awal, Anda dapat mengembangkan baseline kinerja untuk digunakan sebagai referensi ketika masalah kesehatan dan kinerja tak terhindarkan muncul.
Dalam panduan singkat ini, kita akan melihat mengapa Anda harus melacak metrik utama ini. Plus, Anda akan mendapatkan wawasan tambahan tentang relevansinya dan cara melacaknya.
1. Penggunaan CPU
Salah satu alasan utama untuk pemantauan server adalah untuk mengawasi kesehatan infrastruktur dan kinerja server dasar. Bagian penting dari itu adalah diagnosis proaktif dan mitigasi potensi masalah kinerja. Pengukuran penggunaan CPU dan disk sangat penting untuk upaya ini. Oleh karena itu, penggunaan CPU adalah salah satu metrik kinerja yang paling mendasar dan sering dipantau .
Metrik ini dianggap “berbasis host”, karena mencatat kemampuan mesin individual untuk bekerja dan tetap stabil. Yang mengatakan, pemantauan penggunaan CPU akan memerlukan kombinasi pemantauan pasif dan aktif. Yang terakhir ini sangat berguna untuk pengujian beban terkontrol, sedangkan yang pertama mengumpulkan pengukuran pada target selama lalu lintas nyata.
Bagaimana Mengukur Utilisasi CPU
Sebelum memulai, Anda harus:
- Pilih drive tertentu yang ingin Anda pantau.
- Tentukan di mana drive tersebut berada.
- Pastikan pengumpul data Anda memiliki akses ke proses komputer Anda.
Setelah Anda menyiapkan semua itu, Anda harus menentukan tingkat sampel yang Anda inginkan untuk melacak metrik ini. Misalnya, Anda dapat mengukur penggunaan CPU setiap 30 detik atau satu menit.
Ada beberapa cara berbeda untuk melacak penggunaan CPU, seperti menggunakan pengelola tugas Anda atau perintah seperti wmic CPU get load persentase untuk sistem Windows. Namun, ketika Anda mencoba untuk mendapatkan pandangan sekilas dari server Anda, yang terbaik adalah menampilkan data ini di dasbor.
Ingat: Kinerja CPU dipengaruhi oleh kondisi perangkat keras, seperti suhu CPU dan kecepatan kipas. Anda mungkin ingin memantau faktor-faktor ini di samping pemanfaatan (diwakili sebagai persentase) di dua status ini, mengabaikan idle.
Sibuk | Selama waktu ini, CPU sedang menjalankan tugas. |
I/O | Keadaan ini tidak sibuk, tetapi juga tidak menganggur. Sebagai gantinya, CPU bisa menunggu operasi I/O untuk menjalankan tugas, biasanya dengan menunggu untuk mengeluarkan data atau menerima data. |
Dua hal utama yang ingin Anda pantau dengan cermat termasuk Waktu Istimewa dan Waktu Pengguna, karena jumlah dari keduanya akan memberi Anda Waktu Prosesor, masing-masing didefinisikan sebagai berikut:
- Privileged Time: Persentase waktu yang digunakan prosesor untuk mengeksekusi proses non-pengguna (yaitu, proses kernel)
- User Time: Persentase waktu yang digunakan prosesor untuk menjalankan proses pengguna (misalnya, shell perintah, server email, kompiler)
- Processor Time: Jumlah total waktu CPU sibuk
Ingatlah bahwa melebihi 100% tidak selalu berarti bahwa sistem kelebihan beban. Misalnya, jika Anda memiliki sistem multiprosesor, ini hanya berarti bahwa jumlah dari dua atau lebih CPU lebih besar dari 100% (misalnya, 50% dan 60%). Tonton penampilan individu mereka untuk menjaga kesehatan sistem.
Seiring dengan pemanfaatan CPU dan disk, menunggu juga dianggap penting dalam kesehatan infrastruktur dan pemantauan kinerja.
2. Server uptime
Server Anda tidak berguna jika tidak tersedia untuk pengguna Anda. Dengan demikian, pemantauan uptime server tidak dapat dinegosiasikan. Kapan pun ketersediaan server Anda turun di bawah 99,999% (standar yang dikenal sebagai “lima sembilan” ), Anda menghadapi masalah serius.
Gunakan rumus di bawah ini untuk mendapatkan wawasan yang dapat dipahami dan dapat ditindaklanjuti dari upaya pemantauan Anda.
Bagaimana Mengukur Uptime Server
Berikut adalah beberapa konsep inti yang perlu diketahui saat memantau waktu aktif server:
- Uptime: Jumlah waktu layanan atau aplikasi Anda aktif dan tersedia untuk pengguna. Rumus: (Total time – Downtime)/Total time
- Mean time between failures (MTBF): Waktu rata-rata yang memisahkan insiden waktu henti. Rumus: (Total time – Downtime)/Number of downtime incidents
- Mean time to resolution (MTTR): Jumlah rata-rata waktu yang diperlukan untuk menyelesaikan pemadaman. Rumus: Total downtime/Number of downtime incidents
- Mean time to acknowledge (MTTA): Jumlah rata-rata waktu yang dibutuhkan untuk mengakui pemadaman saat ini. Rumus: Total time to acknowledge/Number of downtime incidents
Semua metrik ini membantu mengembangkan gambaran besar yang menggambarkan keandalan infrastruktur Anda dan daya tanggap tim Anda.
Jadi, misalnya, memiliki MTTR dan MTTA yang sehat itu baik. Tetapi jika Anda juga memiliki MTBF yang tinggi, Anda harus menyelidiki akar penyebab downtime server Anda lebih lanjut. Jika tidak, perusahaan masih berisiko mengalami kerugian finansial yang signifikan dan merusak kepercayaan pengguna.
Pada akhirnya, Anda harus berjuang untuk “five nines,” menjaga waktu henti maksimum kira-kira lima menit per tahun. Perangkat lunak pemantauan server Grafana dan Prometheus umumnya direkomendasikan sebagai alat yang ramah pengguna dan mudah diakses untuk aspek pemantauan kinerja ini.
3. Transactions (and error rates)
Anda memerlukan gambaran yang jelas tentang seberapa banyak lalu lintas yang didukung infrastruktur Anda pada waktu tertentu. Jadi, penting untuk mengawasi transaksi Anda—atau jumlah permintaan per detik—dan waktu respons rata-rata yang sesuai. Informasi ini dapat membantu Anda menentukan jumlah sumber daya dan kapasitas yang dibutuhkan untuk menjalankan server dengan lancar.
Pada saat yang sama, melacak tingkat kesalahan, atau persentase permintaan yang gagal relatif terhadap total yang diterima, dapat memberikan wawasan lebih lanjut mengenai kapasitas beban layanan Anda. Untuk memaksimalkan nilai metrik ini, yang terbaik adalah mengembangkan baseline lembur melalui pemantauan pasif.
Hal ini penting untuk kemampuan Anda untuk memantau tren . Jika Anda dapat melihat ke belakang dan menentukan kapasitas dan sumber daya maksimum yang diperlukan untuk kelancaran operasi, Anda dapat bertindak secara proaktif untuk mengalokasikan kebutuhan tersebut dan menunjukkan masalah infrastruktur untuk mengurangi tingkat kesalahan yang diamati dan mengoptimalkan waktu respons rata-rata Anda.
Cara Memantau Transactions and Error Rates
Berikut ini adalah alat yang andal untuk teknik pemantauan kinerja pasif:
- Sniffers: Ini dirancang untuk mengumpulkan pengukuran pada “tingkat mikroskopis” dengan “menguping” arus lalu lintas di jaringan kabel dan nirkabel. Wireshark adalah salah satu standar yang paling banyak diterima, yang mengumpulkan data tentang atribut seperti cap waktu, alamat MAC dan IP, waktu tayang, dan banyak lagi. Ini dapat digunakan secara online atau offline.
- Logging facilities: Ini biasanya terintegrasi ke dalam sistem operasi dan aplikasi. Mereka terutama mengumpulkan informasi tentang aktivitas dan peristiwa yang dihasilkan oleh aplikasi untuk penggunaan offline.
Salah satu dari sepuluh alat pemantauan server web teratas yang sangat baik untuk memantau transaksi adalah Monitis. Ini adalah sistem pemantauan lengkap untuk server, situs web, dan aplikasi. Ini bagus untuk sistem Windows dan Linux, dan ideal untuk mencakup dasar-dasarnya, termasuk waktu aktif.
Tujuan dan sasaran dari upaya pemantauan akan mempengaruhi pengukuran yang tepat dan penggunaan teknik ini.
Metrik Lain untuk Dipantau dengan Transaksi
Waktu respons dan jumlah total utas terkait langsung dengan transaksi. Ini akan memberi tahu Anda berapa lama waktu yang dibutuhkan server Anda untuk menanggapi permintaan, dan jumlah utas (yang membuat transaksi terjadi) yang digunakan untuk menangani semua permintaan ini.
Setiap utas menggunakan waktu CPU dan RAM. Terlalu banyak dapat menyebabkan kinerja di bawah standar. Ada cukup banyak untuk dipantau dengan ini, termasuk:
- Jumlah total utas di server web atau kumpulan penampung, termasuk jenis berikut:
- Active
- Idle
- Stuck
- Standby
- Permintaan pengguna yang tertunda dan panjang antrian
Anda biasanya dapat mengukur waktu respons server sebagai Time to First Byte (TTFB). Ini adalah jumlah milidetik yang diperlukan browser untuk menerima byte pertama dari respons server. Umumnya, apa pun yang lebih dari lima detik sangat penting.
Memilih Metrik yang Tepat Untuk Pemantauan Kinerja Server
Ada daftar panjang metrik yang dapat Anda pantau saat Anda melacak kesehatan dan kinerja server Anda, tetapi target spesifik terutama bergantung pada tujuan upaya pemantauan Anda.
Sementara beberapa yang terbaik untuk mendapatkan wawasan tentang kapasitas beban perangkat keras dan sistem operasi Anda, yang lain ideal untuk mengamati aktivitas pengguna. Bagaimanapun, CPU, waktu aktif, dan transaksi adalah hal mendasar yang tidak dapat diabaikan.