<h4 class="wp-block-heading">Prometheus Kurulumu</h4>



<p class="wp-block-paragraph">Prometheus açık kaynaklı, pull temelli monitöring aracıdır. Çok hafif ve iyi bir uyarı mekanizmasına sahiptir. Centos/rhel tabanlı dağıtımlarda aşağıdaki gibi kurabilirsiniz.</p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph"><a href="https://prometheus.io/download/">https://prometheus.io/download/</a> adresinden şu an güncel sürüm olan 2.34 ü indireceğiz.</p>



<figure class="wp-block-image size-large is-resized"><a href="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image.png"><img src="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-1024x263.png" alt="" class="wp-image-1463" width="608" height="156"/></a><figcaption>Prometheus download</figcaption></figure>



<p class="wp-block-paragraph">Başlamadan önce eğer root değilseniz sudo kullanabilir olduğunuza emin olunuz, networkünüzde prometheus un default portu olan 9090 portu için bir engel olmamalı , dilerseniz farklı bir boş port kullanabilirsiniz. Prometheus&#8217;u indirebilmek için kuracağınız sunucu internete açık olmalı , eğer internet erişiminiz yok ise farklı bir sunucudan ilgili dosyayı indirip kuracağınız sunucuya aktarabilirsiniz.</p>



<p class="wp-block-paragraph"></p>



<p class="wp-block-paragraph">Aşağıdaki şekilde indirip, açıp klasörün adını değiştirelim. Ben işlemi /home dizini içindeyken yapıyorum, Siz dilediğiniz path&#8217;te yapabilirsiniz.</p>



<p class="wp-block-paragraph"></p>



<pre class="wp-block-code"><code>cd /home
curl -LO url -LO https://github.com/prometheus/prometheus/releases/download/v2.34.0/prometheus-2.34.0.linux-amd64.tar.gz
tar -xvf prometheus-2.34.0.linux-amd64.tar.gz
mv prometheus-2.34.0.linux-amd64 prometheus-files</code></pre>



<p class="wp-block-paragraph">Şimdi prometheus kullanıcısı ve dizinlerini oluşturup haklarını verelim.</p>



<pre class="wp-block-code"><code>sudo useradd --no-create-home --shell /bin/false prometheus
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
sudo chown prometheus:prometheus /etc/prometheus
sudo chown prometheus:prometheus /var/lib/prometheus</code></pre>



<p class="wp-block-paragraph">Şimdi binary&#8217;leri /usr/local/bin &#8216; e kopyalayıp izinlerini değiştirelim</p>



<pre class="wp-block-code"><code>sudo cp prometheus-files/prometheus /usr/local/bin/
sudo cp prometheus-files/promtool /usr/local/bin/
sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool</code></pre>



<p class="wp-block-paragraph">Aynı şekilde kütüphaneler için de işlem yapıyoruz.</p>



<pre class="wp-block-code"><code>sudo cp -r prometheus-files/consoles /etc/prometheus
sudo cp -r prometheus-files/console_libraries /etc/prometheus
sudo chown -R prometheus:prometheus /etc/prometheus/consoles
sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries</code></pre>



<p class="wp-block-paragraph">Şimdi prometheus&#8217;un yaml dosyasını oluşturup aşağıdakileri ekleyip kaydedelim. Dilerseniz portu değiştirebilirsiniz.</p>



<pre class="wp-block-code"><code>sudo vi /etc/prometheus/prometheus.yml</code></pre>



<pre class="wp-block-code"><code>global:
 scrape_interval: 10s

scrape_configs:
 - job_name: 'prometheus'
 scrape_interval: 5s
 static_configs:
 - targets: &#91;'localhost:9090']</code></pre>



<p class="wp-block-paragraph">Kaydedip çıktıysak şimdi sahipliğini değiştirelim.</p>



<pre class="wp-block-code"><code>sudo chown prometheus:prometheus /etc/prometheus/prometheus.yml
</code></pre>



<p class="wp-block-paragraph">Artık bunu bir servis haline getirebiliriz. Aşağıdaki dosyayı oluştuurp açalım ve içine bir altında yazanlarıkopyalayıp kaydedelim.</p>



<pre class="wp-block-code"><code>vi /etc/systemd/system/prometheus.service</code></pre>



<pre class="wp-block-code"><code>&#91;Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

&#91;Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
 --config.file /etc/prometheus/prometheus.yml \
 --storage.tsdb.path /var/lib/prometheus/ \
 --web.console.templates=/etc/prometheus/consoles \
 --web.console.libraries=/etc/prometheus/console_libraries

&#91;Install]
WantedBy=multi-user.target</code></pre>



<p class="wp-block-paragraph">Systemd servislerini reload edelim ve servisimizi başlatıp çalıştığını kontrol edelim.</p>



<pre class="wp-block-code"><code>sudo systemctl daemon-reload
sudo systemctl start prometheus
sudo systemctl status prometheus</code></pre>



<p class="wp-block-paragraph">Bir sorun yok ise aşağıdaki şekilde bir sonuç elde görmeliyiz.</p>



<figure class="wp-block-image size-full"><a href="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-1.png"><img src="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-1.png" alt="" class="wp-image-1465"/></a><figcaption>Prometheus çalışıyor</figcaption></figure>



<p class="wp-block-paragraph">Şimdi web arayüzünden erişebiliriz. Görüntü aşağıdaki gibi olmalı.</p>



<pre class="wp-block-code"><code>http:&#47;&#47;<;sunucunuzun-ip-adresi>;:9090/graph</code></pre>



<figure class="wp-block-image size-large"><a href="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-2.png"><img src="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-2-1024x204.png" alt="" class="wp-image-1466"/></a><figcaption>Prometheus webui</figcaption></figure>



<figure class="wp-block-image size-large"><a href="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-3.png"><img src="https://www.ayhanarda.com/blog/wp-content/uploads/2022/04/image-3-1024x430.png" alt="" class="wp-image-1467"/></a><figcaption>Prometheus Query</figcaption></figure>


Prometheus Kurulumu
