惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
量子位
小众软件
小众软件
C
Cybersecurity and Infrastructure Security Agency CISA
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tenable Blog
V
Vulnerabilities – Threatpost
Know Your Adversary
Know Your Adversary
T
Threat Research - Cisco Blogs
Latest news
Latest news
Spread Privacy
Spread Privacy
C
Cyber Attacks, Cyber Crime and Cyber Security
NISL@THU
NISL@THU
T
Tor Project blog
Hacker News: Ask HN
Hacker News: Ask HN
V2EX - 技术
V2EX - 技术
T
The Exploit Database - CXSecurity.com
博客园 - 三生石上(FineUI控件)
K
Kaspersky official blog
Cyberwarzone
Cyberwarzone
博客园 - 叶小钗
博客园 - 聂微东
Last Week in AI
Last Week in AI
爱范儿
爱范儿
腾讯CDC
博客园 - Franky
美团技术团队
J
Java Code Geeks
O
OpenAI News
L
Lohrmann on Cybersecurity
Simon Willison's Weblog
Simon Willison's Weblog
有赞技术团队
有赞技术团队
T
Threatpost
G
GRAHAM CLULEY
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
宝玉的分享
宝玉的分享
I
Intezer
N
News and Events Feed by Topic
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
The Blog of Author Tim Ferriss
S
Security @ Cisco Blogs
Forbes - Security
Forbes - Security
N
News | PayPal Newsroom
Stack Overflow Blog
Stack Overflow Blog
Scott Helme
Scott Helme
H
Hacker News: Front Page
Cloudbric
Cloudbric

监控宝

100-300 元之间有哪些户外监控推荐? - V2EX 算命的应该已经开始使用人脸识别了吧。 - V2EX K8s 监控是真的难做呀,感觉没有啥头绪 - V2EX 求问国内第三方监控平台有哪些? - V2EX 想给家里整套监控 - V2EX 有奖体验 赢畅销书|体验透视宝业务监控 一眼定位业务故障 - V2EX [重磅新品]自动发现业务拓扑,精准定位根源问题 - V2EX 邀请体验|从业务拓扑图开始 搞定业务运维 - V2EX 游戏平台运维自动化扩展之故障自愈 - V2EX 不容错过 | 一大波新功能来袭 坑爹双十一零点秒杀背后的 API 性能问题初探 - V2EX 不容错过 | 一大波新功能来袭 大促之前 必先压测--压测宝助您决战双 11 - V2EX 监控宝的销售来一发,我们谈谈企业版的 Api 功能 - V2EX B 站运维团队成长的血泪史 - V2EX 感受真实性能压测的“洪荒之力” 压测宝有奖体验中 - V2EX 重磅 | 打造云端压力测试产品,准确感知性能瓶颈 - V2EX 互联网金融网站性能排行榜 - V2EX 来一场说聊就聊的压测分享 - V2EX 选择合适的监控指标 确保跨境电商网站业务稳步增长 - V2EX Hadoop 大数据生态系统及常用组件简介 - V2EX Google 对象描述语言 Jsonnet 应用经验谈 - V2EX 十大性能监控技巧 全面提升你的应用体验 - V2EX 监控宝新增国内 7 地监控节点,看看有没有覆盖你们的业务地区~ - V2EX 无压测 不狂欢 压测宝助您决战 618 - V2EX 监控宝经常轰炸我邮箱啊。。 - V2EX 透视宝 H5 性能管理新鲜出炉 免费体验 - V2EX 支付宝付款的时候, 手机闪关灯依旧会亮一下 - V2EX 服务器宕机后自动重启的简化方法 - V2EX 监控宝新增马来西亚等 7 个监控点 - V2EX 文轩在线:如何让 IT 部门成为企业的价值中心 - V2EX 监控宝妙招:批量修改告警通知联系人 - V2EX 监控宝的日报、周报的取消在哪里?(一图胜千言) - V2EX | 监控宝产品满意度调查 |即可得 20 元话费。 - V2EX 监控宝新增国内及海外监测点--请戳这里~~ - V2EX 监控宝产品功能:一键暂停/开启群组成员短信告警 - V2EX 监控宝 API 监控全面升级 - V2EX 监控宝国际版正式上线 龙珠直播使用透视宝性能管理服务的案例分享 [云干货分享] 发布自动化技术 Release Automation 详解 - V2EX 云智慧透视宝 PHP 应用性能监控实现原理 - V2EX 云智慧透视宝 Java 代码性能监控实现原理 - V2EX 运维生存时间呕血之作:网站运维黑锅如何甩 - V2EX [干货] 前方高能!如何保障 Python 应用的高性能 - V2EX 监控宝同类产品还有哪些?或者说竞争对手有哪些相近的产品 - V2EX 干货 | Docker 文件系统的分层与隔离 - V2EX 监控宝惹火 Docker 监控,开放试用中 - V2EX 全球顶级应用性能监控管理服务商分析 - V2EX 云智慧首席架构师-从西直门立交桥谈 IT 架构与重构 - V2EX
[干货] 解密监控宝 Docker 监控实现原理 - V2EX
cloudwise · 2015-09-17 · via 监控宝

