传统虚拟化技术是一种基于硬件的抽象,宿主机上配置一台虚拟机,等于购买了一台新的计算机。静态分配硬件资源,无法实现硬件资源的最大化。特别是在进行集群开发的时候,服务器需要配置到多个机器上,每个机器的配置都要一步步的完成。而进行更新后,也要一台台的更新,而系统的配置是程序开发人员、测试人员和运维人员都需要完成的工作。工作量大且复杂,还会因为操作系统其他底层配置的不同而可能出现未知的问题。
容器技术则是基于操作系统的抽象,只对操作系统必要的接口、配置文件进行虚拟化,够构造了一种轻量的虚拟环境。极大地增加了配置效率。动态分配硬件资源,提高了资源利用率。但是由于其只对必要的配置文件进行虚拟化,所以无法实现在linux上运行windows系统。而hypervisor则没有这个限制。同时由于hypervisor是基于硬件的抽象,所以对于应用的隔离性更强,更加安全。
LXC安装容器
基于ubuntu18.04环境,安装一个 lxc容器。首先安装lxc容器服务:
sudo apt install lxc
检查核心是否能够支持lxc:
lxc-checkconfig
安装LXC工具,LXC的自动创建默认网桥接口lxcbr0,创建容器时,容器自动接入网桥。查看网桥:
ifconfig lxcbr0
下载能够创建容器的模板:
apt-get install lxc-templates
创建一个fedora的容器并且命名为myfedora:
lxc-create -n myfedora -t fedora
容器创建完成后可以看到默认的登录界面,然后在fedora系统中进行操作。也可以退出虚拟系统对容器进行管理,这里不进行赘述。