tr
VPS Performans İzleme: Araçlar ve En İyi Uygulamalar
Sunucu performansını proaktif olarak izlemek, sorunları kullanıcılar fark etmeden önce tespit etmenizi sağlar. Bu rehber, basit komut satırı araçlarından Prometheus ve Grafana gibi profesyonel izleme çözümlerine kadar kapsamlı bir izleme altyapısı kurmanızı sağlar.
Need this done for your project?
We implement, you ship. Async, documented, done in days.
Temel Sistem İzleme Araçları
Linux'ta sistem kaynaklarını izlemek için yerleşik araçlar oldukça güçlüdür.
Gerçek zamanlı sistem durumu:
htop
htop, CPU, RAM ve süreç bilgilerini görsel olarak sunar. Yüklü değilse kurun:
sudo apt install -y htop
Disk I/O izleme:
iostat -x 1 5
iotop -o
Ağ trafiği izleme:
sudo apt install -y nload nethogs iftop
nload -u M
nethogs eth0
iftop -i eth0
CPU ve bellek detayları:
vmstat 1 10
free -h
cat /proc/cpuinfo | grep "model name" | uniq
lscpu
Disk kullanımı:
df -h
du -sh /var/www/* | sort -rh | head -10
du -sh /home/* | sort -rh | head -10
Sistem yük ortalaması:
uptime
cat /proc/loadavg
Yük ortalaması CPU çekirdeği sayısının altında olmalıdır; üstündeyse kaynaklar yetersizdir.
Netdata ile Gerçek Zamanlı İzleme
Netdata, kurulumu kolay ve görsel açıdan zengin bir gerçek zamanlı izleme aracıdır.
Tek komutla Netdata kurun:
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
Kurulum tamamlandıktan sonra web arayüzüne erişin:
http://SUNUCU_IP:19999
Güvenlik duvarında portu açın:
sudo ufw allow 19999/tcp
Netdata'ya şifre koruması eklemek için Nginx ters proxy kullanın:
sudo vim /etc/nginx/sites-available/netdata
server {
listen 80;
server_name monitor.alan-adiniz.com;
auth_basic "VPS Monitor";
auth_basic_user_file /etc/nginx/.htpasswd;
location / {
proxy_pass http://127.0.0.1:19999;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
Şifre dosyası oluşturun:
sudo apt install -y apache2-utils
sudo htpasswd -c /etc/nginx/.htpasswd admin
Netdata alarm bildirimlerini yapılandırın:
sudo vim /etc/netdata/health_alarm_notify.conf
EMAIL_SENDER="[email protected]"
DEFAULT_RECIPIENT_EMAIL="[email protected]"
Prometheus ve Grafana ile Profesyonel İzleme
Prometheus ve Grafana kombinasyonu, kurumsal düzeyde metrik toplama ve görselleştirme sağlar.
Node Exporter kurulumu (sistem metrikleri toplar):
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
tar xvf node_exporter-1.7.0.linux-amd64.tar.gz
sudo cp node_exporter-1.7.0.linux-amd64/node_exporter /usr/local/bin/
sudo useradd -rs /bin/false node_exporter
Systemd servisi oluşturun:
sudo vim /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
After=network.target
[Service]
User=node_exporter
Group=node_exporter
ExecStart=/usr/local/bin/node_exporter
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable node_exporter
sudo systemctl start node_exporter
Prometheus kurulumu:
wget https://github.com/prometheus/prometheus/releases/download/v2.48.0/prometheus-2.48.0.linux-amd64.tar.gz
tar xvf prometheus-2.48.0.linux-amd64.tar.gz
sudo cp prometheus-2.48.0.linux-amd64/prometheus /usr/local/bin/
sudo cp prometheus-2.48.0.linux-amd64/promtool /usr/local/bin/
Alarm ve Bildirim Sistemi Kurulumu
İzleme sisteminin değeri, sorunları zamanında bildirme kapasitesinden kaynaklanır.
Prometheus kural dosyası oluşturun:
sudo vim /etc/prometheus/alert.rules.yml
groups:
- name: system_alerts
rules:
- alert: HighCPUUsage
expr: 100 - (avg by(instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100) > 85
for: 5m
labels:
severity: warning
annotations:
summary: "Yüksek CPU kullanımı - {{ $labels.instance }}"
- alert: LowDiskSpace
expr: (node_filesystem_avail_bytes{mountpoint="/"} / node_filesystem_size_bytes{mountpoint="/"}) * 100 < 15
for: 1m
labels:
severity: critical
annotations:
summary: "Düşük disk alanı - {{ $labels.instance }}"
- alert: HighMemoryUsage
expr: (1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100 > 90
for: 5m
labels:
severity: warning
annotations:
summary: "Yüksek bellek kullanımı - {{ $labels.instance }}"
Basit log tabanlı alarm scripti:
sudo vim /usr/local/bin/check-resources.sh
#!/bin/bash
CPU=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | cut -d'%' -f1)
MEM=$(free | grep Mem | awk '{print $3/$2 * 100.0}')
DISK=$(df / | tail -1 | awk '{print $5}' | tr -d '%')
[ $(echo "$CPU > 90" | bc) -eq 1 ] && echo "UYARI: CPU %$CPU"
[ $(echo "$MEM > 90" | bc) -eq 1 ] && echo "UYARI: RAM %$MEM"
[ "$DISK" -gt "85" ] && echo "UYARI: Disk %$DISK"
Anubiz Host offshore VPS planlarında izleme araçları ve portlar üzerinde tam özgürlüğe sahipsiniz.
Related Services
Why Anubiz Host
100% async — no calls, no meetings
Delivered in days, not weeks
Full documentation included
Production-grade from day one
Security-first approach
Post-delivery support included
Ready to get started?
Skip the research. Tell us what you need, and we'll scope it, implement it, and hand it back — fully documented and production-ready.