分享人高驰涛( Neeke ),云智慧高级架构师, PHP 开发组成员,同时也是 PECL/SeasLog 的作者。 8 年研发管理经验,早期从事大规模企业信息化研发架构, 09 年涉足互联网数字营销领域并深入研究架构与性能优化。 2014 年加入云智慧,致力于 APM 产品的架构与研发。崇尚敏捷,高效, GettingReal 。

2015 年 9 月,企业级应用性能监控和管理服务商云智慧正式上线了 Docker 监控功能,能够实时监控 Docker 容器的 CPU 、内存、网络流量及 Swap 状态,让开发者和运维人员在使用 Docker 时清晰掌握其资源消耗状况。

作为国内首家实现 Docker 监控的 SaaS 厂商,监控宝 Docker 监控的技术原理是什么?相对国外的 Docker 监控产品有何优势?以下是此次分享的实录,请听 Neeke 细说端详:
1 、 Docker 监控概况
在云时代,仍有大量物理机直接支持服务,相较于虚拟技术来讲,这种方式已经落伍很多,于是各种开源容器技术大大推进了虚拟化技术的发展。
Docker 容器相较于其他容器技术来讲,是比较新的,而且发展最为迅速。原因不用多说,背后有老大哥谷歌撑腰。国内也已经兴起了几个以 Docker 为核心技术的创业公司,比如云智慧的合作伙伴数人、 DaoCloud ,都是前景非常赞的公司。
虽然这么火热,但关于 Docker 的运维一直是个痛点。
可以说,目前全球只有两家 APM 厂商提供了基于 SaaS 的 Docker 运维监控,其一是美国 APM 厂商 New Relic ,他们在 6 月下旬正式发布了 Docker 监控;另一家,则是中国 APM 厂商云智慧 CloudWise ,在继 New Relic 之后的 9 月 7 日,发布上线了 Docker 监控。从某种意义上讲, CloudWise 填补了国内 Docker 监控的 SaaS 服务空白。
2 、 Docker 监控的工作原理
大家都知道, CloudWise 在 APM 领域率先提出了端到端的一体化监控模型,并且在此模型上,发布了技术领先、便于部署和管理的 SmartAgent 软件架构。此次 Docker 监控的实现,也是基于 SmartAgent 的架构来完成的。
SmartAgent 以部署的快捷高效和智能化见长,整个部署过程中,用户在两分钟内便可完成。部署分为两部,首先下载、解压、启动数据发送代理 SendProxy 。 SendProxy 的作用是提供一个高效的本地数据接收队列与数据发送引擎,并且可以在局域网内进行分布式部署,使得不能上网的机器监控也可正常地通过 SendProxy 高效地传输到云智慧的 SaaS 平台。其次,下载、解压、启动 DockerAgent 。
DockerAgent 使用 Python 进行开发并完成编译,目前支持 Ubuntu 和 CentOS 。 DockerAgent 遵循了 SmartAgent 的插件规范,所以,无论监控宝或透视宝用户,都可以直接使用。
DockerAgent 有三个线程,分别是: DockerProcess \ DockerConfig \ DockerPing ,以及一个对象 Task 。三个线程各司其职,同时受 Task 对象控制。 Task 中核心属性是任务惟一标识、任务状态以及任务频率。这些属性由 DockerConfig 与 ClouwWise 云平台定时同步。
当任务状态正常时, DockerProcess 线程开始采集数据,并遵守频率规范。 DockerPing 负责心跳检测,定时产生心跳数据。这些数据,都由 DockerAgent 交由 SendProxy ,并由 SendProxy 存储进入队列,并异步地推送至 CloudWise 云平台。
前面聊到 DockerAgent 插件遵守了 SmartAgent 的插件规范,所以它像其他插件一样,包含了 bin 、 conf 、 lib 、 log 等目录,并存在一个启动脚本。该脚本提供了 start 、 stop 、 status 等命令。
以上是 DockerAgent 的介绍,后续 SmartAgent 的架构与插件规范将会陆续开源发布,届时热衷开源与监控的同学,都可以直接参与进来。
3 、 DockerAgent 数据采集原理
下面我们聊一下 DockerAgent 采集数据的原理。 DockerAgent 首先会使用 docker info 命令来获取 docker 系统信息,这些信息包含了非常有用的数据,如: Containers, Images, Name, CPUs, Data Space Used, Data Space Total, Total Memory 。
这些数据看似简单基础,但却可以解脱掉 Docker 运维同学每天重复 N 次的工作。其次会使用 docker version 来检测 docker 版本,目前我们的 DockerAgent 仅支持 1.15 以上的 Docker 版本。

