prometheus監(jiān)控docker

prometheus是一款短期監(jiān)控軟件,他在云計算領(lǐng)域有很高的應(yīng)用,與容器技術(shù)融合度非常高秕衙,在此我嘗試使用prometheus監(jiān)控docker容器迁央,并自動發(fā)現(xiàn)新容器掷匠。

安裝prometheus

創(chuàng)建配置文件

非容器版本的prometheus非常好部署,解壓完就可以用了漱贱,但是docker中的就比較繁瑣槐雾,我們需要提前準(zhǔn)備要映射的配置文件。
在任意路徑下創(chuàng)建prometheus.yml

vim prometheus.yml

文件內(nèi)容如下:
(這個文件內(nèi)容是我從容器中復(fù)制出來的幅狮,沒有多余的東西募强,但保證不報錯)

# 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']
運(yùn)行容器
docker run -itd -p 9090:9090 \
-v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \
--name prometheus  \
prom/prometheus
參數(shù) 釋義
-i 以交互模式運(yùn)行容器株灸,通常與 -t 同時使用
-t 為容器重新分配一個偽輸入終端,通常與 -i 同時使用
-d 后臺運(yùn)行容器并返回容器ID擎值,沒有此參數(shù)終端會被容器占用
-p 映射端口慌烧,冒號前是宿主機(jī),冒號后是容器
-v 映射路徑/文件鸠儿,映射文件的話宿主機(jī)中必須存在這個文件
--name 指定容器名稱

如果出現(xiàn)任何容器閃退的現(xiàn)象通過查看容器日志定位錯誤

docker logs --tail=10 prometheus(容器名)
#10行不夠可以多來點(diǎn)

然后查看鏡像是否在運(yùn)行屹蚊,在瀏覽器上輸入IP:9090,能顯示出頁面表示容器正常運(yùn)行进每。

安裝cAdvisor

prometheus無法獨(dú)自收集容器信息汹粤,所以需要cAdvisor,同時他還可以完成自動發(fā)現(xiàn)容器的任務(wù)田晚。

docker run -itd --name cadvisor -p 9001:8080 \
-v /:/rootfs:ro \
-v /var/run:/var/run:rw \
-v /sys:/sys:ro \
-v /var/lib/docker/:/var/lib/docker:ro \
-v /dev/disk/:/dev/disk:ro \
google/cadvisor

我宿主機(jī)上的8080端口有別的用處嘱兼,所以映射了9001,另外這里的路徑映射每一行具體什么作用我不太清楚贤徒,希望有大佬可以指點(diǎn)指點(diǎn)芹壕。
安裝完之后瀏覽器輸入IP:9001,如果能看到下面這個貓頭鷹則表示成功運(yùn)行接奈。


cadvisor主頁.jpg

安裝node-exporter

cAdvisor采集到的信息需要讓node-exporter采集到踢涌,然后才能被prometheus獲取到,所以需要在docker中安裝node-exporter序宦。

docker run -d -p 9100:9100 --name node-exporter \
-v "/proc:/host/proc" \
-v "/sys:/host/sys" \
-v "/:/rootfs" \
-v "/etc/localtime:/etc/localtime" \
prom/node-exporter \
--path.procfs /host/proc \
--path.sysfs /host/sys \
--collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"

同樣這里的路徑映射我也不太明白睁壁,需要注意的一點(diǎn),--path.procfs挨厚、--path.sysfs和--collector.filesystem.ignored-mount-points這三個參數(shù)必須放在最后面堡僻,否則docker會報錯。
然后通過瀏覽器輸入IP:9100/metrics來訪問疫剃,如果能看到各項指標(biāo)的參數(shù)表示啟動成功钉疫,像下圖一樣。


node-exporter圖片.png

修改配置文件

現(xiàn)在node-exporter已經(jīng)可以采集到容器信息了巢价,就差prometheus去node-exporter上拉取數(shù)據(jù)了牲阁,所以我們需要在prometheus的配置文件中配置需要拉取數(shù)據(jù)的node-exporter。

將scrape_configs部分的內(nèi)容修改一下壤躲,注意targets后面的IP和端口號城菊。

scrape_configs:
  - job_name: 'prometheus'

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
    static_configs:
    - targets: ['localhost:9090','cadvisor宿主機(jī)IP:9001','node-exporter宿主機(jī)IP:9100']

