Docker監(jiān)控

Cadvisor是Google用來監(jiān)測單節(jié)點(diǎn)的資源信息的監(jiān)控工具。它的資源消耗也比較低。但是,它有它的局限性,它只能監(jiān)控一個Docker主機(jī)。因此,如果你是多節(jié)點(diǎn)的話,那就比較麻煩了,你得在所有的主機(jī)上都安裝一個Cadvisor,肯定特別不方便。值得注意的是,如果你使用的是Kubernetes,你可以使用heapster來監(jiān)控多節(jié)點(diǎn)集群。Google的Kubernetes中也缺省地將其作為單節(jié)點(diǎn)的資源監(jiān)控工具,各個節(jié)點(diǎn)缺省會被安裝上Cadvisor。在免費(fèi)的世界里,Cadvisor作為一個很不錯的工具,越來越多的引起很多人過渡性的關(guān)注。以下我們將詳細(xì)介紹如何創(chuàng)建我們的Docker監(jiān)控方案。

cAdvisor: Google開源的用于監(jiān)控基礎(chǔ)設(shè)施應(yīng)用的工具,它是一個強(qiáng)大的監(jiān)控工具,不需要任何配置就可以通過運(yùn)行在Docker主機(jī)上的容器來監(jiān)控Docker容器,而且可以監(jiān)控Docker主機(jī)。更多詳細(xì)操作和配置選項(xiàng)可以查看Github上的cAdvisor項(xiàng)目文檔。

influxDB: 它是一個分布式時間序列數(shù)據(jù)庫。cAdvisor僅僅顯示實(shí)時信息,但是不存儲監(jiān)視數(shù)據(jù)。因此,我們需要提供時序數(shù)據(jù)庫用于存儲cAdvisor組件所提供的監(jiān)控信息,以便顯示除實(shí)時信息之外的時序數(shù)據(jù)。

Grafana: Grafana可視化展示平臺允許我們可視化地展示監(jiān)控信息。它允許我們對influxDB進(jìn)行查詢,并通過強(qiáng)大的圖表功能進(jìn)行可視化展示。

【influxdb】

1. 概念

database 數(shù)據(jù)庫

measurement 數(shù)據(jù)庫中的表

points 表里面的一行數(shù)據(jù)

Point 由時間戳(time)、數(shù)據(jù)(field)、標(biāo)簽(tags)組成。

series 所有在數(shù)據(jù)庫中的數(shù)據(jù),都需要通過圖表來展示,而這個series表示這個表里面的數(shù)據(jù),可以在圖表上畫成幾條線:通過tags排列組合算出來。具體可以通過SHOW SERIES FROM "表名" 進(jìn)行查詢。

8083: Web admin管理服務(wù)的端口, http://localhost:8083

8086: HTTP API的端口

8088: 集群端口(目前還不是很清楚, 配置在全局的bind-address,默認(rèn)不配置就是開啟的)

2. 常用命令

show databases;

create database "cadvisor";

SHOW USERS

# 創(chuàng)建用戶

CREATE USER "cadvisor" WITH PASSWORD '123456' WITH ALL PRIVILEGES

grant all on mydb to user

show grants for user

DROP USER "cadvisor"

auth

use cadvisor;

SHOW measurements

# influxdb下的表在插入數(shù)據(jù)庫的時候自動會創(chuàng)建

INSERT t_user,host=serverA,region=us_west value=0.64

SELECT * FROM t_user ORDER BY time DESC LIMIT 3

DROP MEASUREMENT "t_user"? //刪除表

一般情況下基于時間序列的point數(shù)據(jù)不會進(jìn)行直接刪除操作,一般我們平時只關(guān)心當(dāng)前數(shù)據(jù),歷史數(shù)據(jù)不需要一直保存,不然會占用太多空間。這里可以配置數(shù)據(jù)保存策略(Retention Policies),當(dāng)數(shù)據(jù)超過了指定的時間之后,就會被刪除。

SHOW RETENTION POLICIES ON "cadvisor"? ? //查看當(dāng)前數(shù)據(jù)庫的Retention Policies

CREATE RETENTION POLICY "rp_name" ON "cadvisor" DURATION 30d REPLICATION 1 DEFAULT? //創(chuàng)建新的Retention Policies

#注釋如下:

rp_name:策略名

db_name:具體的數(shù)據(jù)庫名

30d:保存30天,30天之前的數(shù)據(jù)將被刪除

它具有各種時間參數(shù),比如:h(小時),w(星期)

REPLICATION 1:副本個數(shù),這里填1就可以了

DEFAULT 設(shè)為默認(rèn)的策略

也可以通過如下命令修改和刪策略:

ALTER RETENTION POLICY "rp_name" ON "cadvisor" DURATION 3w DEFAULT

DROP RETENTION POLICY "rp_name" ON "cadvisor"

3. 安全

influxdb類似與mongodb,默認(rèn)是不開啟用戶認(rèn)證的,可以修改其 conf文件,配置http塊內(nèi)容如下:

[http]

? enable = true

? bind-address = ":8086"

? auth-enabled = true? # 開啟認(rèn)證

4. web管理

默認(rèn)情況下未開啟web管理功能??梢酝ㄟ^修改influxdb.conf文件中admin項(xiàng)的配置開啟web管理界面,具體如下:

[admin]

? # Determines whether the admin service is enabled.

? enabled = true

? # The default bind address used by the admin service.

? bind-address = ":8083"

注意 :

1. 0.13以上版本的image默認(rèn)不支持web admin,測試中設(shè)置了也沒用,所以暫時用0.12版

2. tutum版的設(shè)置不了auth

3. web admin只能創(chuàng)建用戶,查詢,不能增刪改數(shù)據(jù),需登陸容器-->influx-->auth,再進(jìn)行數(shù)據(jù)操作

【cadvisor】

1. 每個節(jié)點(diǎn)機(jī)都要啟動,需配置對應(yīng)的數(shù)據(jù)源,配置好后,在對應(yīng)的influxdb database中SHOW MEASUREMENTS可看到load_average等表

【grafana】

1. 可在.ini中配置相關(guān)參數(shù),暫時未使用grafana.ini等配置

2. 配置數(shù)據(jù)源dataSource

基本信息

Name:influxdb

Type:influxDB

Default: checked

Http settings

Url:http://mytest-influxdb:8086

Access:proxy

HTTP Auth

Basic Auth: checked

InfluxDB Details

Database:cadvisor

User:cadvisor

Password:123456

配置好后點(diǎn)擊 Save&Test

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 文檔來源 文檔來源:How to setup Docker Monitoring 由garyond翻譯、校正及整理...
    garyond閱讀 9,324評論 4 22
  • 如今,越來越多的公司開始使用 Docker 了,現(xiàn)在來給大家看幾組數(shù)據(jù): 2 / 3 的公司在嘗試了 Docker...
    OneAPM閱讀 1,615評論 0 15
  • 如今,越來越多的公司開始使用 Docker 了,2 / 3 的公司在嘗試了 Docker 后最終使用了它。為了能夠...
    OneAPM閱讀 987評論 0 3
  • 11月了。 脖子酸痛得很,覺得自己要得脊椎病了。 制定了一個背書計(jì)劃,也不知道能不能按照計(jì)劃堅(jiān)持下去。真的,在自己...
    鯨寐Amor閱讀 184評論 0 0
  • 往年過春節(jié),我總要回西都。帶上一個包。包是當(dāng)時尚未成為一個父親的J陪我在城隍廟的一條街道買的。容量足夠大,我去時只...
    老晁閱讀 368評論 0 0

友情鏈接更多精彩內(nèi)容