日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

這期的分享是監(jiān)控實(shí)戰(zhàn),其實(shí)不想寫這篇的,因?yàn)榫W(wǎng)上相關(guān)的文章也挺多的,但是出于光說(shuō)不練都是假把式,而且我也想告訴你:當(dāng)帥氣的普羅米修斯(Prometheus)遇到高顏值的格拉法納(Grafana)究竟會(huì)擦出什么樣的火花?所以忍不住還是想分享啊。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

為了實(shí)戰(zhàn),我們?cè)俅握?qǐng)出架構(gòu)圖,請(qǐng)注意圖中紅色圈 1 的部分,主要分兩條線去實(shí)戰(zhàn)。

第一條戰(zhàn)線:Prometheus 如何監(jiān)控機(jī)器?

采用標(biāo)準(zhǔn)的PGOne技術(shù)組件Prometheus Server + Grafana + node_exporter完成對(duì)機(jī)器的性能監(jiān)控。

第二條戰(zhàn)線:Prometheus 如何監(jiān)控 flink?

采用技術(shù)組件client lib(flink-metrics-prometheus_x.jar) + PushGateway + Prometheus Server + Grafana完成對(duì) flink 的監(jiān)控。

1. Prometheus 如何監(jiān)控機(jī)器?

工欲善其事必先利其器,先下載相關(guān)組件包。prometheus 提供了兩種下載方式,第一種是二進(jìn)制壓縮包的方式,第二種是 Docker 鏡像的方式。

#方式1:二進(jìn)制壓縮包下載鏈接
https://prometheus.io/download/
#方式2:docker鏡像鏈接
https://hub.docker.com/u/prom

本次實(shí)戰(zhàn)均采用 docker 鏡像下載。

docker pull prom/node-exporter
docker pull prom/prometheus
docker pull grafana/grafana

下載完成成, 輸入命令 docker images 列出本地主機(jī)上的鏡像(由于pushgateway鏡像之前在本機(jī)已經(jīng)下載過(guò),你如果第一次跟著做,應(yīng)該看不到這個(gè),后面操作會(huì)進(jìn)行下載)。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

做好準(zhǔn)備工作。

#創(chuàng)建 grafana 數(shù)據(jù)存儲(chǔ)目錄
mkdir /opt/grafana-storage
#因?yàn)?grafana 會(huì)在這個(gè)目錄寫入文件,賦權(quán)限。
chmod 777 -R /opt/grafana-storage
#創(chuàng)建 prometheus 配置文件存放目錄
mkdir /opt/prometheus/
#在 prometheus 配置文件目錄下,創(chuàng)建prometheus.yml文件
vi /opt/prometheus/prometheus.yml
# prometheus.yml中配置靜態(tài)監(jiān)控對(duì)象 targets,輸入如下配置內(nèi)容(請(qǐng)注意修改 IP 為你的真實(shí) IP):
global:
 scrape_interval: 60s
 evaluation_interval: 60s
scrape_configs:
 - job_name: prometheus
 static_configs:
 - targets: ['localhost:9090']
 labels:
 instance: 'prometheus'
 - job_name: linux
 static_configs:
 - targets: ['IP:9100']
 labels:
 instance: 'linux'

準(zhǔn)備就緒,逐個(gè)啟動(dòng)組件。

# 啟動(dòng) node-exporter
docker run -d -p 9100:9100 -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" --net="host" prom/node-exporter
# 啟動(dòng) prometheus
docker run -d -p 9090:9090 -v /opt/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus
# 啟動(dòng) grafana
docker run -d -p 3000:3000 --name=grafana -v /opt/grafana-storage:/var/lib/grafana grafana/grafana

確認(rèn)一下是否都啟動(dòng)了,輸入 docker ps -a 一探究竟。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

再次確認(rèn)一下服務(wù)是否都 OK 了, 逐個(gè)訪問(wèn)一下。

  • node_exporter 訪問(wèn)輸入 http://YOUR_CONF_IP:9100/metrics,效果如下
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • Prometheus 訪問(wèn)輸入 http://YOUR_CONF_IP:9090/targets,效果如下
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • Grafana 訪問(wèn)輸入 http://YOUR_CONF_IP:3000,效果如下
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • 默認(rèn)用戶名密碼 : amin/admin
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • 點(diǎn)擊 Add data source,選擇 Prometheus。
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • 配置url 輸入Prometheus的 ip + 端口,然后點(diǎn)擊 Save&Test 按鈕,會(huì)提示Data source is working。
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • 回到首頁(yè),點(diǎn)擊 New dashboard --> Add Query。
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 


監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • Panel Title 下拉菜單選擇 edit,輸入指標(biāo)會(huì)自動(dòng)提示呦。
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • 效果所見即所得。
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

到這兒,采用 Prometheus Server + Grafana + node_exporter 對(duì)機(jī)器性能指標(biāo)監(jiān)控的實(shí)戰(zhàn),就算演示操作完畢,點(diǎn)到為止,接下來(lái)看看 flink 監(jiān)控如何集成。

 

2. Prometheus 如何監(jiān)控 flink?

第一步:下載 pushgateway 鏡像,并完成啟動(dòng)。