然后,使用 dockerps 命令来取得容器的运行信息和容器 id ,容器 name ,此时便可获知在此台机器上正在运行的 docker 容器都有哪些。
最后,依次取得这些 docker 容器的性能指标。取得性能指标的方式,有部分使用 docker 原生接口,有部分是运行云智慧自己的算法。其中包含容器与主机的系统时区 /时间;容器的 cpu 使用率(通过 cgroup/cpuacct 内该容器的 cpuacct.stat 取得);容器的 ip ;容器内运行的进程数;容器的内存指标, rss\cache\memory_limit\total_cwop 等(通过 cgroup/memory 内该容器的 memory.stat 取得);容器的网络指标(通过 ifconfig/ statistics 取得)。
DockerAgent 发布上线以后,在当天就接到了非常多热心用户的反馈。很多反馈非常好,我们也在积极地吸收和改进。为大家解决真正头疼的 Docker 运维、监控、管理问题。相信在很短的时间内,将迭代出更优秀、更稳定、更符合用户预期的 DockerAgent ,以此不仅填补国内的 Docker 监控空白,更会真正成为众多 Docker 用户、企业的伙伴,为大家解决真正头疼的 Docker 运维、监控问题。
问:咱们和 datadog 之类 docker 监控有啥区别和优势?
答: DataDog 的安装部署太过繁琐。当时尝试时用了一下午才跑出来数据。 DataDog 的图表定义比较自由,这点是比较好的;而我们的 Docker 监控最大的优势,就是零基础部署。另外, DataDog 太贵,好像一个 Agent 要接近 100 人民币吧。目前 CloudWise 的 DockerAgent 完全免费。
问:刚才说 docherconfig 是定时与云平台同步,同步的是 docker process 和 docker ping 采集到的数据吗?
答:不是同步采集到的数据,是同步配置。
问:我看讲的是通过 sendproxy 异步到云平台的啊,那么 dockerconfing 的作用是什么?
答: DockerConfig 是定时从云平台取得配置信息,采集到的数据,是由 DockerProcess 与 DockerPing 自行交由 SendProxy 。同步的数据其实就是 Task 的属性,比如任务名、任务频率、任务状态。
问:采集数据原理是先 ps 命令机器上那些 docker 容器,再去用 docker info 获得他们的指标吗?
答: dockerinfo 是返回当前机器上整体的 docker 指标,然后 ps 取得活着的 docker 容器,依次取它们各自的指标。
问:那包括了 ps 命令出的 docker 吗? ps 直接就取了吗?这么说 ps 不仅仅是获取那些活的 docker 容器,还包括他们指标?
答: ps 取不到指标,取得的是活的容器并列举;然后用其他的方法取它们的指标。容器名字也是 ps 时列举时一起取得的。
以上是 Neeke 就监控宝 Docker 监控的实现原理进行的分享,大家可以注册监控宝进行免费试用,有任何问题或需求请与我们联系。

监控宝官网: www.jiankongbao.com