LXC,简称Linux containers是docker基础,无奈只能先学习LXC。LXC用途就不多讲,这里只讲LXC的安装以及用途吧!
LXC 需要用在内核2.6.27以上 这个可以用 uname -a 来查看自己内核版本
LXC 官方说支持6.5以上,估计是内核刚好是2.6.27以上吧,那些自己升级内核的就不说了,太高端。
1、安装。我喜欢最小化的系统。
yum -y install libcgroup lxc lxc-templates --enablerepo=epel 这个命令yum安装、如果有报错说epel not found 那就说明第三方epel库木有安装,这里V大大给个地址
epel :http://mirrors.ustc.edu.cn/fedora/epel/
这里安装epel :rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
安装之后然后在执行上面的yum 安装就可以啦。
然后启动lxc以及依赖的cgroup
输入lxc-checkconfig输出如下图示,则说明 lxc 环境安装好了
需要先配置lxc网卡,然后在启动lxc命令。
这里在记录一下lxc的常用命令。
lxc-create -n vm01 -t centos
-n为命名 -t即 lxc自带的模板 路径为 /usr/share/lxc/templat/里,这些模板文件里面用脚本写入的,如果想修改模板配置,可以在这里修改。lxc-start -n vm01 退出的时候 别人都说ctrl+a+q 我特么太蠢 搞不出来,后来在论坛看到了一位兄弟发的
lxc-console -n vm01
查看lxc容器相关信息(名称、是否在运行、PID,CPU使用、IO使用、内存使用、IP地址、网络吞吐量)
lxc-info -n vm01
lxc-monitor 监控一个容器状态的变换,当一个容器的状态变化时,此命令会在屏幕上打印出容器的状态
用法:lxc-monitor -n name
lxc-info 用户获取一个容器的状态
用法:lxc-info -n name
lxc-cgroup 用于获取或调整与cgroup相关的参数
用法:lxc-cgroup -n name subsystem value
lxc-destroy 用于销毁容器
用法:lxc-destroy -n name
lxc-kill 发送信号给容器中的第一个用户进程(容器内部进程号为2的进程)
用法:lxc-kil -n name SIGNUM
#设置虚拟机只使用0,1两个CPU核心
lxc-cgroup -n centos cpuset.cpus 0,1
#设置虚拟机可用内存为512M
lxc-cgroup -n centos memory.limit_in_bytes 536870912
#设置虚拟机消耗的CPU时间
lxc-cgroup -n centos cpu.shares 256
#设置虚拟机消耗的IO权重
lxc-cgroup -n centos blkio.weight 500