Prometheus Nedir ve Neden Kullanılır?
Prometheus, açık kaynaklı bir izleme ve uyarı sistemidir. Sistemlerin ve uygulamaların performansını izlemek için verileri toplar, bu verileri zaman serisi verisi olarak depolar ve ihtiyaç duyulduğunda sorgular. Özellikle mikro hizmet mimarilerinde ve konteyner bazlı altyapılarda oldukça yaygın bir kullanım alanı bulmuştur. Ama Linux'ta Prometheus kullanmak, sunucularınızın sağlığı hakkında size önemli bilgiler verebilir.
Prometheus, özellikle yüksek verimli veri toplama, sorgulama ve alarm gönderme özellikleri ile sunucularınızda olan biteni anında takip etmenizi sağlar.
Prometheus Kurulumu
Prometheus'u Linux sisteminizde kurmak oldukça basit. İlk olarak, terminali açın ve aşağıdaki komutları sırasıyla girerek Prometheus’u sisteminize kurabilirsiniz:
# Prometheus paketini indirin
wget https://github.com/prometheus/prometheus/releases/download/v2.41.0/prometheus-2.41.0.linux-amd64.tar.gz
# Arşivi çıkarın
tar xvf prometheus-2.41.0.linux-amd64.tar.gz
# Prometheus dizinine geçin
cd prometheus-2.41.0.linux-amd64/
# Prometheus'u başlatın
./prometheus --config.file=prometheus.yml
Bu komutlarla Prometheus’u kurup başlatabilirsiniz. Şimdi tarayıcınızı açın ve `http://localhost:9090` adresine gidin. Eğer her şey doğru yapıldıysa, Prometheus'un ana paneline erişebilirsiniz.
Prometheus ve Linux Sunucusu Arasındaki İletişimi Kurma
Prometheus yalnızca uygulama ve sunucu izlemekle kalmaz, aynı zamanda kendi metriklerinizi oluşturmanıza olanak tanır. Ancak, Prometheus’un verileri toplaması için sisteminizde "node_exporter" adlı bir aracı kurmamız gerekiyor.
Node_exporter, sistem metriklerini toplar ve Prometheus’a gönderir. Kurulumu oldukça basittir:
# Node Exporter'ı indirin
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
# Arşivi çıkarın
tar xvf node_exporter-1.3.1.linux-amd64.tar.gz
# Node Exporter'ı başlatın
cd node_exporter-1.3.1.linux-amd64/
./node_exporter
Node_exporter başarıyla çalıştıktan sonra, Prometheus’a bu verileri toplayabilmesi için aşağıdaki adımları izleyebilirsiniz.
1. Prometheus'un yapılandırma dosyasını açın:
sudo nano /path/to/prometheus.yml
2. `scrape_configs` kısmına aşağıdaki satırı ekleyin:
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']
Yapılandırma dosyasını kaydedin ve Prometheus’u yeniden başlatın. Artık sistem metriklerinizi Prometheus üzerinden izleyebilirsiniz!
Verilerin Görselleştirilmesi: Grafana ile Entegre Etme
Prometheus, verileri toplamak için harika bir araçtır, ancak bu verileri anlamlı bir şekilde görselleştirmek için Grafana gibi bir araç kullanmak işinizi kolaylaştıracaktır. Grafana, Prometheus ile entegre olarak şık ve etkili paneller oluşturmanızı sağlar. Grafana'yı kurmak için aşağıdaki komutları kullanabilirsiniz:
# Grafana'yı kurun
sudo apt-get install -y software-properties-common
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt-get update
sudo apt-get install grafana
# Grafana hizmetini başlatın
sudo systemctl enable grafana-server
sudo systemctl start grafana-server
Grafana'yı başlattıktan sonra, tarayıcınızda `http://localhost:3000` adresine gidin. Varsayılan kullanıcı adı ve şifre `admin`dir. Grafana’ya Prometheus’u veri kaynağı olarak eklemek için şu adımları izleyin:
1. Sol menüden "Add Data Source" sekmesini seçin.
2. "Prometheus"u seçin.
3. Prometheus URL’si olarak `http://localhost:9090` girin.
4. Kaydet ve test edin.
Şimdi, Prometheus’tan aldığınız verileri Grafana’da görselleştirebilir ve sunucu performansınızı kolayca izleyebilirsiniz.
Sunucu İzleme ile İlgili İpuçları
- Uyarılar: Prometheus, belirlediğiniz eşik değerlerine göre uyarılar gönderebilir. Bu özellik, sisteminizin kesintiye uğramadan önce sorunları belirlemenize yardımcı olur. Örneğin, disk kullanımı %90’a ulaştığında bir uyarı alabilirsiniz.
- Özel Metrikler: Kendi uygulamalarınız için özel metrikler oluşturabilirsiniz. Bu, daha detaylı ve anlamlı izleme sağlar.
- Grafana Dashboardları: Grafikler, çizelgeler ve paneller sayesinde verilerinizi daha rahat analiz edebilirsiniz. Birçok hazır grafik şablonu bulunmaktadır.
İzleme sisteminizi oluştururken, gerçek zamanlı veri takibi yaparak sunucularınızda oluşan potansiyel sorunları erken tespit edebilir ve proaktif bir şekilde çözebilirsiniz.