Sunucunuzdaki işlemleri gözden geçirin
Sunucunuzda çalışan her şey (e-posta, cron işleri, mysql, siteler) CPU ve bellek kullanır. Yavaşlık veya kesintili sorunlarla karşılaştığınızda sunucunuzda çalışan işlemleri gözden geçirmeniz önemlidir. Bu, nedenini belirlemenize yardımcı olur ve sitelerinizin normal şekilde çalışması için sizi nasıl düzelteceğiniz konusunda yönlendirir.Süreçleri neden gözden geçirmeliyim?
- Sunucunuzda bellek veya CPU kullanımı yüksek.
- Yedekleme veya diğer zamanlanmış görevler normalden daha uzun süre çalışıyor.
- Bir veya daha fazla site normalden daha yavaş yükleme süreleriyle karşılaşıyor.
- Görevlerin (bir sitede oturum açmak gibi) tamamlanması uzun sürüyor.
- Bir görevi çalıştırırken hatalar ve / veya zaman aşımları alıyorsunuz.
Süreçleri nasıl gözden geçiririm?
Sunucunuzu araştırmak için top ve ps kullanacaksınız. Top komutu, Linux sunucunuz hakkındaki ayrıntıları gerçek zamanlı olarak gösterir. Ps komutu, çalışan işlemleri listeler.
Top M'yi çalıştırırsanız, şuna benzer bir çıktı görürsünüz:
[root @ server ~] $ top M top - 12:39:25 up 300 gün, 3:15, 2 kullanıcı, yükleme ortalaması: 0.06, 0.07, 0.08 Görevler: Toplam 437, 1 çalışıyor, 432 uyuyor, 0 durdu, 4 zombi CPU (lar) ı:% 0,6 us, 2,2%s y,% 0,8 ni,% 96,2 id,% 0,2 wa,% 0,0 yüksek, 0,0%s i, 0.0%s t Mem: 31.237G toplam, 12.921G kullanıldı, 18.316G boş, 361.410M arabellek Değiştirme: 8191.996M toplam, 23.781M kullanılmış, 8168.215M boş, 5107.738M önbelleğe alınmış PID USER PR NI VIRT RES SHR S% CPU% MEM TIME + COMMAND 4425 kök 20 0 393m 11m 4436 S 6,0 0,0 7776: 50 pvaagentd 2931 td-agent 20 0 2590m 330m 2272 S 1.0 1.0 2233: 30 ruby 108702 kök 20 0 2394m 46m 10m S 0.7 0.1 0: 22.20 TaniumClient 21 kök 20 0 0 0 0 S 0.3 0.0 690: 42.23 olay / 2
Veri düzenini değiştirmek için top ile kullanabileceğiniz çeşitli anahtarlar vardır. Kısayol tuşlarının tam listesi için SSH'de man top kullanın.
Ps fauxx çalıştırırsanız, şuna benzer bir çıktı görürsünüz:
USER PID% CPU% MEM VSZ RSS TTY STAT BAŞLANGIÇ ZAMANI KOMUTU kökü 1 0.0 0.0 10372 752? Ss Feb06 0:15 init [3] root 1412 0.0 0.0 5924 624? Ss Şub06 0:02 syslogd -m 0 dbus 1421 0.0 0.0 21276 1064? Ss Feb06 0:00 dbus-daemon --system kökü 1930 0.0 0.0 20888 1184? Ss Şub06 0:04 crond root 22304 0.0 0.0 12800 788? Ss Feb06 0:00 / sbin / udevd -d root 22224 0.0 0.0 10788 1344? S Şub14 0:00 / bin / sh / usr / bin / mysqld_safe mysql 22421 0.0 3.7 522976 70492? Sl Şub14 8:42 \ _ / usr / libexec / mysqld root 23576 0.0 0.0 21668 976? Ss Feb14 0:01 xinetd -stayalive -pidfile /var/run/xinetd.pid qmails 28232 0.0 0.0 3868 472? S Şub14 0:00 qmail-send qmaill 28234 0.0 0.0 3820 560? S Şub14 0:00 \ _ splogger qmail
Veri düzenini değiştirmek için ps ile kullanabileceğiniz çeşitli anahtarlar vardır. Kısayol tuşlarının tam listesi için SSH'de man ps öğesini kullanın.
Diğer faydalı varyasyonlar:
Önde gelen CPU kullanıcıları:
ps -e -o pcpu, args --sort -pcpu | kafa -10
En iyi RAM kullanıcıları:
ps -o pid, kullanıcı,% mem, komut baltası | sırala -b -k3 -r | kafa -10
En iyi 10 bellek hogging işlemi:
ps auxx | sırala -nk +4 -r | kafa
Sonraki Adımlar
Sorunlu bir işlem bulduğunuzda (askıda kalmış bir yedekleme gibi), kaynakları boşaltmak için işlemi sonlandırmanız gerekebilir.
Bir işlemi sonlandırmak için:
öldür -9 PID
Tüm işlemleri kullanıcıya göre sonlandırmak için (birden fazla cron işi gibi):
pkill -u kullanıcı adı
Kısayol tuşlarının tam listesi için SSH'de man kill veya man pkill kullanın.
Kontrol dışı işlemlerle ilgili sık sık sorun yaşadığınızı fark ederseniz, sorunu bulmak ve düzeltmek için sunucu günlüklerini incelemeniz gerekir.