温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java中如何利用LXCFS增强容器隔离性和资源可见性

发布时间:2021-12-13 17:33:32 来源:亿速云 阅读:209 作者:小新 栏目:大数据

这篇文章给大家分享的是有关java中如何利用LXCFS增强容器隔离性和资源可见性的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

JVM会根据宿主机的内存去分配堆内存,所以经常在给容器配额的场景下直接导致java类应用起不来,当然如java10会更好的适配容器,所以本文通过介绍lxcfs来解决容器里面资源可见性问题,让容器内看到的是真实的容器配额资源量。

本文主要讲解如何使用lxcfs增强容器的隔离性和可见性。并使用二进制部署包使用,减轻部署难度。可在离线环境中使用。

基于LXCFS增强docker容器隔离性的分析https://blog.csdn.net/s1234567_89/article/details/50722915

Kubernetes之路 2 - 利用LXCFS提升容器资源可见性https://yq.aliyun.com/articles/566208

使用二进制lxcfs包进行安装部署,下载地址为:https://github.com/cuisongliu/lxcfs/releases/download/lxcfs-3.0.3-binary-install/lxcfs.tar.gz

确保系统中是否有fusermount命令,系统使用fusermount进行卸载挂载点。

安装如图:

java中如何利用LXCFS增强容器隔离性和资源可见性

lxcfs安装步骤

操作是不是很easy?下面我们对比一下效果。

首先是在没有安装lxcfs的主机上执行命令:

bash
1
2
docker run --rm -ti  -m 200m ubuntu bash
free -m

效果如图所示:

java中如何利用LXCFS增强容器隔离性和资源可见性

未使用lxcfs效果图

接下来我们在安装了lxcfs的主机上同样执行命令

bash
1
2
3
4
5
6
7
8
docker run --rm -it -m 200m \
     -v /var/lib/lxcfs/proc/cpuinfo:/proc/cpuinfo:rw \
     -v /var/lib/lxcfs/proc/diskstats:/proc/diskstats:rw \
     -v /var/lib/lxcfs/proc/meminfo:/proc/meminfo:rw \
     -v /var/lib/lxcfs/proc/stat:/proc/stat:rw \
     -v /var/lib/lxcfs/proc/swaps:/proc/swaps:rw \
     -v /var/lib/lxcfs/proc/uptime:/proc/uptime:rw \
     ubuntu bash

效果如图所示:

java中如何利用LXCFS增强容器隔离性和资源可见性

使用lxcfs效果图

到这里lxcfs已经生效了。

这里讲解了docker的使用,对于k8s用户建议使用 https://github.com/fanux/kube/releases/tag/v.12.5-lxcfs-gate 替换k8s的kebelet即可。这是在原生k8s基础上定制集成的一个版本,这样所有的k8s pod都会默认使用了lxcfs

感谢各位的阅读!关于“java中如何利用LXCFS增强容器隔离性和资源可见性”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI