Google lmctfy 3.0 - Example

1. cgroup文件系统

作为lmctfy的基础,cgroup文件系统是必要的,否则执行init时会报错

ls /sys/fs/cgroup/
blkio  cpuacct  devices  hugetlb  perf_event
cpu    cpuset   freezer  memory   systemd


说明已经挂载了cgroup文件系统,上面显示的就是cgroup目录文件结构,具体含义参考Linux 容器的建立和简单管理

如果系统没有cgroup,可以自己安装一下。

apt-get install cgroup-lite


2. Example (create a memory-only container with 100MB limit)

下面可以试一下github项目中的例子了。

初始化lmctfy,In order to run lmctfy we must first initialize the machine. This only needs to happen once and is typically done when the machine first boots.

sudo lmctfy init ""

sudo lmctfy create memory_only "memory:{limit:100000000}"


此处的文件目录是以/sys/subsys/为根目录创建的,所以运行时要确保有该目录的读写权限

创建container后,报错···有时间查下原因吧
Command exited with error message: 5: Failed to open file "/sys/fs/cgroup/memory/memory_only/memory.stale_page_age" for hierarchy 7


貌似还能继续,查看创建的container,居然存在!

lmctfy list containers -r /
name="/memory_only"


创建的结果可以看到,试试能不能运行点什么呢

 ls /sys/fs/cgroup/memory
cgroup.clone_children  memory.max_usage_in_bytes        memory.swappiness
cgroup.event_control   memory.move_charge_at_immigrate  memory.usage_in_bytes
cgroup.procs           memory_only                      memory.use_hierarchy
cgroup.sane_behavior   memory.oom_control               notify_on_release
memory.failcnt         memory.pressure_level            release_agent
memory.force_empty     memory.soft_limit_in_bytes       tasks
memory.limit_in_bytes  memory.stat

sudo lmctfy run memory_only "echo hello world"
hello world

sudo lmctfy run -n /memory_only "echo hello from a daemon"
pid="3338"

sudo lmctfy run /memory_only /bin/bash

#

不考虑上面的错误,我们的例子已经能成功的运行起来了,看着已经成功的bash,是不是可以在这个100M内存的container上有点小作为了?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值