首页 > 其他分享 >[转载]修复容器中的top指令以及/proc文件系统中的信息

[转载]修复容器中的top指令以及/proc文件系统中的信息

时间:2023-08-26 21:44:20浏览次数:39  
标签:容器 rw lib top 文件系统 var proc lxcfs

如何修复容器中的top指令以及/proc文件系统中的信息呢?

通过lxcfs解决Docker和Kubernetes环境中解决遗留应用无法识别容器资源限制的问题。

wget https://copr-be.cloud.fedoraproject.org/results/ganto/lxd/epel-7-x86_64/00486278-lxcfs/lxcfs-2.0.5-3.el7.centos.x86_64.rpm
yum install lxcfs-2.0.5-3.el7.centos.x86_64.rpm 

# systemctl enable lxcfs

# systemctl start lxcfs
docker run -it -m 256m \
> -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 \
> centos /bin/bash
free -m

Linuxs利用Cgroup实现了对容器的资源限制,但在容器内部依然缺省挂载了宿主机上的procfs的/proc目录,其包含如:meminfo, cpuinfo,stat, uptime等资源信息。一些监控工具如free/top或遗留应用还依赖上述文件内容获取资源配置和使用情况。当它们在容器中运行时,就会把宿主机的资源状态读取出来,引起错误和不便。

top 是从 /prof/stats 目录下获取数据,所以道理上来讲,容器不挂载宿主机的该目录就可以了。lxcfs就是来实现这个功能的,做法是把宿主机的 /var/lib/lxcfs/proc/memoinfo 文件挂载到Docker容器的/proc/meminfo位置后。容器中进程读取相应文件内容时,LXCFS的FUSE实现会从容器对应的Cgroup中读取正确的内存限制。从而使得应用获得正确的资源约束设定。kubernetes环境下,也能用,以ds 方式运行 lxcfs ,自动给容器注入争取的 proc 信息。

原文出处:https://blog.csdn.net/weixin_42388901/article/details/85621000

标签:容器,rw,lib,top,文件系统,var,proc,lxcfs
From: https://www.cnblogs.com/JasonCeng/p/17659502.html

相关文章

  • The 2022 ICPC Asia Nanjing Regional Contest(A.Stop, Yesterday Please No More)
    模拟边界(不是袋鼠)移动,通过二维差分维护左上角和右下角,同时注意排除重复的点#include<bits/stdc++.h>usingnamespacestd;#defineendl"\n"typedeflonglongll;constintN=1e3+5;intf[N][N];intmain(){ios::sync_with_stdio(false),cin.tie(0),cout.......
  • Kali Linux 2023.3 发布(内部基础设施和 Kali Autopilot 重大更新)
    KaliLinux2023.3发布(内部基础设施和KaliAutopilot重大更新)请访问原文链接:https://sysin.org/blog/kali-linux-2023/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org更新说明2023年8月23日,星期三KaliLinux2023.3发布(内部基础设施和Kali自动驾驶仪)......
  • windws10 安装docker desktop
    Windows10企业版安装dockerdesktop前置要求dockerdesktop安全系统要求:安装WSL2或者开启Hyper-Vwindows容器特性官方推荐WSL2,安装配置推荐使用WSL替代Hyper-V,下面主要安装WSL安装WSL安装WSL的前置条件:操作系统要求windows11: Home或Pro21H2或更高版本,......
  • 安装celery后,提示WARNING/MainProcess...you should set broker_connection_retry_on_
    调用了Celery的config_from_object方法,并新建文件celery_config.py存放设置 在celery中设置broker_connection_retry_on_startup=True 效果没有提示了。 ......
  • 生信:RNA-Seq 比对工具性能比较 [STAR、Tophat2、HISAT2]
    RNA-Seq比对工具性能比较参考文章:https://yanzhongsino.github.io/2021/11/19/omics_transcriptome.RNA-seq/https://www.biostars.org/p/288726/比对(align)介绍序列比对又称为alignRNA-Seq分析中的策略从文件类型来看如下:graphLRFASTQ文件----->SAM文件-----......
  • Linux系统:第四章:Linux文件系统
    Linux文件系统 概述Linux系统中只有一个文件系统,以“/”作为根目录,从根目录出发可以找到任何一个文件和目录。这样就有了一个访问目录、文件的统一规范。在根目录下的诸多目录都有特定的作用,其中有些目录对我们日常操作来说非常的重要。[bin]是binary的缩写,这个目录存放着......
  • java-结束端口对应的process
    importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;publicclassProcessKiller{publicstaticvoidmain(String[]args){intport=8080;//要释放的端口号try{//构造命令......
  • 常见磁盘文件系统格式
    NTFS(win)最大分区2TB,支持大文件读写目前多用于电脑、移动硬盘等各种大中型空间容量的磁盘。FAT16:最大分区2GB,我们以前用的DOS、Windows95都使用FAT16文件系统FAT32(win)最大分区2TB,兼容性好些,适合移动存储却多用于U盘、内存卡等小型磁盘ext3和ext4是linux文件系统格式Ext3目前......
  • uboot 通过网络启动内核和根文件系统
    一、开发背景由于开发阶段需要频繁修改内核镜像文件和根文件系统,如果每次修改都通过烧写emmc或者烧录sd卡制卡过于繁琐,所以需要通过网络启动和加载二、开发需求内核镜像文件(zImage)和根文件系统(rootfs)创建好后,存放于Ubuntu中,开发板启动过程中自动提取对应的文件。......
  • buildroot 构建根文件系统
    一、开发背景原开发板的文件系统拥有很大的冗余文件,需要裁剪文件系统或者根据需要定制文件系统二、开发需求1、构造最小系统,支持基本指令,例如cd、ls、tar等基础指令三、开发环境LinuxUbuntu 4.15.0-65-generic+ buildroot-2023.02.3+i.mx6d(cortex-A9)......