Bu yazımda size tick kurulumunu göstereceğim peki tick nedir?
Telegraf, Influx DB, Chronograf, Kapacitor dörtlüsünün baş harflerininden oluşuyor. Her birinin farklı bir vazifesi bulunmakta. Telegraf zaman verilerini toplamakta Influx ise depolama işini üstleniyor Chronograf ise sizi uğraştırmadan mininmum efor ile kullanışlı bir grafik ekranı sunuyor. Kapacitor ise Zabbix’de olduğu gibi trigger işini yapıyor anormallikleri tespit eder örneğin cpu %80 hdd kullanımı %100 gibi vs vs.
Uyarı ları size bildirme konusunda güzel bir özellik var system admini olanları mailbox’ında okunmamış yüzlerce alert maili vardır. Burada yine config ederseniz mail alabiliyorsunuz isterseniz telegram’dan bile mesaj alabiliyorsunuz aktif olarak telegram kullanan ben için güzel bir özellik.
Bu yazıda sadece kurulum kısmını göstereceğim sonraki yazılarda alertler ve bildirme kısmınada değineceğim.
Sırayla yum install -y wget
yum install -y nano
Centos 7 yeni kurduysanız bu iki aracın yüklü olmadığını varsayıyorum wget indirme işlemlerinde kullanacağız nano ise editorümüz config dosyalarını nano ile düzenleyeceğiz siz vi ya da farklı bir editor kullanabiliriniz.
nano /etc/yum.repos.d/influxdata.repo ile açın
içine aşağıdaki repo adresini ekleyin.
[influxdb]
name = InfluxData Repository – RHEL $releasever
baseurl = https://repos.influxdata.com/rhel/$releasever/$basearch/stable
enabled = 1
gpgcheck = 1
gpgkey = https://repos.influxdata.com/influxdb.key
ctrl+o + ctrl+x ile kaydedip çıkın.
Şimdi Influx DB’yi kuruyoruz.
sudo yum install influxdbŞimdi başlatıyoruz.
sudo systemctl start influxdbŞimdi kontrol ediyoruz yeşil renkte active runing şeklinde bir kaç satır çıktı almanız gerekiyor.
systemctl status influxdb
Şimdi Influx’u kurduk içine girip bir user oluşturacağız.
influx
CREATE USER “omert” WITH PASSWORD ‘123456’ WITH ALL PRIVIEGES
show user
bu komutla açtığımız user’ı görüyor olmamız gerek. omert true şeklinde
exit ile çıkıyoruz her şey yolundaysa.
Şimdi nano /etc/influxdb/influxdb.conf ile conf dosyasını açıp bir kaç değişiklik yapıcaz.
[http]
# Determines whether HTTP endpoint is enabled.
# enabled = true
# The bind address used by the HTTP service.
# bind-address = “:8086”
# Determines whether HTTP authentication is enabled.
auth-enabled = true
http tabı altında değeri değiştireceğiz.
Conf dosyasında ilgili satırı hızlı bulmak için ctrl+w ile auth-enabled yazıp entera bastığmızda ilgili satıra gideceğiz aradığımız terimden birden fazla olabilir doğru tabın altında olduğumuzdan emin olmakta fayda var.
Değişikliği yaptıktan sonra kaydedip çıkıyoruz ve servisimizi restart ediyoruz.
sudo systemctl restart influxdb
Şimdi Telegraf’ı kurup ayarlarını yapacağız.
sudo yum install telegraf
nano /etc/telegraf/telegraf.conf
Dosyayı açıp yine username password kısmını oluşturduğumuz user name ve şifreyi yazıyoruz.
[[outputs.influxdb]]
## The full HTTP or UDP endpoint URL for your InfluxDB instance.
## Multiple urls can be specified as part of the same cluster,
## this means that only ONE of the urls will be written to each interval.
# urls = [“udp://localhost:8089”] # UDP endpoint example urls = [“http://localhost:8086”%5D # required
## The target database for metrics (telegraf will create it if not exists). database = “telegraf” # required
…
## Write timeout (for the InfluxDB client), formatted as a string.
## If not provided, will default to 5s. 0s means no timeout (not recommended). timeout = “5s” username = “omert” password = “123456”
## Set the user agent for HTTP POSTs (can be useful for log differentiation)
# user_agent = “telegraf”
## Set UDP payload size, defaults to InfluxDB UDP Client default (512 bytes)
# udp_payload = 512
kaydedip kapatıyoruz ve servisimizi restart ediyoruz.
sudo systemctl start telegraf
ve çalıştığından emin olmak için aşağıdaki komutu çalışıtırıyoruz active runing diyorsa problem yok demektir.
systemctl status telegraf
Şimdi infulux’un içine girmemiz lazım
influx -username ‘omert’ -password ‘123456’
show database diyoruz aşağdaki gibi bir çıktı almamız lazım.
Output name: databases name —- _internal telegraf
use telegraf diyoruz ardından
show measurements diyoruz aşağıdaki gibi bir çıktı üretecek bize.
name: measurements name —- cpu disk diskio kernel mem processes swap system
exit diyoruz.
Şimdi Kapacitor’u kuracağız.
sudo yum install kapacitor
nano /etc/kapacitor/kapacitor.conf
Açılan conf’da username ve password giriyoruz.
# Multiple InfluxDB configurations can be defined.
# Exactly one must be marked as the default.
# Each one will be given a name and can be referenced in batch queries and InfluxDBOut nodes.[[influxdb]]
# Connect to an InfluxDB cluster # Kapacitor can subscribe, query and write to this cluster.
# Using InfluxDB is not required and can be disabled. enabled = true default = true name = “localhost” urls = [“http://localhost:8086”%5D username = “omert” password = “123456” İlgili yerleri değiştirdikten sonra kaydedip çıkıyoruz ve aşağıdaki komutları sırayla çalıştırıyoruz.
sudo systemctl daemon-reload
sudo systemctl start kapacitor
kapacitor list tasksSon komutla birlikte aşağıdaki gibi bir çıktı üretecek ID Type Status Executing Databases and Retention Policies
Şimdi Chronograf’ı kurcağız wget ile dosyamızı indireceğiz.
wget https://dl.influxdata.com/chronograf/releases/chronograf-1.2.0~beta3.x86_64.rpm
İndirdikten sonra kuruyoruz.
sudo yum localinstall chronograf-1.2.0~beta3.x86_64.rpm
sudo systemctl start chronograf
Şimdi port ayarlarını yapalım
sudo firewall-cmd –zone=public –permanent –add-port=8888/tcp
sudo firewall-cmd –reload
Şimdi web tarayımızdan http://ip_adresi:8888 diyerek arayüzümüze bağlanıyoruz.
Login olduktan sonra her şey hazır geliyor makinemize tıklayarak grafiklere ulaşabilirsiniz.
-cheerss
-ömer