Senario
Aplikasi mikroservis berjalan pada pelayan Linux 4-teras, 8GB dengan Nginx dan Node.js. Tiba-tiba, amaran pemantauan menunjukkan lonjakan ralat HTTP 502, dan pengguna tidak dapat mengakses perkhidmatan.
Gejala
- Purata beban >10 (normal <2)
- I/O menunggu >30%
- Respons SSH lambat
- dmesg menunjukkan banyak ralat "hung_task_timeout_secs"
Langkah Diagnosis
-
Periksa beban sistem
bash uptime top -bn1 | head -5Output: load average: 12.5, 10.3, 8.7. -
Kenal pasti proses penggunaan tinggi
bash ps aux --sort=-%cpu | head -10 ps aux --sort=-%mem | head -10Proses pekerja Nginx menggunakan 300% CPU (mungkin gelung tak terhingga). -
Analisis kesesakan I/O
bash iostat -x 1 3%util hampir 100%, await >100ms — isu prestasi cakera. -
Periksa ruang cakera dan inod
bash df -h / df -i /Penggunaan cakera 85%, inod normal, tetapi fail log berkembang pesat. -
Lihat log sistem
bash tail -100 /var/log/messages | grep -i errorDijumpai: "EXT4-fs error: journal has aborted". -
Periksa konsistensi sistem fail
bash touch /test && sync && rm /test # ujian tulisJika gagal, jadualkan fsck semasa waktu penyelenggaraan; berhati-hati.
Kawalan Risiko
- Elakkan fsck semasa waktu puncak: risiko kehilangan data.
- Cuba pasang semula baca-sahaja dahulu:
bash mount -o remount,ro /dev/sda1 / - Sandarkan data kritikal: gunakan
ddataursyncselepas pengesahan.
Langkah Balik
Jika perubahan terkini menyebabkan isu (cth., kemas kini konfigurasi, tampalan kernel):
1. Balikkan aplikasi:
bash
systemctl restart nginx # atau muat konfigurasi lama
2. Balikkan kernel (memerlukan but semula):
bash
grub2-set-default "CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)"
reboot
3. Jika sistem fail rosak, pulihkan dari sandaran atau gunakan gambaran LVM.
Pengesahan
- Sahkan beban normal:
uptime - Sahkan I/O berkurang:
iostat -x 1 2 - Sahkan kesihatan perkhidmatan:
curl -I http://localhost/health - Periksa papan pemuka pemantauan: kadar ralat kembali ke 0.
Bila Perlu Hantar Tiket OpsGlobal
- Langkah penyelesaian masalah gagal
- Perlu fsck tetapi tidak boleh jadualkan masa henti
- Disyaki kegagalan perkakasan (cth., sektor buruk)
- Perlu nyahpepijat kernel atau penalaan prestasi
- Perlu analisis punca akar jangka panjang atau pengoptimuman seni bina
Sertakan dengan tiket:
- Log dmesg dan /var/log/messages
- Output top dan iostat
- Garis masa perubahan
Buku panduan standard ini membolehkan SRE mendiagnosis dan memulihkan isu pengeluaran dengan cepat, dan melantik kepada OpsGlobal untuk sokongan pakar.
Senario Penggunaan
Sesuai untuk pasukan yang menyelesaikan isu DevOps dan memerlukan aliran kerja yang jelas.
Latar Belakang Masalah
Panduan praktikal untuk menyelesaikan masalah pelayan Linux dalam pengeluaran, merangkumi senario, gejala, arahan diagnosis, kawalan risiko, langkah balik, pengesahan, dan bila perlu menghubungi OpsGlobal.
Langkah Penyelesaian
Sahkan impak dan perubahan terkini, kumpul log, konfigurasi dan metrik, kemudian baiki mengikut risiko.
Contoh Arahan
Gantikan contoh dengan nama sumber sebenar dan simpan kata laluan, token atau kunci dalam pembolehubah persekitaran.
Risiko
Sebelum operasi produksi, semak sandaran, akses, tetingkap perubahan dan pelan rollback.
Pelan Rollback
Simpan konfigurasi dan versi asal; rollback konfigurasi, imej atau perubahan pangkalan data jika metrik tidak normal.
Senarai Serahan
Rekod punca isu, arahan penting, langkah pembaikan, hasil pengesahan dan cadangan susulan.
Perlu bantuan isu teknikal serupa?
Jika pelayan, Kubernetes, Docker, CI/CD, pangkalan data atau pemantauan anda bermasalah, hantar log dan konfigurasi untuk diagnosis jauh.