成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Docker 監(jiān)控- Prometheus VS Cloud Insight

liuyix / 2044人閱讀

摘要:由發(fā)明,適合于監(jiān)控基于容器的基礎(chǔ)架構(gòu)。有關(guān)其數(shù)據(jù)聚合的功能可以閱讀數(shù)據(jù)聚合分組新一代系統(tǒng)監(jiān)控的核心功能。所抓取的性能指標算是較為全面,部署和展現(xiàn)方式都是相當簡單易懂的。

如今,越來越多的公司開始使用 Docker 了,2 / 3 的公司在嘗試了 Docker 后最終使用了它。為了能夠更精確的分配每個容器能使用的資源,我們想要實時獲取容器運行時使用資源的情況,怎樣對 Docker 上的應(yīng)用進行監(jiān)控呢?Docker 的結(jié)構(gòu)會不會加大監(jiān)控難度?

可是在沒有專業(yè)運維團隊來監(jiān)控 Docker 的情況下,并且還想加快 Docker 監(jiān)控的日程,怎么辦呢?

我們通過調(diào)查了解到幾種不錯的 Docker 監(jiān)控方法,其中 Prometheus 和 Cloud Insight 讓人很感興趣。

Prometheis

先來說說一套開源的 Docker 監(jiān)控方案:Prometheus;而此篇文字的原文地址:Monitor Docker Containers with Prometheus。

Prometheus 由 SoundCloud 發(fā)明,適合于監(jiān)控基于容器的基礎(chǔ)架構(gòu)。Prometheus 特點是高維度數(shù)據(jù)模型,時間序列是通過一個度量值名字和一套鍵值對識別。靈活的查詢語言允許查詢和繪制數(shù)據(jù)。它采用了先進的度量標準類型像匯總(summaries),從指定時間跨度的總數(shù)構(gòu)建比率或者是在任何異常的時候報警并且沒有任何依賴,中斷期間使它成為一個可靠的系統(tǒng)進行調(diào)試。

Prometheus 支持維度數(shù)據(jù),你可以擁有全局和簡單的指標名像 container_memory_usage_bytes ,使用多個維度來標識你服務(wù)的指定實例。

我已經(jīng)創(chuàng)建了一個簡單的 container-exporter 來收集 Docker 容器的指標以及輸出給 Prometheus 來消費。這個輸出器使用容器的名字,id 和 鏡像作為維度。額外的 per-exporter 維度可以在 prometheus.conf 中設(shè)置。

如果你使用指標名字直接作為一個查詢表達式,它將返回有這個使用這個指標名字作為標簽的所有時間序列。

container_memory_usage_bytes{env="prod",id="23f731ee29ae12fef1ef6726e2fce60e5e37342ee9e35cb47e3c7a24422f9e88",instance="http://1.2.3.4:9088/metrics",job="container-exporter",name="haproxy-exporter-int",image="prom/haproxy-exporter:latest"}    11468800.000000`  

container_memory_usage_bytes{env="prod",id="57690ddfd3bb954d59b2d9dcd7379b308fbe999bce057951aa3d45211c0b5f8c",instance="http://1.2.3.5:9088/metrics",job="container-exporter",name="haproxy-exporter",image="prom/haproxy-exporter:latest"}    16809984.000000` 

