摘要: cgroup还有其他一些限制特性,如io,pid,hugetlb等,这些用处不多,参见Cgroupv1。下面介绍下与系统性能相关的io和hugepage,cgroup的io介绍参考Cgroup - Linux的IO资源隔离 linux IO linux io涉及到对文件(磁盘设备)的读写性能,对io 阅读全文
posted @ 2019-01-23 12:42 charlieroro 阅读(942) 评论(0) 推荐(0) 编辑
摘要: 在centos7的/sys/fs/cgroup下面可以看到与cpu相关的有cpu,cpuacct和cpuset 3个subsystem。cpu用于对cpu使用率的划分;cpuset用于设置cpu的亲和性等,主要用于numa架构的os;cpuacct记录了cpu的部分信息。对cpu资源的设置可以从2个 阅读全文
posted @ 2019-01-18 23:19 charlieroro 阅读(11470) 评论(0) 推荐(0) 编辑
摘要: 测试环境centos7 ,内核版本4.20 内核使用cgroup对进程进行分组,并限制进程资源和对进程进行跟踪。内核通过名为cgroupfs类型的虚拟文件系统来提供cgroup功能接口。cgroup有如下2个概念: subsystem:用于控制cgroup中的进程行为的内核组件,可以在/proc/c 阅读全文
posted @ 2019-01-15 23:43 charlieroro 阅读(20848) 评论(2) 推荐(3) 编辑
摘要: Open Container Initiative(OCI)目前有2个标准:runtime-spec以及image-spec。前者规定了如何运行解压过的filesystem bundle。OCI规定了如何下载OCI镜像并解压到OCI filesystem bundle,这样OCI runtime就可 阅读全文
posted @ 2018-12-29 19:14 charlieroro 阅读(4014) 评论(0) 推荐(1) 编辑
摘要: 使用环境centos7 x86-64 内核版本4.19.9 docker使用非root用户启动,daemon.json配置文件内容如下: 映射的user和group均为如下值 启动方式为 进入容器,在/mnt目录下进行修改文件属性的操作,出现如下错误(此时容器中的user id=0) 解决思路 首先 阅读全文
posted @ 2018-12-19 14:17 charlieroro 阅读(19184) 评论(0) 推荐(0) 编辑
摘要: 环境为centos7,linux内核版本为3.10 出现该问题的原因是内核3.10的bug,升级linux内核即可,升级办法如下,升级完成后重启系统,选择对应的内核版本启动即可。 该问题的讨论参见Not able to run container with non root user 升级指定版本内 阅读全文
posted @ 2018-12-15 16:44 charlieroro 阅读(3909) 评论(0) 推荐(0) 编辑
摘要: 验证环境:centos7 x86/64 内核版本4.19.9 在linux 2.2版本之前,当内核对进程进行权限验证的时候,可以将进程划分为两类:privileged(UID=0)和unprivilege(UID!=0)。其中privileged的进程拥有所有内核权限,而unprivileged则根 阅读全文
posted @ 2018-12-14 11:42 charlieroro 阅读(5115) 评论(0) 推荐(1) 编辑
摘要: https://docs.docker.com/engine/security/userns-remap/#prerequisites 注:以下验证环境为centos7.5 docker 18.09.0 User namespaces 使用user namespaces可以防止容器权限过大造成的风险 阅读全文
posted @ 2018-12-05 10:48 charlieroro 阅读(2193) 评论(0) 推荐(0) 编辑
摘要: 本地启动了一个sshd的容器服务,但该容器经常会被重启导致ssh连接失败,使用kubectl describe pod命令查看改命令发现有容器返回值为137,一般是系统环境原因,且一般为内存不足导致的,参见:Container exits with non-zero exit code 137 登陆 阅读全文
posted @ 2018-12-04 14:43 charlieroro 阅读(1876) 评论(0) 推荐(0) 编辑
摘要: 使用docker network的好处是:在同一个网络上的容器之间可以相互通信,而无需使用expose端口特性 本文使用docker-swarm进行overlay网络的分析。使用2个vmware模拟2个node节点,不关注swarm的使用,无关信息会有所删减,如不相关的接口或端口 将node1作为m 阅读全文
posted @ 2018-11-02 19:11 charlieroro 阅读(2489) 评论(0) 推荐(0) 编辑