這里要注意一點(diǎn),如果cadviosr碉克、node-exporter和prometheus在同一臺宿主機(jī)上凌唬,那么cadvisor和noed-exporter的IP不可以寫localhost,一定要寫IP漏麦,具體機(jī)制不太清楚客税。推測可能是因?yàn)閜rometheus就在容器里况褪,如果填localhost的話相當(dāng)于訪問容器自身,所以自然無法獲取到數(shù)據(jù)更耻。
最后刪除prometheus容器重建來重載配置文件测垛。
網(wǎng)上有說通過curl -XPOST http://ID:9090/-/reload來重載配置,這需要在啟動容器的時候各位添加參數(shù)并指定yml文件秧均,但我測試的時候沒好使……有時間再研究研究食侮。

安裝grafana

數(shù)據(jù)已經(jīng)收集完成,現(xiàn)在只差將需要的數(shù)據(jù)展示出來目胡,畢竟不能用promQL語言一個一個去查詢锯七。
同樣運(yùn)行docker命令

docker run -itd --name grafana -p 3000:3000 grafana/grafana

我映射了3000端口,然后就可以用瀏覽器訪問這個端口讶隐,進(jìn)入到grafana的界面起胰。
初始用戶名和密碼都是admin久又,初次登陸系統(tǒng)需要更改密碼巫延。


grafana登錄頁面.jpg

登錄成功后就可以看到grafana頁面,首先需要配置數(shù)據(jù)源地消,我忘記有沒有引導(dǎo)了炉峰,這里我直接新建數(shù)據(jù)源。

點(diǎn)擊左側(cè)齒輪選則Data Sources脉执,點(diǎn)擊右側(cè)Add data source疼阔,在下一個頁面中搜索prometheus即可
配置數(shù)據(jù)源1.png

然后填寫prometheus的IP和端口,直接點(diǎn)擊下面的Save&Test就可以了半夷,圖片里沒有把按鈕截取下來婆廊。
配置數(shù)據(jù)源2.png

它作為一個可視化的工具非常強(qiáng)悍,展示的儀表版可以隨意定制巫橄,但好像挺麻煩的樣子淘邻,我就不去弄了,直接使用別人制作好的儀表板湘换。

點(diǎn)擊左側(cè)加號宾舅,選擇import
添加模板1.png

搜索模板編號,可以在官網(wǎng)上找彩倚,監(jiān)控不同的東西選擇不同的儀表板筹我,193用來監(jiān)控docker比較好看,1860用來監(jiān)控linux比較方便帆离。
添加模板2.jpg

一般不需要修改什么蔬蕊,直接點(diǎn)擊import即可,但要注意name位置不能和已有的模板重名
添加模板3.png

這是docker儀表板193的展示結(jié)果
儀表板.png

目前先到這里哥谷,之后我再更新alertmanager的安裝與配置……不知道要等多久岸夯。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末概而,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子囱修,更是在濱河造成了極大的恐慌赎瑰,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件破镰,死亡現(xiàn)場離奇詭異餐曼,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)鲜漩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進(jìn)店門源譬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人孕似,你說我怎么就攤上這事踩娘。” “怎么了喉祭?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵养渴,是天一觀的道長。 經(jīng)常有香客問我泛烙,道長理卑,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任蔽氨,我火速辦了婚禮藐唠,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘鹉究。我一直安慰自己宇立,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布自赔。 她就那樣靜靜地躺著妈嘹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪匿级。 梳的紋絲不亂的頭發(fā)上蟋滴,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天,我揣著相機(jī)與錄音痘绎,去河邊找鬼津函。 笑死,一個胖子當(dāng)著我的面吹牛孤页,可吹牛的內(nèi)容都是我干的尔苦。 我是一名探鬼主播,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼允坚!你這毒婦竟也來了魂那?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤稠项,失蹤者是張志新(化名)和其女友劉穎涯雅,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體展运,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡活逆,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了拗胜。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蔗候。...
    茶點(diǎn)故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖埂软,靈堂內(nèi)的尸體忽然破棺而出锈遥,到底是詐尸還是另有隱情,我是刑警寧澤勘畔,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布所灸,位于F島的核電站,受9級特大地震影響咖杂,放射性物質(zhì)發(fā)生泄漏庆寺。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一诉字、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧知纷,春花似錦壤圃、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至乍桂,卻和暖如春冲杀,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背睹酌。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工权谁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人憋沿。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親齐板。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容