Telegraf influxdb grafana sistemų monitoringas
Diegimas ant Debian Jessie 8.x
Influxdb + telegraf diegimas
curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add - echo "deb https://repos.influxdata.com/`lsb_release -is|tr '[A-Z]' '[a-z]'` `lsb_release -cs` stable"| tee -a /etc/apt/sources.list apt-get update apt-get install influxdb systemctl enable influxdb systemctl start influxdb apt-get install telegraf
Jeigu papildomas serveris kuriame konfigūruojamas raportavimo agentas yra atskiras negu pagr. serveris, tuomet reiktų nustatyti raportavimo url /etc/telegraf/telegraf.conf faile Vietoje:
[[outputs.influxdb]] urls = ["http://localhost:8086"]
Padaryti
urls = ["http://manoserveris.lt:8086"]
Auto padarymo komanda yra tokia:
sed -i 's| urls = ["http://localhost:8086"]| urls = ["http://manoserveris.lt:8086"]|g' /etc/telegraf/telegraf.conf
Toliau startuojame servisus:
systemctl enable telegraf systemctl start telegraf
Telegraf'as automatiškai sukurs duombazę influxdb su telefraf prisijungimais, "telegraf" ir slaptažodžiu "metricsmetricsmetricsmetrics".
Grafana
echo "deb https://packagecloud.io/grafana/stable/debian/ `lsb_release -cs` main"| tee -a /etc/apt/sources.list curl https://packagecloud.io/gpg.key | sudo apt-key add - apt-get update apt-get install grafana apt-transport-https systemctl daemon-reload systemctl enable grafana-server systemctl start grafana-server
Panelis bus prieinamas adresu http://serveris.lt:3000 . Prisijungimai: admin, slaptažodis: admin. Pradžiai visur bus tuščia, dėl to, kad Grafana nieko nenutuokia apie duomenis.
- Reikia pakeisti duomenų šaltinį į influxdb (db: telegraf)
- Reikia sukurti savo "dashboard" su teisingais metrics'ais arba importuoti jau padarytus, pavyzdys:
- 928 - leidžia peržiūrėti visus metrics'us pasirinktam hostui.
- 914 tas pats.
- 61 - leidžia metrics'us pasirinktiem hostam, kurie naudoja tą patį grafiką.
- Grafana yra puikus įrankis, kuris gali importuoti trečiųjų šalių dashboard'us (pagal jų numerį), taip pat galima susikurti savo ir pasidalinti su plačia bendruomene.
Saugumo iliuzija
Visi portai jūsų serveriuose turėtų būtų atidaryti tik konkrečiam ip adresui(-ams). Standartiniai slaptažodžiai tai pat turėtų būti pakeisti.
Autorizacijų įjungimas
Influx
influx -execute 'CREATE DATABASE telegraf' influx -execute 'CREATE USER admin WITH PASSWORD "password_for_admin" WITH ALL PRIVILEGES' influx -execute 'CREATE USER telegraf WITH PASSWORD "password_for_telegraf"' influx -execute 'CREATE USER grafana WITH PASSWORD "password_for_grafana"' influx -execute 'GRANT WRITE ON "telegraf" TO "telegraf"' influx -execute 'GRANT READ ON "telegraf" TO "grafana"'
Pakeičiam konfigą:
sed -i 's| # auth-enabled = false| auth-enabled = true|g' /etc/influxdb/influxdb.conf systemctl restart influxdb
Telegraf
Pakeičiam slaptažodį į tokį pat kokį naudojom influx:
sed -i 's| # password = "metricsmetricsmetricsmetrics"| password = "password_for_telegraf"|g' /etc/telegraf/telegraf.conf systemctl restart telegraf
Telegraf agent diegimas kituose serveriuose
CentOS/Redhat/Fedora
cat <<EOF | sudo tee /etc/yum.repos.d/influxdb.repo [influxdb] name = InfluxDB Repository - RHEL \$releasever baseurl = https://repos.influxdata.com/rhel/\$releasever/\$basearch/stable enabled = 1 gpgcheck = 1 gpgkey = https://repos.influxdata.com/influxdb.key EOF
yum install telegraf service telegraf start