涉及軟件
prometheus + Grafana + exporter等,文末有下載地址,親測(cè)可用哦??赡軙?huì)有人問(wèn)這些是什么玩意?莫急,咱一個(gè)個(gè)來(lái)認(rèn)識(shí)他。
環(huán)境模擬
監(jiān)控平臺(tái)所在服務(wù)器 1.1.1.1 (假設(shè)的IP)
被監(jiān)控的web服務(wù)器 2.2.2.2(假設(shè)的IP)
被監(jiān)控的mysql服務(wù)器 3.3.3.3(假設(shè)的IP)
安裝 prometheus
Prometheus是一個(gè)開(kāi)源的系統(tǒng)監(jiān)控和警報(bào)工具包,最初是在SoundCloud上構(gòu)建的。自2012年成立以來(lái),許多公司和組織都采用了Prometheus,該項(xiàng)目擁有非?;钴S的開(kāi)發(fā)人員和用戶社區(qū)。
在 Prometheus + Grafana 的體系架構(gòu)下,Prometheus 相當(dāng)于一個(gè)注冊(cè)中心。
以下操作在監(jiān)控平臺(tái)所在服務(wù)器 1.1.1.1 (假設(shè)的IP)上。
1.1 下載 prometheus
wgethttps://github.com/prometheus/prometheus/releases/download/v2.27.1/prometheus-2.27.1.linux-amd64.tar.gz
1.2 解壓
tarxvfzprometheus-2.27.1.linux-amd64.tar.gz
1.3 用 Vim 打開(kāi) prometheus.yml查看配置文件
這一步暫時(shí)不要修改改文件,打開(kāi)看一眼就行了
1.4 啟動(dòng) prometheus
nohup ./prometheus--config.file=prometheus.yml &
通過(guò)瀏覽器輸入:http://your_ip:9090,
假如能夠跳轉(zhuǎn)到如下頁(yè)面,說(shuō)明 prometheus 安裝啟動(dòng)成功。

安裝 node_exporter
node_exporter 可以看作是 prometheus 的一個(gè)監(jiān)控插件,用于監(jiān)控服務(wù)器的系統(tǒng)指標(biāo)。也就是說(shuō)你要監(jiān)控哪些服務(wù)器,就需要在這些服務(wù)上都安裝并啟動(dòng)node_exporter。
此處我們要在監(jiān)控平臺(tái)所在服務(wù)器 1.1.1.1 (假設(shè)的IP)、被監(jiān)控的web服務(wù)器 2.2.2.2(假設(shè)的IP)、被監(jiān)控的mysql服務(wù)器 3.3.3.3(假設(shè)的IP)三個(gè)服務(wù)器上安裝,安裝方法都一樣。
1.1 下載 node_exporter
wgethttps://github.com/prometheus/node_exporter/releases/download/v1.1.2/node_exporter-1.1.2.linux-amd64.tar.gz
1.2 解壓
tarxvfznode_exporter-1.1.2.linux-amd64.tar.gz
1.3 啟動(dòng) node_exporter
默認(rèn)端口是:9100
nohup./node_exporter
通過(guò)瀏覽器輸入:
http://your_ip:9100/metrics
假如能夠跳轉(zhuǎn)到如下頁(yè)面,則說(shuō)明 node_exporter 安裝啟動(dòng)成功。

1.4 修改 prometheus.yml 配置
這里我們需要修改一下 prometheus.yml 配置,把要監(jiān)控的服務(wù)加進(jìn)來(lái)?;豴rometheus的目錄下,通過(guò)vim prometheus.yml 來(lái)修改 prometheus.yml 配置文件。

如上圖,在末尾加上,一定要注意縮進(jìn)等格式,不然會(huì)報(bào)錯(cuò),最好的方法就是照著配置文件中已有的格式對(duì)下,縮進(jìn)啊空格啊,該有的必須有,但不能有的覺(jué)得不要多!??!
這里我們使用的是file_sd_configs動(dòng)態(tài)加載job的功能,參數(shù)files就是指定了我們要加載啥yml文件在啥地方,這里使用了*做通配符,加載所有以yml結(jié)尾的文件。

看到了吧,在指定目錄下,創(chuàng)建了倆個(gè)yml文件,他們會(huì)被自動(dòng)加載。這兩個(gè)yml里則是配置要監(jiān)控的機(jī)器信息,比如linux.yml中的內(nèi)容如下

[]里的就寫(xiě)被監(jiān)控服務(wù)器的ip,web服務(wù)對(duì)應(yīng)的端口都是9100,instance則是可以自定義寫(xiě)名稱(chēng),方便在Grafana中查看,也是特別要注意縮進(jìn)、空格等語(yǔ)法問(wèn)題。
1.5 重啟 Prometheus
nohup ./prometheus--config.file=prometheus.yml &
安裝Grafana
Grafana是一款用Go語(yǔ)言開(kāi)發(fā)的開(kāi)源數(shù)據(jù)可視化工具,可以做數(shù)據(jù)監(jiān)控和數(shù)據(jù)統(tǒng)計(jì),帶有告警功能。
此處我們要在監(jiān)控平臺(tái)所在服務(wù)器 1.1.1.1 (假設(shè)的IP)上操作
1.1下載 Grafana
wgethttps://dl.grafana.com/oss/release/grafana-8.0.1.linux-amd64.tar.gz
1.2 解壓
tarxvzfgrafana-8.0.1.linux-amd64.tar.gz
1.3 啟動(dòng) Grafana
nohup./bin/grafana-server web &
通過(guò)瀏覽器輸入:http://your_ip:3000,進(jìn)入Grafna的監(jiān)控平臺(tái)。一開(kāi)始會(huì)讓你輸入用戶名和密碼,默認(rèn)用戶名和密碼都是 admin。隨后,你需要重新設(shè)置一個(gè)密碼。登陸之后,會(huì)進(jìn)入到 Grafna 的歡迎頁(yè)面。

配置 Grafna
安裝完成之后還是一個(gè)空殼,你的給他配置才能收集到服務(wù)器的數(shù)據(jù)信息
1.1 配置數(shù)據(jù)源(Data sources)
點(diǎn)擊 Add data source

選擇數(shù)據(jù)源為 Prometheus,點(diǎn)擊 Select
在 “Settings” Tab下,填寫(xiě) Name 和 URL

URL 為 Prometheus 的服務(wù)地址。
填寫(xiě)完畢后,點(diǎn)擊 Save & test
隨后,再點(diǎn)擊上邊的 “Dashboards” Tab

把 Prometheus Stats、Prometheus 2.0 Stats、Grafana metrics 都 import 進(jìn)來(lái)。
這樣,數(shù)據(jù)源就已經(jīng)配置好了。
1.2 配置 Dashboard 模版

在紅框里填入8919,這是一個(gè)中文的 Dashboard 模版的ID,輸入后,點(diǎn)擊 Load。
如果想用別的 Dashboard,也可以上官網(wǎng)去自由選擇別的展示面板,鏈接:
https://grafana.com/dashboards
輸入自定義的 Dashboad 名稱(chēng),選擇 VictoriaMetrics 下拉框?yàn)椋篜rometheus,然后點(diǎn)擊 Import,這樣就完成了 Dashboard 的配置。
1.3 炫酷的監(jiān)控看板

至此就完成了linux服務(wù)的監(jiān)測(cè),下次我們來(lái)看看如何監(jiān)控mysql服務(wù)。記得右下角點(diǎn)個(gè)贊哦~