# 下載 pushgateway 鏡像
docker pull prom/pushgateway
# 啟動(dòng) pushgateway
docker run -d -p 9091:9091 prom/pushgateway

第二步:在 prometheus.yml 中添加 pushgateway 的配置,用于告訴 Prometheus 監(jiān)控 pushgateway,并重新啟動(dòng) prometheus。

global:
 scrape_interval: 60s
 evaluation_interval: 60s
scrape_configs:
 - job_name: prometheus
 static_configs:
 - targets: ['localhost:9090']
 labels:
 instance: 'prometheus'
 - job_name: linux
 static_configs:
 - targets: ['IP:9100']
 labels:
 instance: 'linux'
 - job_name: 'pushgateway'
 static_configs:
 - targets: ['IP:9091']
 labels:
 instance: 'pushgateway'

第三步:針對(duì) flink 添加監(jiān)控集成包,直接把 flink-1.8.1/opt 目錄下的 flink-metrics-prometheus-1.8.1.jar 包復(fù)制一份到 flink-1.8.1/lib 目錄下即可。

第四步:然后在 flink 配置文件 flink-conf.yml 中添加如下內(nèi)容(注意修改IP),啟動(dòng) flink 即可。

##metrics
metrics.reporter.promgateway.class: org.Apache.flink.metrics.prometheus.PrometheusPushGatewayReporter
metrics.reporter.promgateway.host: YOUR_CONF_IP
metrics.reporter.promgateway.port: 9091
metrics.reporter.promgateway.jobName: myJob
metrics.reporter.promgateway.randomJobNameSuffix: true
metrics.reporter.promgateway.deleteOnShutdown: false

第五步:回到 Grafana 首頁(yè),點(diǎn)擊 New dashboard,創(chuàng)建一個(gè)新的 dashboard,選擇 flink(注意如果沒有出現(xiàn) flink,那說(shuō)明 flink 沒有啟動(dòng))。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

  • 選擇并添加相關(guān)指標(biāo)看一看。
監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

好了,到這 Prometheus 監(jiān)控 flink 也就完畢了,后續(xù)就是監(jiān)控指標(biāo)如何展示的更好的問(wèn)題,不再贅述。

 

3. 有鐘意的 dashboard,Grafana 如何讓她變成自己的?

網(wǎng)站 https://grafana.com/grafana/dashboards 提供了一系列的模板,可供使用,那該如何導(dǎo)入到自己的 Grafana 下呢?

第一步:選擇鐘意的 dashboard,獲取對(duì)應(yīng)的 dashboard 編號(hào)。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

第二步:回到自己的 Grafana 首頁(yè),選擇"+" --> Import

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

然后輸入 Copy 的 dashboard 編號(hào),點(diǎn)擊 load。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

效果所見即所得,高端大氣上檔次。

監(jiān)控實(shí)戰(zhàn)Prometheus+Grafana

 

好了,帥氣的 Prometheus 與高顏值的 Grafana 擦出的煙火就放到這兒吧。不過(guò)在結(jié)束之前,還是歸攏一下本次演示遇到的問(wèn)題吧,以供你參考。

 

4. 問(wèn)題集錦

問(wèn)題一:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

linux解決方案
 systemctl daemon-reload
 systemctl restart docker.service
 
mac下直接啟動(dòng) docker 服務(wù)就行了。

問(wèn)題二:Get http://localhost:9100/metrics: dial tcp [::1]:9100: connect: connection refused

解決方案:修改 prometheus.yml 文件中 targets: ['localhost:PORT'] 中的 localhost:PORT 修改為真實(shí) IP:PORT 就行了。

問(wèn)題三:啟動(dòng) grafana 時(shí)始終失敗。

mkdir: cannot create directory '/var/lib/grafana/plugins': Permission denied
GF_PATHS_DATA='/var/lib/grafana' is not writable.
You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migration-from-a-previous-version-of-the-docker-container-to-5-1-or-later

解決方案:chmod 777 /opt/grafana-storage

問(wèn)題四:Prometheus 監(jiān)控 flink 時(shí),始終找不到 PrometheusPushGatewayReporter。

JAVA.lang.ClassNotFoundException: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter

解決方案:直接把 flink-1.8.1/opt 目錄下的 flink-metrics-prometheus-1.8.1.jar 包復(fù)制一份到 flink-1.8.1/lib 目錄下即可。

 

5. 命令集錦

docker pull prom/node-exporter //拉取鏡像
docker images //查看本機(jī)所有鏡像
docker run ... //創(chuàng)建一個(gè)新的容器
docker stop $(docker ps -a -q) //停止所有容器
docker rm $(docker ps -a -q) //刪除所有容器
docker logs -f --tail=10 CONTAINER_ID //查看容器的最后10行的日志

 

好了,每天進(jìn)步一點(diǎn)點(diǎn), 一年后你的進(jìn)步將遠(yuǎn)遠(yuǎn)超乎你的想象。如果感覺文章有點(diǎn)意思,請(qǐng)多多分享轉(zhuǎn)發(fā)吧。
 

本文轉(zhuǎn)載自微信公眾號(hào)「一猿小講」



分享到:
標(biāo)簽:監(jiān)控 Prometheu
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定