[发明专利]获取docker容器资源信息的方法在审
申请号: | 202011240736.8 | 申请日: | 2020-11-09 |
公开(公告)号: | CN112306638A | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 严松;龚致;肖建 | 申请(专利权)人: | 四川长虹电器股份有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50 |
代理公司: | 四川省成都市天策商标专利事务所 51213 | 代理人: | 陈艺文 |
地址: | 621000 四*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 获取 docker 容器 资源 信息 方法 | ||
1.一种获取docker容器资源信息的方法,其特征在于,包括:
修改系统调用表sys_call_table中sys_read函数,将所述sys_read函数替换为docker_read函数,所述docker_read函数的逻辑流程具体包括以下步骤:
(1)判断发起的请求是否是一个资源获取的请求,具体根据请求的路径是否是/proc/meminfo来判定发起的请求是否是资源获取请求,如果是,则继续步骤(2);如果不是,则调用所述sys_read函数;
(2)通过查看task_struct中的css_set指针是否指向Cgroup来判断发起资源请求的进程是否存在cgroups资源限制,如果有,则Cgroups在内核中提供的资源信息获取接口task_struct,得到发起资源请求的进程所在控制组的资源信息结构体mem_cgroup;如果没有,则去调用所述sys_read函数;
将所述资源信息结构体mem_cgroup返回给callback函数,并让callback函数重新调用注册函数进行注册,在callback函数注册完成后,重新生成/proc/meminfo文件,此时,docker容器内的程序可获得容器正确的资源信息。
2.根据权利要求1所述的获取docker容器资源信息的方法,其特征在于,修改系统调用表sys_call_table中sys_read函数,将所述sys_read函数替换为docker_read函数具体包括:
从/boot/System.map中读取系统调用表sys_call_table的内存地址,找到内存地址后,即可将系统调用表sys_call_table中的sys_read替换为所述docker_read函数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川长虹电器股份有限公司,未经四川长虹电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011240736.8/1.html,转载请声明来源钻瓜专利网。