虚拟化之 OpenVZ 配置初步

红薯 发布于 2010/07/04 23:23
阅读 2K+
收藏 4

OpenVZ是基于Linux内核和系统的操作系统级虚拟化技术,OpenVZ允许物理 服务器运行多个操作系统,被称虚拟专用服务器(VPS,Virtual Private Server)或虚拟环境(VE, Virtual Environment),更详细的信息可以参照:http://zh.wikipedia.org/zh/OpenVZ;下面来简要的介绍下 openvz的安装和虚拟机的部署:

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# wget http://download.openvz.org/openvz.repo
[root@localhost yum.repos.d]# yum -y install ovzkernel.x86_64 ovzkernel-devel.x86_64 vzctl.x86_64 vzquota.x86_64   //安装openvz内核和客户端工具

[root@localhost ~]# grep -v '^#' /etc/grub.conf   //确认下次启动时以openvz核启动
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.18-194.3.1.el5.028stab069.5)
root (hd0,0)
kernel /vmlinuz-2.6.18-194.3.1.el5.028stab069.5 ro root=LABEL=/1 rhgb quiet
initrd /initrd-2.6.18-194.3.1.el5.028stab069.5.img
title Red Hat Enterprise Linux Server (2.6.18-164.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-164.el5 ro root=LABEL=/1 rhgb quiet
initrd /initrd-2.6.18-164.el5.img


[root@localhost ~]# uname -r          //重启并确定当前内核为openvz内核
2.6.18-194.3.1.el5.028stab069.5


[root@localhost ~]# service vz status //启动vz服务
OpenVZ is running...

[root@localhost ~]# ls /vz/
dump lock private root template

openvz默认的工作目录为/vz,如何修改这个目录还有待研究,dump目录应该是存放虚拟机备份文件的位置,private和root都是存放当前 虚拟机系统文件的目录,template是存放虚拟机模板的目录,lock目录何用,也需要继续研究…

openvz支持的guest操作系统版本模板下载地址:
http://download.openvz.org/template/precreated/
[root@localhost ~]# ls /vz/template/cache/*.gz     //下载相应的模板并移动的这个目录
/vz/template/cache/centos-5-i386-afull.tar.gz
/vz/template/cache/centos-5-i386-hostinabox576.tar.gz

[root@localhost ~]# vzctl create 101 --ostemplate centos-5-i386-afull   //创建虚拟机,101为ID号,从100开始,需要注意的是只能写模板文件的名称去掉后缀(.tar.gz)的部分,否则会报错
Creating container private area (centos-5-i386-afull)
Performing postcreate actions
Container private area was created

[root@localhost ~]# vzctl set 101 --ipadd 192.168.50.249 --save       //设定虚拟机的ip参数,并保存
Adding IP address(es): 192.168.50.249
Saved parameters for CT 101

[root@localhost ~]# vzctl start 101     //启动虚拟机101
Starting container ...
Container is mounted
Adding IP address(es): 192.168.50.249
Setting CPU units: 1000
Configure meminfo: 49152
Container start in progress...

[root@localhost ~]# vzctl enter 101   //进入虚拟机
entered into CT 101

[root@localhost /]# ifconfig |grep 'inet addr'    //查看虚拟机网卡信息
inet addr:127.0.0.1 Mask:255.0.0.0
inet addr:127.0.0.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
inet addr:192.168.50.249 P-t-P:192.168.50.249 Bcast:192.168.50.249 Mask:255.255.255.255

[root@localhost /]# df -h     //查看虚拟机磁盘信息,可以看到,其实所有的虚拟机都是共享/vz目录,因而在生产环境中使用openvz的时候,最好要独立划出/vz分区,并做 lvm
Filesystem            Size Used Avail Use% Mounted on
/dev/simfs             23G 501M   21G   3% /
none                   96M 4.0K   96M   1% /dev

[root@localhost /]# free      //同样,共享系统内存和cpu
total       used       free     shared    buffers     cached
Mem:        196608      15568     181040          0          0          0
-/+ buffers/cache:      15568     181040
Swap:            0          0          0

[root@localhost /]# cat /proc/cpuinfo |less
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Xeon(R) CPU            5110 @ 1.60GHz
stepping        : 6
………………………………………………………………………………………

[root@localhost /]# exit     //退出虚拟机101
exited from CT 101


[root@localhost ~]# cat /vz/root/101/etc/sysconfig/network-scripts/ifcfg-venet0:1 //也可以直接编辑/vz/root下的文件修改虚拟机相关参数
DEVICE=venet0:1
ONBOOT=yes
IPADDR=192.168.50.249
NETMASK=255.255.255.255

[root@localhost ~]# ls /vz/root/
101 102 103 104 105 106
[root@localhost ~]# ls /vz/private/
101 102 103 104 105 106


总结:
1:openvz是一款独树一帜的虚拟机,同传统的虚拟机,例如xen,kvm,MS hypev-v,VMWARE等相比,安装虚拟机操作系统变的相当的容易,且快速,这些传统的虚拟机安装都需要和真实机安装操作系统的方式一样(这里排除 了使用克隆和dd的方式),openvz则使用模板这种方式,从安装上变的高效;

2:默认openvz有一张venet0网卡,虚拟机的网段和物理机的网段通过这个网卡桥接在一起,并没有提供其他的虚拟网卡,这个也有待进一步研究;

3:另外,openvz支持多种方式的管理,例如:hypervm,vtonf等...

4:对硬件没有特殊的要求,kvm需要cpu vt技术的支持,xen装windows也需要vt支持

加载中
返回顶部
顶部