TICK/TIGK運運維metrics棧包括linux
InfuluxDB:爲時間序列數據專門定製的高性能數據存儲。TSM引擎容許高速接收和數據壓縮。徹底go語言編寫。編譯成一個單一的二進制,沒有外部依賴。簡單,高效寫入和查詢HTTP(S) APIs。web
Telegraf:TICK運維棧的在目標機器上的Agent採集工具,做爲服務而言它很輕量級,而且擴展性也強,支持在linux系統下使用腳本對應用,容器等進行監控,監控採集的數據會發送給InfluxDB。sql
Chronograf:管理員用戶界面和平臺可視化引擎。它使你的基礎設施的監視和告警變得易於設置和維護。它使用起來很簡單,包括模板和庫,能夠讓您快速構建儀表板,實現數據的實時可視化,而且能夠輕鬆建立告警和自動化規則。Grafana更成熟,用Grafana替代它。docker
Grafana:一個功能齊全的度量儀表盤軟件,支持從多種數據源讀取數據用圖表顯示,界面美觀,有衝擊力,功能設計方便實用。多用於可視化基礎實施和應用分析的時間序列數據,也可應用在其它領域,包括工業傳感器、家庭自動化、天氣和過程控制。數據庫
Kapacitor:用於時序數據分析、處理引擎。它能夠處理來自InfluxDB的流數據和批量數據。Kapacitor容許插入用戶自定義的邏輯或用戶自定義的函數來處理基於動態門限的告警,匹配模式指標,計算統計異常,並根據這些告警執行特定動做,好比動態負載均衡。支持多種方式告警。
vim
本文基於Centos負載均衡
influxdb運維
添加源curl
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 -y install influxdb
默認沒有用戶名密碼,需建立
influx
CREATE USER "root" WITH PASSWORD 'root' WITH ALL PRIVILEGES
注:先設置用戶名密碼再改以下配置,由於涉及auth-enabled = true
vim /etc/influxdb/influxdb.conf
[http]下
enabled = true
bind-address = ":8086"
auth-enabled = true
[Http]模塊上方加入
[admin]
# 是否啓用該模塊,默認值 : false
enabled = true
# 綁定地址,默認值 :":8083"
bind-address = ":8083"
啓動
systemctl start influxdb
接口進行訪問
curl -G http://localhost:8086/query --data-urlencode "q=show databases"
開機啓動
systemctl enable influxdb
卸載
yum -y remove influxdb
備份出配置文件
mkdir /opt/influxdb-docker/
cp /etc/influxdb/influxdb.conf /opt/influxdb-docker/
用於下篇docker
telegraf
前面安裝influxdb時已經添加了源
yum -y install telegraf
修改配置
vim /etc/telegraf/telegraf.conf
[[outputs.influxdb]]模塊下
解鎖urls = ["http://127.0.0.1:8086"]
解鎖database = "telegraf"
解鎖timeout = "5s"
若influxdb設置了auth-enabled = true,這裏須要設置用戶名密碼
username = "root"
password = "root"
配置官方文檔見:https://docs.influxdata.com/telegraf
設置後auth-enabled=true後在linux操做influx須要用戶名密碼,命令爲auth
influx
auth
show databases
先運行influxdb
而後啓動telegraf
systemctl start telegraf
啓用
systemctl enable telegraf
查看運行狀態
systemctl status telegraf
卸載
yum -y remove telegraf
備份出配置文件
mkdir /opt/telegraf-docker/
cp /etc/telegraf/telegraf.conf /opt/telegraf-docker/
用於下篇docker
kapacitor
yum -y install kapacitor
vim /etc/kapacitor/kapacitor.conf
配置[[influxdb]]模塊
因爲該配置後面會用於docker,urls不能是localhost改爲influxdb的內網ip
username=root
password=root
後面還能夠配置[smtp]等
備份出配置文件
mkdir /opt/kapacitor-docker/
cp /etc/kapacitor/kapacitor.conf /opt/kapacitor-docker/
用於下篇docker
systemctl start kapacitor
systemctl enable kapacitor
web端口9092
配置(略)
Chronograf
爲influxdb添加界面
前面已經添加了源
yum -y install chronograf
修改端口爲8083(可選)
vim /usr/lib/systemd/system/chronograf.service
systemctl daemon-reload
systemctl start chronograf
systemctl enable chronograf
grafana
添加源
見https://grafana.com/docs/installation/rpm/
cat <<EOF | sudo tee /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
EOF
yum -y install grafana
啓動
systemctl start grafana-server
啓用
systemctl enable grafana-server
卸載
yum -y remove grafana-server
進入網站 用戶名密碼都是admin
第一步建立datasource
Name爲telegraf與上面telegraf配置的數據庫名一致
influxdb開啓了auth-enabled = true
須要勾選Basic Auth 數據庫用戶名密碼都是root
見圖:
後面的dashboard隨意了,記得在sql語句中選擇表和列,部分列能夠按*顯示,不然不會展現數據。