İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

sunucu yük durumunu kontrol edip servis kapatma

baldor

0
İyinet Üyesi
Katılım
24 Şubat 2003
Mesajlar
660
Reaction score
0
Konum
Bi Bilsem :)
aşağıdaki kod 5 saniyede bir çalışıp linux işletim sistemi kurulu olan makinelerin yük durumunu kontrol eder ve belirtilen limitin üstüne çıkarsa istenen bir komutu çalıştırır.

unix shell scripting ile yazılmıştır, pek başarılı bir çalışma değil. bu hali ile sunucu yük durumu %50i aşarsa apache yi durdurur ama yeniden başlatma yok :) açıkçası awk komutu içinde if yazmak biraz zor.

pek başarılı bir sistem olmadığını yazmıştım ama işin başka bir yönüde şu; çalışan siteleri kaldıramayan bir sunucuya veya ddos saldırısı alan bir sunucuya bazen çok hızlı müdahale etmek gerekir ve ssh girişi yapmak lazım gelir. ancak aşırı yük nedeniyle siz giremezsiniz ve sunucu kilitlenir. benim bu kodu yazma amacım sunucunun kilitlenmesi önlemek. hizmet aldığım bazı bilgi işlem merkezlerinde sunucunun manuel restart edilmesi 1 saati bulabiliyor. öyle çile çekmektense bu yöntem bana daha tercih edilebilir görünüyor.

SIM adında başka bir sistem var, geliştirilmiş bir sistem ama ne kadar başarılı olduğunu bilmiyorum. ama onunda sistemde kurulu olmasında fayda var.
http://fastdown.org/blog/sim-system-integrity-monitor-kurulumu




#!/bin/sh
#

while true
do
clear
echo "CPU Yuklenme Izleme"
echo "-------------------"
echo ""
awk '{$DURUM=$1; print $DURUM; if($DURUM > 50) service httpd stop; }' /proc/loadavg
sleep 2
done



çalıştırmak için;

sunucunuza root ile ssh girişi yapın.
cd /usr
mkdir izleme
cd izleme
pico cpu

yukarıdaki kodu kopyalayıp yapıştırın.

ctrl-x , y, enter ile çıkın.

chmod 777 cpu

./cpu &

ile çalıştırın.
 

PheNoMeN

0
İyinet Üyesi
Katılım
20 Ekim 2006
Mesajlar
94
Reaction score
0
Konum
Antalya
unix shell scripting ile yazılmıştır, pek başarılı bir çalışma değil. bu hali ile sunucu yük durumu %50i aşarsa apache yi durdurur ama yeniden başlatma yok :) açıkçası awk komutu içinde if yazmak biraz zor.

Tesekkurler. Yeniden baslatma konusunda da; httpd stop yerine restart komutu verdirilebilir.
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Backlink ve Tanıtım Yazısı için iletişime geçmek için Skype Adresimiz: .cid.1580508955483fe5

Üst