lxc 安装介绍

2016-02-03  本文已影响827人  bdslinux

lxc-Centos6.6

环境版本

[root@bj-idc-15 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 6.6(Santiago)
[root@bj-idc-15 ~]# uname -a
Linux bj-idc-15 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 

lxc 介绍

LXC,其名称来自Linux软件容器(Linux Containers)的缩写,一种操作系统层虚拟化(Operating system–level virtualization)技术,为Linux内核容器功能的一个用户空间接口。它将应用软件系统打包成一个软件容器(Container),内含应用软件本身的代码,以及所需要的操作系统核心和库。通过统一的命名空间和共用API来分配不同软件容器的可用硬件资源,创造出应用程序的独立沙箱运行环境,使得Linux用户可以容易的创建和管理系统或应用容器。

lxc 网卡设备

[root@bj-idc-15 ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0  
DEVICE=br0                 #网桥设备
TYPE=Bridge             #桥类型
ONBOOT=yes
NM_CONTROLLED=no 
BOOTPROTO=none
IPADDR=10.10.10.15
NETMASK=255.255.255.0
GATEWAY=10.10.10.1
PV6INIT=no
USERCTL=no
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes

[root@bj-idc-15 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
NM_CONTROLLED=no 
BOOTPROTO=none
PV6INIT=no
USERCTL=no
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
BRIDGE=br0    #连接桥设备

show 网卡信息

我这里已经应用了,所以跟你们会不一样

[root@bj-idc-15 ~]# brctl show 
bridge name     bridge id               STP enabled     interfaces
br0             8000.96b9a004b8c9       no              eth0
virbr0          8000.525400d73b70       yes             vethSWP8RE
                                                        virbr0-nic

检查网络

[root@bj-idc-15 data]# service NetworkManager status  #状态开启的话请关闭

yum 指定epel源 安装lxc

[root@bj-idc-15 ~]# yum install lxc-libs lxc lxc-templates --enablerepo=epel

检查环境

[root@bj-idc-15 ~]# lxc-checkconfig 
Kernel configuration not found at /proc/config.gz; searching...
Kernel configuration found at /boot/config-2.6.32-431.el6.x86_64
--- Namespaces ---
Namespaces: enabled
Utsname namespace: enabled
Ipc namespace: enabled
Pid namespace: enabled
User namespace: enabled
Network namespace: enabled
Multiple /dev/pts instances: enabled

--- Control groups ---
Cgroup: enabled
Cgroup namespace: enabled
Cgroup device: enabled
Cgroup sched: enabled
Cgroup cpu account: enabled
Cgroup memory controller: /usr/bin/lxc-checkconfig: line 103: [: -ge: unary operator expected
/usr/bin/lxc-checkconfig: line 103: [: -gt: unary operator expected
enabled
Cgroup cpuset: enabled
--- Misc ---
Veth pair device: enabled
Macvlan: enabled
Vlan: enabled
Bridges: enabled
Advanced netfilter: enabled
CONFIG_NF_NAT_IPV4: missing
CONFIG_NF_NAT_IPV6: missing
CONFIG_IP_NF_TARGET_MASQUERADE: enabled
CONFIG_IP6_NF_TARGET_MASQUERADE: missing
CONFIG_NETFILTER_XT_TARGET_CHECKSUM: enabled
--- Checkpoint/Restore ---
checkpoint restore: missing
CONFIG_FHANDLE: missing
CONFIG_EVENTFD: enabled
CONFIG_EPOLL: enabled
CONFIG_UNIX_DIAG: missing
CONFIG_INET_DIAG: enabled
CONFIG_PACKET_DIAG: missing
CONFIG_NETLINK_DIAG: missing
File capabilities: /usr/bin/lxc-checkconfig: line 137: [: -gt: unary operator expected
Note : Before booting a new kernel, you can check its configuration
usage : CONFIG=/path/to/config /usr/bin/lxc-checkconfig

启动lxc和libvirtd

[root@bj-idc-15 ~]# /etc/init.d/libvirtd start
[root@bj-idc-15 ~]# /etc/init.d/lxc start

更改配置文件

把lxc.network.link 改为前面配置的br0

[root@bj-idc-15 ~]# cat /etc/lxc/default.conf 
lxc.network.type = veth
lxc.network.link = br0
lxc.network.flags = up

建立一个容器

lxc-create -n vm01 -t centos  
-t : 指定模板类型
-d : 后台启动

创建并启动一个容器

lxc-create -n  vm01 -t centos 
lxc-create -n  vm02 -t centos
lxc-start  -n  vm01
lxc-start  -n  vm02

密码存放位置

[root@bj-idc-15 ~]# cat /var/lib/lxc/vm01/tmp_root_pass 
Root-vm01-3Iov2m

lxc状态信息

[root@bj-idc-15 ~]# lxc-info -n vm02     
Name:           vm02
State:          RUNNING
PID:            20042
IP:             10.10.10.117
CPU use:        1.66 seconds
BlkIO use:      24.05 MiB
Memory use:     14.24 MiB
Link:           vethULFQOY
 TX bytes:      8.89 KiB
 RX bytes:      2.44 MiB
 Total bytes:   2.45 MiB

连接方式

模板类型

[root@bj-idc-15 ~]# cd /usr/share/lxc/templates/
[root@bj-idc-15 templates]# ls
lxc-alpine   lxc-archlinux   lxc-centos  lxc-debian    lxc-fedora  lxc-openmandriva  lxc-oracle   lxc-sshd       lxc-ubuntu-cloud
lxc-altlinux  lxc-busybox    lxc-cirros  lxc-download  lxc-gentoo  lxc-opensuse      lxc-plamo   lxc-ubuntu

修改容器密码

chroot /var/lib/lxc/vm01/rootfs    #切换到此目录下,修改密码
passwd    #输入新密码
exit      #修改完退出虚拟机容器

关闭容器

[root@bj-idc-15 vm02]# lxc-stop -n vm01
上一篇下一篇

猜你喜欢

热点阅读