基于Docker的资源监控的实现方法与流程

文档序号:11917826阅读:1511来源:国知局
基于Docker的资源监控的实现方法与流程

本发明涉及计算机云计算性能领域,具体地说是一种基于Docker的资源监控的实现方法。



背景技术:

云计算是一种全新的计算模式,通过虚拟化技术,基于不同软、硬件资源实现大规模的虚拟化资源池,通过网络提供各类计算资源,网络使得用户可以跨越地理空间的限制,随时随地到云计算资源中心获取各类所需的资源,即云计算实现了计算资源的实现形态、计算服务的应用模式的根本性变革,所以,云计算是信息产业的一次新的革命。

Docker是基于Linux容器(LXC)创建的一个应用容器引擎,属于操作系统层虚拟化,主要用于解决服务器应用快速构建、部署和分享的问题。Docker对LXC做了一层封装,提供更易于使用的接口,使容器的管理操作更加方便。在宏观角度看,容器更像是轻量级的虚拟化。每个容器都有自己的网络堆栈、进程空间、文件系统等,可以使用容器安装任何想要的软件,各软件独立运行,不影响其他容器和宿主机。而从底层角度看,容器只是宿主机上一个进程,利用内核特征如namespace和cgroups来提供这种隔离。

基于上述情况,有效利用Docker,实时监控一个运行容器的运行情况,目前还没有合理的方法应用。

公开的相关专利文件:名称为“一种基于Docker的Web服务器架构及各模块之间的交互方法”,该文件公开了“一种基于Docker的Web服务器架构及各模块之间的交互方法,所述基于Docker的Web服务器架构包括:负载均衡模块、服务发现模块、系统监控模块、私有库模块和若干服务器模块。可以方便的应用于需要高可用性及扩展性的Web系统,同时实现如下功能:(1)监控、存储及显示CoreOS服务器及其运行Docker容器的运行状况;(2)根据监控数据动态伸缩集群;(3)通过搭建Docker私有库及相关策略,以非重启的方式更新业务”。

名称为“一种基于docker技术的云跳板机系统”,该文件公开了“一种基于docker技术的云跳板机系统,包括:中央管理模块,其部署docker容器服务器的运行环境以构建docker容器服务器,并构建docker容器管理模块,在满足预定条件时,向docker容器管理模块发送创建主docker跳板机的指令,部署该主docker跳板机的运行环境;docker容器管理模块,其在接收到创建主docker跳板机的指令时,创建并启动相应的主docker跳板机,将docker容器服务器的端口映射到主docker跳板机的交互服务端口;主docker跳板机,其添加需要管理的服务器,监控并记录用户对需要管理的服务器的访问行为。本方案可降低部署虚拟跳板机的成本”。

上述公开文件与本

技术实现要素:
要解决的技术问题,采用的技术手段都不相同。

发明内容

本发明的技术任务是提供一种基于Docker的资源监控的实现方法。

本发明的技术任务是按以下方式实现的,该方法是创建基于Docker的资源监控模型,利用轻量级容器Docker的资源限制能力完成容器资源的控制,实现对容器内系统参数进行全面的收集与存储,并提供对信息的实时监控。

所述的基于Docker的资源监控模型中,利用Docker守护进程支持的Remote API,其中的stats API实时监控一个运行容器的CPU、内存、网络I/O与块设备I/O运行情况,Docker stats默认返回JSON格式性能监控数据;根据返回的实时监控结果,对资源的调配和负载做出进一步判断提供决策依据。

所述的Docker支持两种CPU资源限制方式:绑定到一个或多个具体CPU线程,或者是在绑定具体CPU线程的基础上对线程资源进程权重分配。

所述的Docker默认配置一个容器使用主机上的全部内存,docker run命令中的-m参数限制容器使用内存的最大值。

所述的Docker支持—blkio-weight参数,用来限制容器的I/O。

该方法的具体操作步骤如下:

1)定时调用stats接口获得容器内系统参数的监控数据;

2)通过Docker返回容器监控数据;

3)通过监控服务器处理并过滤监控数据;

4)存储通过监控服务器处理并过滤的监控数据;

5)查询存储的Docker容器监控信息;

6)获取所需要的Docker容器监控信息;

7)返回所查询的监控信息;

8)应答查询的监控信息。

基于Docker的资源监控模型,该资源监控模型包括监控客户端、监控数据服务器、监控服务器、Docker Deamon四个主要部分;

监控客户端负责监控数据的查询展示功能;

监控数据服务器负责存储监控数据;

监控服务器用于处理过滤监控数据;

Docker Deamon用于提供监控数据。

本发明的基于Docker的资源监控的实现方法和现有技术相比,有效的维护了整体系统的稳定性,实现对容器内的系统参数进行全面的收集与存储,实现对集群内的资源使用情况进行监督。

附图说明

附图1为基于Docker的资源监控的实现方法的集群监控机构结构示意图。

附图2为基于Docker的资源监控的实现方法的监控机制流程图。

具体实施方式

实施例1:

该基于Docker的资源监控的实现方法是创建基于Docker的资源监控模型,该资源监控模型包括Monitor clinet(监控客户端)、Monitor Data Server(监控数据服务器)、Monitor Server(监控服务器)、Docker Deamon四个主要部分;

Monitor clinet负责监控数据的查询展示功能;

Monitor Data Server负责存储监控数据;

Monitor Server用于处理过滤监控数据;

Docker Deamon用于提供监控数据。

该方法是利用轻量级容器Docker的资源限制能力完成容器资源的控制,实现对容器内系统参数进行全面的收集与存储,并提供对信息的实时监控。

所述的基于Docker的资源监控模型中,利用Docker守护进程支持的Remote API,其中的stats API实时监控一个运行容器的CPU、内存、网络I/O与块设备I/O运行情况,Docker stats默认返回JSON格式性能监控数据;根据返回的实时监控结果,对资源的调配和负载做出进一步判断提供决策依据。

所述的Docker支持两种CPU资源限制方式:绑定到一个或多个具体CPU线程,或者是在绑定具体CPU线程的基础上对线程资源进程权重分配。

所述的Docker默认配置一个容器使用主机上的全部内存,docker run命令中的-m参数限制容器使用内存的最大值。

所述的Docker支持—blkio-weight参数,用来限制容器的I/O。

该方法的具体操作步骤如下:

1)定时调用stats接口获得容器内系统参数的监控数据;

2)通过Docker返回容器监控数据;

3)通过监控服务器处理并过滤监控数据;

4)存储通过监控服务器处理并过滤的监控数据;

5)查询存储的Docker容器监控信息;

6)获取所需要的Docker容器监控信息;

7)返回所查询的监控信息;

8)应答查询的监控信息。

通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1