Docker 是構(gòu)建和部署軟件的一個(gè)新興的輕量級(jí)的平臺(tái)瑰抵,也是一個(gè)減輕替代虛擬機(jī)的容器。Docker 通過(guò)給開發(fā)者提供兼容不同環(huán)境的鏡像都哭,成為解決現(xiàn)代基礎(chǔ)設(shè)施的持續(xù)交付的一個(gè)流行的解決方案塔拳。
和虛擬機(jī)一樣,容器也需要一個(gè)新的監(jiān)測(cè)方法【丶纾現(xiàn)在有許多開源的監(jiān)控軟件,但部署麻煩肃续,需要許多人力來(lái)進(jìn)行后期維護(hù)黍檩,Luckily,如果你是一個(gè) OneAPM 用戶始锚,現(xiàn)在你可以利用我們最新的應(yīng)用產(chǎn)品:Cloud Insight刽酱。
如果你已經(jīng)安裝了 Cloud Insight 探針實(shí)現(xiàn)了服務(wù)器監(jiān)控,接下來(lái)只需要配置一個(gè)簡(jiǎn)單的 YAML 文件瞧捌,就可以實(shí)現(xiàn)監(jiān)控不同 containers 的性能指標(biāo)棵里。
Docker 性能監(jiān)控是怎么實(shí)現(xiàn)的
Docker 性能監(jiān)控的最簡(jiǎn)單的方法是在直接主機(jī)上運(yùn)行 Cloud Insight,它可以訪問(wèn)容器姐呐,尤其是如果您在現(xiàn)有的全面的主機(jī)操作系統(tǒng)上部署 Docker殿怜,沿用現(xiàn)有的應(yīng)用程序(如數(shù)據(jù)庫(kù))等。
探針在 Docker 環(huán)境中的位置如下:

由于 Docker 使用現(xiàn)有的內(nèi)核結(jié)構(gòu)(namespace 和 cgroup )來(lái)運(yùn)行容器皮钠,Cloud Insight 使用本地 cgroup 的統(tǒng)計(jì)指標(biāo)來(lái)收集 CPU,內(nèi)存赠法,運(yùn)行/停止的 containers 的數(shù)量麦轰。

雖然這是監(jiān)測(cè) Docker 最簡(jiǎn)單的方法,但之后我們還會(huì)提供在 Docker 容器中監(jiān)控所有運(yùn)行的軟件的探針版本砖织,敬請(qǐng)期待款侵。
監(jiān)控 Docker
用標(biāo)簽有效地監(jiān)視多個(gè) containers
鑒于 Docker 是易于使用的輕量級(jí)容器,你可能會(huì)在你的基礎(chǔ)組件上處理于底層物理機(jī)或虛擬主機(jī)幾倍數(shù)量的運(yùn)行容器侧纯。那你是怎么花費(fèi)少量時(shí)間跟蹤和監(jiān)視他們的呢新锈?用 Cloud Insight 的標(biāo)簽(tag)。
tags 是不需要額外工作就可以監(jiān)控大量容器的的關(guān)鍵眶熬。默認(rèn)情況下妹笆,Docker 會(huì)監(jiān)控你的容器并把 「name」「image」 「command」 等屬性作為一個(gè) 「tag」块请。

儀表盤通過(guò)標(biāo)簽訂制指標(biāo)
在 Cloud Insight 中,您可以在自定義儀表盤中基于一個(gè)或多個(gè)標(biāo)簽來(lái)顯示指標(biāo)拳缠。這樣您就可以監(jiān)控多個(gè) containers 的特定的指標(biāo)墩新。使用 tags,你可以輕松地創(chuàng)建儀表盤來(lái)展示從所有容器中抽取的一個(gè)指標(biāo)的圖表數(shù)據(jù)窟坐。
在下面的例子中海渊,我們通過(guò)圖像分解展示出的消耗 CPU 的量。

報(bào)警(Alert)
tags 在定義跨越集群容器的警報(bào)是非常有用的哲鸳。例如臣疑,你正在運(yùn)行 Redis 的容器集群,你希望在一個(gè)容器內(nèi)存耗盡的時(shí)候觸發(fā)報(bào)警徙菠,而不是定義每個(gè)容器一個(gè)警報(bào)讯沈,設(shè)置多個(gè)維度的報(bào)警,是我們 Cloud Insight 在做的懒豹。
你可以看看 Docker 的 運(yùn)行指標(biāo)指南芙盘,里面有所有指標(biāo)的詳細(xì)說(shuō)明。
如果您想輕松地查看 Docker 的性能狀況脸秽,嘗試使用 Cloud Insight Bate 版儒老,安裝 Cloud Insight 后簡(jiǎn)單配置即可實(shí)現(xiàn)。
本文系 OneAPM 工程師編譯整理记餐。OneAPM 是應(yīng)用性能管理領(lǐng)域的新興領(lǐng)軍企業(yè)驮樊,Cloud Insight 能幫助企業(yè)用戶和開發(fā)者輕松實(shí)現(xiàn):監(jiān)控各項(xiàng)基礎(chǔ)組件以及對(duì)數(shù)據(jù)進(jìn)行聚合、過(guò)濾和篩選的功能片酝,致力于打造一個(gè)更為強(qiáng)大的數(shù)據(jù)管理平臺(tái)囚衔。想閱讀更多技術(shù)文章,請(qǐng)?jiān)L問(wèn) OneAPM 官方博客雕沿。