influxdb+grafana+telegraf 伺服器監控

weixin_34185364發表於2017-12-01

本文為轉載,原文:influxdb+grafana+telegraf 伺服器監控

介紹

本文將介紹influxdb + grafana + telegraf搭建的伺服器監控平臺,可以監控cpu,硬碟等資訊。

具體作用如下:

telegraf收集服務的各指標資訊。
influxdb儲存收集的資訊
grafana顯示收集出來的資料

另外本文都是在centos6.9系統下進行的。

安裝

telegraf

telegraf是安裝在被監控的伺服器上的。
具體各平臺的安裝可參考官方文件
這裡僅介紹centos的安裝方法

新建yum安裝檔案

vim /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

執行安裝

sudo yum install telegraf

安裝成功,如下圖


4822713-4a26a3f12b435734.png
image

啟動服務:

sudo service telegraf start
4822713-5d5d7e798f607c81.png
image

驗證安裝結果:

telegraf --version
4822713-14652d1fe440b311.png
image

influxdb安裝

influxDB的安裝可以參考官方的安裝方法
官方安裝文件

我這邊使用的是centos,所以下面我會把Centos下的安裝過程記錄下來。
在Centos終端依次執行以下命令即可:

wget https://dl.influxdata.com/influxdb/releases/influxdb-1.3.7.x86_64.rpm
sudo yum localinstall influxdb-1.3.7.x86_64.rpm
4822713-9defc9b0b069e182.png
image

4822713-74cb2e1c95425873.png
image

4822713-952327f722be31ad.png
image

安裝完成後,執行啟動服務的命令:

sudo service influxdb start
4822713-516b40f0618f4db0.png
image

至此,我們的influxDB便是安裝完成了。

grafana安裝

可參考官方安裝文件

wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-4.6.2-1.x86_64.rpm 
sudo yum localinstall grafana-4.6.2-1.x86_64.rpm

安裝成功:


4822713-97dddf7aab797400.png
image

啟動服務(centos7)

systemctl start grafana-server

然後即可通過IP:3000埠訪問了。


4822713-5a2fddc4cb3302b8.png
image

預設管理員的使用者名稱和密碼為
admin
admin

配置

telegraf配置

配置檔案路徑:

/etc/telegraf/telegraf.conf

編輯該配置檔案

  • 資料來源配置(outputs.influxdb節點):
[[outputs.influxdb]]
  urls = ["http://192.168.18.118:8086"]  #infulxdb地址
  database = "telegraf" #資料庫
  precision = "s"
  timeout = "5s"
  username = "admin" #帳號
  password = "admin" #密碼
  • cpu配置(inputs.cpu節點):
[[inputs.cpu]]
  ## Whether to report per-cpu stats or not
  percpu = true
  ## Whether to report total system cpu stats or not
  totalcpu = true
  ## If true, collect raw CPU time metrics.
  collect_cpu_time = false
  ## If true, compute and report the sum of all non-idle CPU states.
  report_active = false
  • 硬碟配置(inputs.disk)
  ## By default, telegraf gather stats for all mountpoints.
  ## Setting mountpoints will restrict the stats to the specified mountpoints.
  # mount_points = ["/"]

  ## Ignore some mountpoints by filesystem type. For example (dev)tmpfs (usually
  ## present on /run, /var/run, /dev/shm or /dev).
  ignore_fs = ["tmpfs", "devtmpfs", "devfs"]
  • 記憶體配置(inputs.mem)
# no configuration
# Read metrics about system load & uptime

配置完成後重啟telegraf

service telegraf restart

grafana配置

至此,我們的telegraf已經能完整的採集資料,並且將資料錄入到influxdb中,接下來就是配置grafana來顯示資料。
首先我們要用管理員賬戶登入grafana。登入之後大致是這樣的,如果是第一次登入介面,可能稍稍有點不一樣。


4822713-6071c1863487dc61.png
image

新增datasource

  • 點選左上角的logo,彈出選單,選擇DataSource,如下圖:


    4822713-0fe59c4084421248.png
    image
  • 完成上面步驟之後,進入以下介面,並點選add data source按鈕。

    4822713-ea6706744f6685b3.png
    image

  • 進入add data source介面

    4822713-b621f07d376468f2.png
    image

    name: datasource別名,自己隨便定義
    type: 資料庫型別,這裡選擇influxdb即可
    url: 即influxdb的地址,http://xxx.xxx.xxx:8086
    access: 可選擇直連和代理,我這裡就直接選擇直連了。
    HTTP Auth: http 認證,可不填,保持預設。
    4822713-88d8cdc1086dbf20.png
    image

    database: influxdb中的資料庫名稱
    user: influxdb的使用者名稱
    password: influxdb的使用者密碼
    最後輸入完成之後點選add按鈕即可新增資料來源。

新增dashboard

  • 按照下圖順序,可配置該dashboard基本資訊


    4822713-af5a2629cd44a9ef.png
    image

    4822713-f6224a62d0394b1a.png
    image
  • 點選左上角的logo,彈出選單,選擇Dashboards下的+ New,如下圖:

    4822713-f9614d0e25b5022e.png
    image

  • 進入以下介面,點選gragh, 新增圖表


    4822713-74310c91781ffed2.png
    image
  • 之後進入以下介面,下圖即是新建的圖表,但是現在這個圖表還缺少資料,接下來就是資料的編輯,如下圖,在圖表的title部位單擊,會彈出個選單,選擇其中的edit進行編輯。

    4822713-bcbbec38636349d5.png
    image

  • 編輯的介面如下:


    4822713-e208d26e3b020353.png
    image

    general: 一般配置
    metrics: 資料配置
    axes: x,y座標配置
    legend: 圖例配置
    display: 顯示配置
    alert: 警告配置
    下面分別介紹下上述的配法

general

4822713-eaa081f451f12608.png
image

如上圖,下面就重要欄位解釋下
title: 圖表標題
Description: 圖表描述
span: 寬度,將螢幕平分12等份,此欄位輸入所佔比例
height: 高度,單位px

metrics

4822713-84de22645315c125.png
image

如上圖,

  1. 選擇已新增過的資料來源
  2. 編寫查詢條件區域
  3. 選單按鈕
  4. 是否可用開關
  5. 刪除查詢語句
  6. 新增查詢語句

可以看到2區域的查詢語句是通過選擇選取的,當然也可以直接輸入sql語句即可,見下圖,點選選單按鈕,切換編輯模式,即可直接手寫sql語句。


4822713-6c684d17aaeae617.png
image

Axes

4822713-f326b74fbb4ca708.png
image

如圖:
LeftY: 左y軸
RightY: 右y軸
X-Axis: x軸
在y座標上可配置是否顯示,單位,刻度,最小值,最大值,小數點精確位數,已經顯示文字。
x軸上可配置是否顯示,以及x軸模式。

Display

4822713-b8135d426cf53405.png
image

如圖,display可以配置顯示的樣式等。

Alert

4822713-5109c22c194e667e.png
image

如圖,Alert可配置一些預警條件。

完成

最後結果截圖


4822713-35b5c6c8f552d0c5.png
image

本文為原創,轉載請註明出處

相關文章