|
系統node |
IPlinux |
監控主機git |
CentOS 7github |
192.168.56.200golang |
被監控主機web |
CentOS 7vim |
192.168.56.201瀏覽器 |
如下操做皆在監控主機(192.168.56.200)上執行。網絡
# systemctl stop firewalld
# systemctl disable firewalld
因爲Prometheus是由go語言開發的,因此在安裝Prometheus以前須要先在監控主機上安裝go環境。這裏採用源碼編譯的方式安裝。工具
因爲國內網絡環境的緣由,若是可以科學的上網,可今後地址下載最新版本的安裝包:https://golang.org/dl/ 。
未能科學的上網的,可今後連接下載:連接:https://pan.baidu.com/s/1gefGeXmoFmjGxSGxgCuQfw 提取碼:cz6l
安裝包下載之後,上傳至監控主機的 /usr/local 目錄下。
# tar -xvf go1.13.1.linux-amd64.tar.gz
添加/usr/loacl/go/bin目錄到PATH變量中。添加到/etc/profile 或$HOME/.profile均可以
# vim /etc/profile // 在最後一行添加
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin // wq保存退出後source一下
# source /etc/profile
執行go version,若是顯示版本號,則Go環境安裝成功。
安裝包下載地址:https://prometheus.io/download/#prometheus
將下載後安裝包,上傳至 /usr/local 目錄下
解壓安裝包:
# tar -xvf prometheus-2.4.0.linux-amd64.tar.gz # mv prometheus-2.4.0.linux-amd64/ prometheus
Prometheus的配置文件位於 /usr/local/Prometheus/prometheus.yml ,此處採用默認配置。
進入解壓後的文件夾下,啓動Prometheus。
# cd prometheus
# ./prometheus --config.file=/usr/local/prometheus/prometheus.yml &
瀏覽器打開http://192.168.56.200:9090(IP:9090端口)便可打開普羅米修斯自帶的監控頁面
Ctrl+C 結束掉Prometheus進程。建立Prometheus服務,讓Prometheus以服務的方式,開機自啓。
添加系統服務
# vim /etc/systemd/system/prometheus.service
將如下內容寫入文件中
[Unit] Description=Prometheus Monitoring System Documentation=Prometheus Monitoring System [Service] ExecStart=/usr/local/prometheus/prometheus \ --config.file=/usr/local/prometheus/prometheus.yml \ --web.listen-address=:9090
Restart=on-failure
[Install] WantedBy=multi-user.target
啓動服務,設置開機自啓,並檢查服務開啓狀態
# systemctl daemon-reload # systemctl enable prometheus # systemctl start prometheus # systemctl status prometheus
Prometheus自帶的監控頁面顯示的內容沒有那麼直觀,咱們安裝grafana來使監控數據看起來更加直觀
此處安裝採用源碼編譯的方式安裝。在監控主機(192.168.56.200)/usr/local 目錄下 下載安裝包,並安裝
# wget https://dl.grafana.com/oss/release/grafana-6.4.3-1.x86_64.rpm
# yum localinstall grafana-6.4.3-1.x86_64.rpm
沒有wget工具的,首先安裝wget工具:
# yum -y install wget
設置grafana服務開機自啓,並啓動服務
# systemctl daemon-reload # systemctl enable grafana-server.service # systemctl start grafana-server.service
瀏覽器訪問http://192.168.56.200:3000(IP:3000端口),便可打開grafana頁面,默認用戶名密碼都是admin,初次登陸會要求修改默認的登陸密碼
(1)點擊主界面的「Add data source」
(2)選擇Prometheus
(3)填寫數據源設置項
URL處填寫Prometheus服務所在的IP地址,此處咱們將Prometheus服務與Grafana安裝在同一臺機器上,直接填寫localhost便可
點擊下方 【Save & Test】按鈕,保存設置
(4)Dashboards頁面選擇「Prometheus 2.0 Stats」
點擊Dashboards選項卡,選擇Prometheus 2.0 Stats
(5)查看監控
點擊Grafana圖標,切換到Grafana主頁面,而後點擊Home,選擇咱們剛纔添加的Prometheus 2.0 Stats,便可看到監控數據
至此Prometheus服務端及Grafana配置完成。
如下操做皆在被監控主機(192.168.56.201)上操做。
# systemctl stop firewalld
# systemctl disable firewalld
首先下載node-exporter安裝包,下載地址:https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-arm64.tar.gz
將下載的安裝包上傳至被監控主機(192.168.56.201)的 /usr/local 目錄下
解壓安裝包
# tar -zvxf node_exporter-0.18.1.linux-amd64.tar.gz # mv node_exporter-0.18.1.linux-amd64/ node_exporter
進入解壓後的node_exporter文件夾下,啓動node_exporter
# cd node_exporter # ./node_exporter
在瀏覽器訪問 http://192.168.56.201:9100/metrics ,若出現數據則服務開啓成功
Ctrl+C 結束掉node_exporter進程,建立node_exporter服務,讓node_exporter以服務的方式,開機自啓。
添加系統服務
# vim /etc/systemd/system/node_exporter.service
將如下內容寫入文件中
[Unit] Description=node_exporter After=network.target [Service] ExecStart=/usr/local/node_exporter/node_exporter Restart=on-failure [Install] WantedBy=multi-user.target
啓動服務,設置開機自啓,並檢查服務開啓狀態
# systemctl daemon-reload # systemctl enable node_exporter # systemctl start node_exporter # systemctl status node_exporter
至此node_exporter配置完成。
如下操做皆在監控主機(192.168.56.200)上進行。
進入Prometheus的安裝文件夾,打開Prometheus配置文件
# cd /usr/local/prometheus # vim prometheus.yml
在scrape_configs標籤下,添加如下內容,配置監控
- job_name: 'Linux' static_configs: - targets: ['192.168.56.201:9100'] labels: instance: Linux
如下是Prometheus.yml 文件所有內容
# my global config global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). # Alertmanager configuration alerting: alertmanagers: - static_configs: - targets: # - alertmanager:9093 # Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: # - "first_rules.yml" # - "second_rules.yml" # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself.
scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: 'prometheus' # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ['localhost:9090'] - job_name: 'Linux' static_configs: - targets: ['192.168.56.201:9100'] labels: instance: Linux
保存退出,重啓Prometheus服務
# systemctl restart prometheus
瀏覽器訪問 http://192.168.56.200:9090/targets 查看監控信息
能夠看到,Linux機器已經加入進來。
添加dashboard
Grafana官方爲咱們提供了不少dashboard頁面,可直接下載使用。瀏覽器訪問 https://grafana.com/grafana/dashboards 下載所須要的dashboard頁面
選擇數據源爲Prometheus,而後咱們選擇第一個dashboard
複製dashboard Id
而後打開咱們的Grafana監控頁面,打開dashboard的管理頁面
點擊【import】按鈕
而後將咱們剛纔的複製的dashboard Id 複製進去
Grafana會自動識別dashboard Id 。
而後點擊【change】按鈕,生成一個隨機的UID,而後點擊下方輸入框,選擇咱們以前建立的數據源Prometheus,最後點擊【Import】按鈕,便可完成導入。
導入成功後,會自動打開該Dashboard,便可看到咱們剛纔設置好的node監控
至此Prometheus+Grafana 安裝配置,並監控Linux機器,配置完成。