为 LXC 虚拟计算机添加硬盘存储器首先用户要在主机上添加一块新硬盘并且格式化,限于篇幅这里笔者不进行详细介绍。下面看看如何添加到 LXC 虚拟计算机 cjhlxc :
在 LXC 虚拟计算机建立挂载目录
1
| $ sudo mkdir /var/lib/lxc/cjhlxc/rootfs/mnt/mydisk
|
挂载新增硬盘至 LXC 虚拟计算机的挂载目录
1
| $sudo mount /dev/sdb1 /var/lib/lxc/cjhlxc/rootfs/mnt/disk1
|
在挂载目录新增 abc 的 目录
1
| $ sudo touch /var/lib/lxc/cjhlxc/rootfs/mnt/disk1/abc
|
说明以上三个步骤在主机上操作,rootfs 用于指定容器的虚拟根目录,设定此项以后,容器内所有进程将会把此目录根目录,不能访问此目录之外的路径,相当于 chroot 的效果 。下面启动 LXC 虚拟计算机完成添加。
1
2
| $ sudo lxc-start -n cjhlxc -d
$ sudo lxc-console -n cjhlxc
|
2. 查看使用挂载目录内容 (在 LXC 虚拟计算机中操作)
1
2
3
4
5
6
| $ ll /mnt/mydisk/
total 24
drwxr-xr-x 3 root root 4096 Jan 18 14:40 ./
drwxr-xr-x 4 root root 4096 Jan 18 14:39 ../
-rw-r--r-- 1 root root 0 Jan 18 14:40 abc
drwx------ 2 root root 16384 Jan 18 14:36 lost+found/
|
LXC 虚拟计算机的监控查看所有使用中的容器,使用命令:
1
2
| # lxc-ls --active
cjhlxc
|
查看一个容器的使用情况,使用命令:
1
2
3
| # lxc-info -n cjhlxc
state: RUNNING
pid: 10171
|
查看容器中进程,使用命令:
1
2
3
4
5
6
| # lxc-ps -n cjhlxc
CONTAINER PID TTY TIME CMD
cjhlxc 7624 ? 00:00:00 init
cjhlxc 7838 ? 00:00:00 dhclient
cjhlxc 7898 ? 00:00:00 login
cjhlxc 7910 pts/3 00:00:00 bash
|
监控容器的状态1
2
3
4
5
| $ lxc-monitor -n cjhlxc
'cjhlxc' changed state to [STARTING]
'cjhlxc' changed state to [RUNNING]
'cjhlxc' changed state to [STOPPING]
'cjhlxc' changed state to [STOPPED]
|
说明:lxc-monitor 命令用来监控一个容器状态的变换,当一个容器的状态变化时,lxc-monitor 命令会在屏幕上打印出容器的状态变化过程。
总结使用 LXC 的优点就是不需要安装太多的软件包,使用过程也不会占用太多的资源,Linux conatiners (LXC) 是在 Linux 平台上基于容器的虚拟化技术的未来标准,最初的 LXC 技术是由 IBM 研发的,目前已经进入 Linux 内核,这意味着 LXC 技术将是目前最有竞争力的轻量级虚拟容器技术,到此为止本文将循序渐进地介绍在 Linux 容器的建立管理和如何管理几种主要资源设备:网络接口、内存、CPU(中央处理器) 、硬盘存储器。下面笔者把 LXC 和 Linux 下其它两种主要的虚拟技术做一些简单的对比见表 1
表 1
特点XEN(半虚拟化)KVM(全虚拟化)LXC动态迁移支持支持不支持Reboot支持支持支持CPU(中央处理器)增减方法通过 Guest CPU(中央处理器)
热插拔机制支持通过 balloon driver 支持通过 cpuset 和 CFS 组调度
扩展支持内存增减方法通过 Guest CPU(中央处理器)
热插拔机制支持通过 balloon driver 支持通过 cgroup 支持
异构模拟支持支持不支持可运行不同 OS支持支持不支持速度比本地环境慢比本地环境慢基本同本地环境安全隔离性强强差快照功能支持支持不支持iSCSI 存储支持支持不支持服务控制支持支持不支持VLAN 网络支持支持支持附加卷管理支持支持不支持
LXC 的优缺点优点
- 虚拟化开销小,一台物理机可以运行很多“小”虚拟机。
- 通过 cgroup 的方法增减 CPU(中央处理器)/内存非常方便,调整速度很快。
- 虚拟机运行速度和本地环境相同的速度基本相同。
缺点
- 不能热迁移 。
- 不能模拟不同体系结构、装不同操作系统。
- 安全隔离差 。
|