Sunucu İzleme ve Uptime Takibi: Araçlar ve Yöntemler
Kesintiyi müşteriden öğrenmek en pahalı izleme yöntemidir. Neyi hangi eşikle izleyeceğinizi, dış uptime kontrolünü, iç metrik araçlarını, gürültüsüz uyarı tasarımını ve bir VPS üzerinde kurulum sırasını anlatıyoruz.
Sunucunuzun çöktüğünü ilk kim fark ediyor? Yanıt “müşteriler” ise izlemeniz yok demektir. Sunucu izleme, sorunu ziyaretçiden önce görmenizi sağlayan iki katmanlı bir düzendir: dışarıdan sitenin gerçekten açıldığını doğrulayan uptime kontrolü ve içeriden CPU, bellek, disk ve servislerin sağlığını ölçen metrik takibi.
Bu yazıda neyin hangi eşikle izleneceğini, ücretsiz ve açık kaynak araçlarla iki katmanın nasıl kurulacağını ve uyarıların gürültüye dönüşmeden nasıl tasarlanacağını anlatıyoruz. Örnekler bir LIONFIN VPS sunucu üzerinde uygulanmıştır; paylaşımlı hosting kullanıcıları için dış katman tek başına da değerlidir.
Sunucu izleme nedir, uptime takibinden farkı ne?
Uptime takibi tek bir soruyu yanıtlar: site şu anda dışarıdan erişilebilir mi? Sunucu izleme ise sitenin neden yavaşladığını ya da ne zaman çökeceğini gösterir: disk dolmak üzere, bellek şişiyor, veritabanı bağlantıları tükeniyor.
İkisi birbirinin yerine geçmez. Yalnızca uptime izleyen biri kesintiyi öğrenir ama nedenini bilmez; yalnızca iç metrikleri izleyen biri ise sunucu sağlıklı görünürken DNS ya da ağ nedeniyle sitenin açılmadığını fark etmez. Sağlıklı bir düzen iki katmanı birlikte kurar ve uyarıları tek bir kanalda toplar.
Uptime rakamının sözleşmedeki karşılığı, ölçüm yöntemi ve SLA maddeleri için hosting uptime ve SLA yazısına bakın; kendi izleme kaydınız, SLA talebinde elinizdeki tek bağımsız kanıttır.
Ne izlenmeli: metrikler ve eşikler
Her şeyi izlemek, hiçbir şeyi izlememekle sonuçlanır; aşağıdaki liste küçük ve orta boy bir web sunucusu için yeterlidir. Eşikler başlangıç değeridir, kendi trafiğinize göre ayarlayın.
| Metrik | Uyarı eşiği (başlangıç) | Neyi haber verir |
|---|---|---|
| HTTP yanıtı (dış) | 2 ardışık başarısız kontrol ya da yanıt 5 sn üzeri | Kesinti, aşırı yavaşlık |
| İçerik denetimi (dış) | Beklenen metin sayfada yok | Ele geçirme, boş sayfa, hata sayfası |
| SSL bitiş tarihi | 14 gün kala | Yenileme başarısızlığı |
| DNS çözümleme | Beklenen IP dışında yanıt | DNS değişikliği, kaçırma |
| CPU yükü (load) | Çekirdek sayısının 1,5 katı, 10 dk boyunca | Saldırı, döngüye giren betik |
| Bellek | %90 üzeri, swap kullanımı artıyor | Bellek sızıntısı, yetersiz kaynak |
| Disk doluluğu | %80 uyarı, %90 kritik | Günlük ve yedek birikimi |
| Servis durumu | nginx/apache, mysql, php-fpm çalışmıyor | Çökme, başarısız yeniden başlatma |
| Mail kuyruğu | Bekleyen ileti sayısı ani artış | Spam gönderimi, teslimat sorunu |
| Başarısız giriş denemeleri | Dakikada onlarca | Kaba kuvvet saldırısı |
Dış katman: uptime kontrolü
Dış kontrol, sunucudan bağımsız bir konumdan yapılmalıdır; sunucunun kendisi kendi kesintisini bildiremez. Seçenekler:
- Barındırılan servisler: UptimeRobot, Better Stack ve benzerleri; kurulum dakikalar sürer, ücretsiz katmanlar genellikle birkaç dakikalık aralık sunar.
- Kendi kurduğunuz açık kaynak araç: Uptime Kuma; ayrı bir küçük VPS üzerinde çalıştırılır, sınırsız kontrol ve kendi verinizde tutma avantajı sağlar.
Hangisini seçerseniz seçin şu ayarları yapın:
- Kontrol aralığı: Bir dakika; beş dakikalık aralık kısa kesintileri kaçırır.
- Kontrol türü: Yalnızca ping değil, HTTPS isteği; yanıt kodu 200 ve sayfada beklenen bir anahtar kelime (örneğin alt bilgideki şirket adı).
- Çoklu konum: En az iki farklı konumdan doğrulama; tek noktadan gelen hata ağ kaynaklı olabilir.
- SSL ve alan adı izleme: Sertifika bitişine 14 gün, alan adı süresine 30 gün kala uyarı; yenileme adımları SSL yenileme ve alan adı yenileme rehberlerinde.
- Ayrı kontroller: Anasayfa, giriş sayfası, API uç noktası ve webmail için ayrı monitörler; biri düşerken diğerleri ayakta olabilir.
İç katman: metrik araçları ve komutlar
İç metrikler için ölçek ve beceriye göre üç seçenek vardır:
- Netdata: Tek komutla kurulur, saniyelik grafikler ve hazır uyarı kuralları sunar; tek sunucu için en hızlı başlangıç.
- Prometheus + Grafana: Birden fazla sunucu, uzun süreli veri ve özelleştirilmiş panolar; kurulum ve bakım daha çok zaman ister.
- Zabbix ya da Monit: Servis izleme ve otomatik yeniden başlatma; Monit özellikle “nginx düşerse yeniden başlat” gibi kurallar için hafiftir.
Araç kurmadan önce sunucunun bugünkü hâlini birkaç komutla ölçün; eşikleri bu değerlere göre belirleyeceksiniz:
uptime # yük ortalamaları (1, 5, 15 dk)
free -h # bellek ve swap
df -h # disk doluluğu
top -bn1 | head -15 # en çok kaynak tüketen süreçler
ss -s # bağlantı özeti
systemctl status nginx mysql php8.2-fpm --no-pager
mailq | tail -1 # bekleyen e-posta sayısıUptime kontrolünün tek başına yetmediği bir örnek: disk %100 dolduğunda site çoğu zaman açılmaya devam eder ama sipariş kaydedemez, oturum açılamaz; dış katman yeşil, iç katman kırmızıdır.
Uyarı tasarımı: gürültüsüz bildirim
Kötü tasarlanmış uyarı, hiç uyarı olmamasından tehlikelidir: yüz bildirim gelen bir kanal sessize alınır ve gerçek kesinti kaçar. Kurallar:
- Her uyarının bir eylemi olsun. “CPU %70” bilgidir, uyarı değil; “CPU 10 dakikadır çekirdek sayısının 1,5 katı” eylem ister.
- Ardışık doğrulama: Tek bir başarısız kontrol değil, iki üç ardışık başarısızlık uyarı üretsin.
- Kademeleme: Uyarı seviyesi e-posta ya da Telegram, kritik seviye telefon araması ya da SMS.
- Bakım penceresi: Planlı işlerde uyarıları geçici sustursun; aksi hâlde ekip bildirimleri görmezden gelmeyi öğrenir.
- Düzelme bildirimi: Sorun çözüldüğünde de bildirim gelsin; gece uyanan kişi durumu telefondan görsün.
- Aylık gözden geçirme: En çok tetiklenen uyarıları listeleyin; sürekli tetiklenip eyleme dönüşmeyen eşiği ya değiştirin ya da kaldırın.
DDoS gibi ani olaylarda ilk sinyal genellikle bağlantı sayısı ve yük uyarısıdır; müdahale sırası DDoS saldırısı nedir yazısında hazır beklesin.
Kurulum sırası: bir öğleden sonrada izleme
Sıfırdan başlayan bir VPS için uygulanabilir sıra:
- Dış uptime servisinde anasayfa, giriş ve webmail için birer HTTPS monitörü açın.
- SSL ve alan adı süresi izlemesini ekleyin.
- Sunucuya Netdata (ya da tercih ettiğiniz aracı) kurun; erişimi yalnızca kendi IP’nize açın.
- Tablodaki eşikleri ve uyarı kurallarını girin.
- Uyarı kanalını bağlayıp bir test uyarısı tetikleyin; uyarıları sunucu dışından gönderin, sunucu e-postaları için SmartHost SMTP relay uygundur.
- Servisler için otomatik yeniden başlatma (Monit ya da systemd) tanımlayın.
- Bir hafta sonra tetiklenen uyarıları gözden geçirip eşikleri ayarlayın.
Sunucu izleme kurulduktan sonra en değerli çıktı zamanla oluşan geçmiştir: disk büyüme hızı yükseltme zamanını, yük grafiği kampanya kapasitesini söyler; paylaşımlı hostingden VPS’ye geçiş için karşılaştırma paylaşımlı hosting vs VPS yazısında.
Sık Sorulan Sorular
Paylaşımlı hosting kullanıyorum; sunucu izleme kurabilir miyim?
İç metrik araçları sunucu erişimi gerektirdiği için paylaşımlı hostingde kurulamaz; o katman sağlayıcının sorumluluğundadır. Dış uptime kontrolü, içerik denetimi, SSL ve alan adı süresi izlemesi ise tamamen bağımsız çalışır ve paylaşımlı hosting için bile kesintiyi dakikalar içinde haber verir.
Ücretsiz bir uptime servisi yeterli mi?
Küçük siteler için çoğu zaman evet; ücretsiz katmanlar birkaç monitör ve birkaç dakikalık aralık sunar. Bir dakikalık aralık, çoklu konum ve SMS bildirimi gerekiyorsa ücretli katman ya da kendi kurduğunuz Uptime Kuma daha uygundur. Kritik olan servisin sunucunuzdan bağımsız bir yerde çalışmasıdır.
Uyarılar çok sık geliyor, ne yapmalıyım?
Eşiklerin normal trafiğe göre düşük olması ya da tek kontrolle uyarı üretilmesi en yaygın nedendir. Ardışık doğrulama sayısını artırın, eşikleri son iki haftanın gerçek değerlerine göre yükseltin ve eyleme dönüşmeyen uyarıları kaldırın. Amaç, gelen her bildirimin gerçekten müdahale gerektirmesidir.
Sunucu çökünce izleme aracı da çöker; nasıl haber alırım?
Bu yüzden dış katman zorunludur: sunucudan bağımsız bir servis siteyi dışarıdan kontrol eder ve yanıt alamadığında bildirim gönderir. İç izleme aracı yalnızca sunucu ayaktayken veri üretir; ikisinin birlikte kurulması, hem çökmeyi hem de çökmeye giden yolu görmenizi sağlar.