容器监控知多少 (2) cAdvisor
本篇已加入《.NET Core on K8S学习实践系列文章索引》,可以点击查看更多容器化技术相关系列文章。上一篇我们了解了docker自带的监控子命令以及开源监控工具Weave Scope,这一篇我们来了解一下Google开发的容器监控工具cAdvisor。cAdvisor能够较好地展示Host和容器两个层次的监控数据,并且能够展示历史变化数据。
实验环境:阿里云ECS主机两台,CentOS 7.4
一、cAdvisor简介
为了解决容器的监控问题,Google开发了一款容器监控工具cAdvisor(_Container Advisor_),它为容器用户提供了对其运行容器的资源使用和性能特征的直观展示。 它是一个运行守护程序,用于收集,聚合,处理和导出有关正在运行的容器的信息。
cAdvisor可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况。
cAdvisor使用go语言开发,如果想了解更多请访问其官方github:https://github.com/google/cadvisor
二、安装cAdvisor
cAdvisor 有两种方法来运行,一种是以二进制可执行文件安装运行,另一种是以 Docker 容器运行。这里我们主要介绍第二种以Docker方式安装运行。
我们可以通过以下命令来在实验环境的云服务器中运行cAdvisor容器:
docker run \ --volume=/:/rootfs:ro \ --volume=/var/run:/var/run:rw \ --volume=/sys:/sys:ro \ --volume=/var/lib/docker/:/var/lib/docker:ro \ --volume=/dev/disk/:/dev/disk:ro \ --publish=8080:8080 \ --detach=true \ --name=cadvisor \ google/cadvisor:latest
执行之后你会看到以下提示信息:
看到以上信息代表我们以docker方式运行成功,我们可以通过 http://[Your Host IP]:8080(默认是8080端口)来访问cAdvisor。看到以下界面,代表我们的安装工作完成。
三、使用cAdvisor
3.1 监控容器
cAdvisor提供了对Host和容器的监控,单击“Docker Containers”链接:
我们即可进入容器监控列表
单击其中某个容器例如exceptionless_api_1,即可进入该容器实例的监控页面(前方长图,注意流量):
我们可以清楚地看到:CPU、内存、网络、文件系统的动态使用情况。
3.2 监控Host
除了监控容器之外,cAdvisor也提供了对Host的监控。退出Docker Containers,我们在首页就可以看到如下图所示的Host动态性能数据:
同样,我们也能清楚地看到CPU、内存、网络、文件系统等资源的动态使用情况以及历史数据的变化。
四、小结
本文简单介绍了Google开发的容器监控工具cAdvisor的基本安装与使用,总结下来cAdvisor可以帮助展示Host和容器两方面的监控数据,还可以动态展示历史数据的变化。但是,cAdvisor的缺点也非常明显,那就是它的操作界面比较简陋,而且需要多个页面来回跳转,其易用性甚至还不如Weave Scope。更为重要的是,它不能监控多个Host,而Weave Scope至少还可以监控多个Host。那么,为何我们还要学习它呢?因为cAdvisor有一个亮点之处就在于它可以将监控数据导出给第三方工具,而这个第三方工具就是我们下一篇将要学习的Prometheus,Prometheus会对这些监控数据做进一步加工处理。
因此,我们后续的监控结构是:Prometheus + Node Exporter & cAdvisor + Grafana,敬请期待。
参考资料
Cloud Man,《每天5分钟玩转Docker容器技术》
二二向箔,《容器监控实践-cAdvisor》
,《低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
X-Pack Spark 访问OSS
简介 对象存储服务(Object Storage Service,OSS)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。本文主要介绍通过Spark操作OSS数据的常见方式,代码以Scala为例。本文的代码可以通过“数据工作台”提交。 前置条件 OSS已经创建bucket,假设名称为:test_spark 已创建具备读写OSS bucket:test_spark权限的用户。假设用户名为test_oss,访问OSS的AccessKeyID和AccessKeySecret分别为:accessId,accessKey。 OSS的路径格式为:oss://${AccessKeyID}:${AccessKeySecret}@${bucketName}.${endPoin
- 下一篇
阿里云ecs和域名的购买,绑定,备案教程
本文包含了阿里云ecs和域名的购买,绑定,备案教程,需要在阿里云购买ecs和域名并备案的用户参考,通过此文您可以了解在阿里云购买ecs、域名并如何做备案的大致流程。 一.阿里云ECS的购买流程1.注册阿里云2.登录阿里云进入阿里云系统,选择-产品-云服务器ECS 3.点击立即购买4.选择ECS云服务器所在地域,实例规格,地域,如果您是新手用户不知道如何选择,推荐参考阿里云帮助中心:①.地域和可用区(教您选择地域)。②.场景配置选型(教您根据场景选择实例规格) 5.选择镜像和存储,镜像根据根据自己的程序开发语言来选择,例如asp、asp.net大多选择windows系统,php大多选择linux系统。 6.带宽选择,建议在带宽选择上购买的时候可以先不用太大的带宽,在网站流量上来之后再增加带宽即可,充分利用ecs云服务器的弹性云计算,节约成本。 最后就是根据提示一步一步购买就行了,很简答,就不做过多介绍了。 以上是自定义购买ecs云服务器流程,我们也可以通过阿里云最新的优惠活动快速购买活动ecs云服务器,例如正在火热进行中的2019阿里云双11拼团86元起,同时也可以参考导航栏最新活动总页...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8编译安装MySQL8.0.19
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Hadoop3单机部署,实现最简伪集群