container_memory_usage_bytes{env="prod",id="907ac267ebb3299af08a276e4ea6fd7bf3cb26632889d9394900adc832a302b4",instance="http://1.2.3.2:9088/metrics",job="container-exporter",name="node-exporter",image="prom/container-exporter:latest"}  `

...
...

如果你運行了許多容器,這個看起來像這樣:

為了幫助你使得這數(shù)據(jù)更有意義,你可以過濾(filter) and/or 聚合(aggregate) 這些指標。

使用 Prometheus 的查詢語言,你可以對你想的任何維度的數(shù)據(jù)切片和切塊。如果你對一個給定名字的所有容器感興趣,你可以使用一個表達式像 container_memory_usage_bytes{name="consul-server"},這個將僅僅顯示 name == "consul-server" 的時間序列。

像多維度的數(shù)據(jù)模型,來實現(xiàn)數(shù)據(jù)聚合、分組、過濾,不單單是 Prometheus。OpenTSDB 和 InfluxDB 這些時間序列數(shù)據(jù)庫和系統(tǒng)監(jiān)控工具的結(jié)合,讓系統(tǒng)監(jiān)控這件事情變得更加的多元。

接下來,我們?yōu)榇蠹医榻B國內(nèi)一家同樣提供該功能的監(jiān)控方案:Cloud Insight。有關(guān)其數(shù)據(jù)聚合的功能可以閱讀:數(shù)據(jù)聚合 & 分組:新一代系統(tǒng)監(jiān)控的核心功能。

現(xiàn)在我們來對比 Prometheus 和 Cloud Insight 在數(shù)據(jù)聚合、分組(切片)上的展現(xiàn)效果和功能。

數(shù)據(jù)聚合

根據(jù)不同的 Container Name 或 Image Name 對內(nèi)存使用量或 Memeory Cache 進行聚合。

數(shù)據(jù)分組(切片)

根據(jù)不同的 Container Name 或 Image Name 對內(nèi)存使用量或 Memeory Cache進行分組(切片)。

Cloud Insight

Cloud Insight 支持多種操作系統(tǒng)、云主機、數(shù)據(jù)庫和中間件的監(jiān)控,原理是在平臺服務(wù)儀表盤和自定義儀表盤中,采集并處理 Metric,對數(shù)據(jù)進行聚合與分組等計算,提供曲線圖、柱狀圖等多樣化的展現(xiàn)形式。優(yōu)點是監(jiān)控的指標很全,簡單易用,也可以期待一下。

Cloud Insight 監(jiān)控 Docker 試驗

我們用 AcmeAir 作為試驗的應(yīng)用,AcmeAir 是一款由原 IBM 新技術(shù)架構(gòu)部資深工程師 Andrew Spyker,利用 Netflix 開源的 Netflix OSS 打造的開源電子商務(wù)應(yīng)用。

首先,我們要打開 Cloud Insight 監(jiān)控,還好 Cloud Insight 安裝簡單,一條命令即可。接著,我們新建一個用于此次監(jiān)控的儀表盤,依次將想要獲取的指標統(tǒng)統(tǒng)添加進去。

我們添加了以下指標:

docker.cpu.user

docker.cpu.sysytem

docker.containers.running

jvm.heap_memory

jvm.non_heap_memory

jvm.gc.cms.count

jvm.heap_memory_max

jvm.gc.parnew.time

應(yīng)用 Acme 部署在四臺 servers 上,我們開啟四臺 servers, 然后用 JMeter 給應(yīng)用加壓。

隨著時間 JMeter 不斷給應(yīng)用加壓,當 users 人數(shù)達到188時,我們再來看一下儀表盤的視圖。

從圖中可以看到,性能數(shù)據(jù)發(fā)生了變化,根據(jù) JMeter 里的數(shù)據(jù),此時 CPU 占用超過了50%,錯誤率也有所提升;對比來看,根據(jù) Cloud Insight 里的曲線顯示,藍色的線所代表的 Container CPU 占用率已經(jīng)超過50%,逐漸接近75%,系統(tǒng)剩余的 CPU 資源逐漸下降,該 Container 的系統(tǒng) CPU 資源消耗也突然增大。我們可以通過這些定位到 CPU 占用率過高的 Container ,及時而主動地去了解性能瓶頸,從而優(yōu)化性能,合理分配資源。Cloud Insight 所抓取的性能指標算是較為全面,部署和展現(xiàn)方式都是相當簡單易懂的。

總結(jié)

Docker 兼容相比其他的數(shù)據(jù)庫、系統(tǒng)、中間件監(jiān)控,要復(fù)雜一些。由于需要表征不同 Container 的性能消耗,來了解不同應(yīng)用的運行情況,所以數(shù)據(jù)的聚合、切片(分組)和過濾,在 Docker 監(jiān)控中成為了必備功能。

所以我們推薦使用了時間序列數(shù)據(jù)庫,或者類似設(shè)計邏輯的監(jiān)控方案,如:Prometheus 和 Cloud Insight。

而 Docker 單方面的監(jiān)控,可能不太滿足一些大型公司的需求,如果一個工具在監(jiān)控 Docker 同時能夠監(jiān)控其他組件,那就更好了。

國外出現(xiàn)了 Graphite、Grafana 和 Host Graphite,能夠讓用戶將不同數(shù)據(jù)來源都集中在同一個地方進行展現(xiàn);而國內(nèi) Cloud Insight 似乎也是這樣的思路。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/26500.html

相關(guān)文章

  • Docker 監(jiān)控實戰(zhàn)

    摘要:監(jiān)控告警是運營系統(tǒng)最核心的功能之一,騰訊內(nèi)部有一套很成熟的監(jiān)控告警平臺,而且開發(fā)運維同學(xué)已經(jīng)習(xí)慣這套平臺,如果我們針對容器再開發(fā)一個監(jiān)控告警平臺,會花費很多精力,而且沒有太大的意義。也是一款付費監(jiān)控解決方案,計劃收費方案是美分小時。 如今,越來越多的公司開始使用 Docker 了,現(xiàn)在來給大家看幾組數(shù)據(jù): 2 / 3 的公司在嘗試了 Docker 后最終使用了它 也就是說 Docker...

    william 評論0 收藏0
  • 斌哥的 Docker 進階指南—監(jiān)控方案的實現(xiàn)

    摘要:本文轉(zhuǎn)自劉斌博文如何選擇監(jiān)控方案,文中劉斌從技術(shù)的角度深入解釋了監(jiān)控的數(shù)據(jù)采集原理,介紹了現(xiàn)有開源的監(jiān)控方案,以及能夠?qū)M行監(jiān)控功能的主流服務(wù)工具。下一章,劉斌將為大家介紹監(jiān)控的開原方案,主流服務(wù),及其特點。 過去的一年中,關(guān)于 Docker 的話題從未斷過,而如今,從嘗試 Docker 到最終決定使用 Docker 的轉(zhuǎn)化率依然在逐步升高,關(guān)于 Docker 的討論更是有增無減。另一...

    X_AirDu 評論0 收藏0
  • 用 OneAPM Cloud Insight 監(jiān)控 Docker 性能

    摘要:雖然這是監(jiān)測最簡單的方法,但之后我們還會提供在容器中監(jiān)控所有運行的軟件的探針版本,敬請期待。儀表盤通過標簽訂制指標在中,您可以在自定義儀表盤中基于一個或多個標簽來顯示指標。報警在定義跨越集群容器的警報是非常有用的。 Docker 是構(gòu)建和部署軟件的一個新興的輕量級的平臺,也是一個減輕替代虛擬機的容器。Docker 通過給開發(fā)者提供兼容不同環(huán)境的鏡像,成為解決現(xiàn)代基礎(chǔ)設(shè)施的持續(xù)交付的一個...

    leon 評論0 收藏0
  • 幾種 Docker 監(jiān)控工具對比

    摘要:在我們列舉的幾個監(jiān)控的服務(wù)或平臺中,這是唯一一款國內(nèi)產(chǎn)品。也是一款付費監(jiān)控解決方案,計劃收費方案是美分小時。同樣也支持監(jiān)控,還包括對容器級事件的監(jiān)測停止開始等等和管理容器產(chǎn)生的日志。由于是一個監(jiān)控方案,相對來說它的安裝和部署都比較簡單。 輕量級虛擬化容器 Docker,自發(fā)布以來便廣受業(yè)界關(guān)注,在開源界和企業(yè)界掀起了一陣風(fēng)。Docker 容器相對于 VM 有以下幾個優(yōu)勢:啟動速度快;資...

    張春雷 評論0 收藏0
  • 運維 2.0 時代:數(shù)據(jù)聚合和分組

    摘要:靈活查詢,聚合分組并存除開單純的聚合和分組,還支持聚合和分組的復(fù)合查詢。所以,與會聚合為一條曲線,而和的關(guān)系則是分組的關(guān)系。當然,的功能在未來,還遠遠不止這些,高效運維的時代才剛剛開啟。 運維 2.0 時代 運維 2.0 是指,從技術(shù)運維升級為服務(wù)運維,向公司提供可依賴的專業(yè)服務(wù)。運維 2.0 強調(diào)服務(wù)交付能力,而不是技術(shù)能力,需求可依賴、懂業(yè)務(wù)、服務(wù)化的專業(yè)運維。 為了了解運維 2....

    skinner 評論0 收藏0

發(fā)表評論

0條評論

liuyix

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<