在
CentOS6
上安装和配置
OpenVZ
经常有人问到
OpenVZ
和
Xen
哪个好,事实上
OpenVZ
和
Xen
不是同一层面的技术,
OpenVZ
是操作系统层面(
Operating system-level virtualization
)的虚拟产品,和
FreeBSD Jail, Solaris Zone, Linux-VServer
等类似;而
Xen
和
VMware, KVM, Hyper-V
等产品站在同一阵营。
OpenVZ VPS
实际上提供的是一个虚拟环境(
Virtual Environment/VE
),也叫容器(
Container
);而
Xen VPS
提供的是基于
Hypervisor
的虚拟机(
Virtual Machine
),这是本质上的不同,现在大家已经习惯用
VPS
这个名字把这两种不同的产品和技术混为一谈了。比起
Xen
专注于企业虚拟化和云计算领域,
OpenVZ
最大的应用可能就在低端
VPS
市场,有无数的
VPS
服务商都使用
OpenVZ
提供
10
美元以下的
VPS
产品。了解一下
OpenVZ
的安装和配置也会对使用
OpenVZ VPS
有所帮助,以下的安装和配置操作在
VPSee
的一台空闲
PC
和
CentOS 5.5
上完成。对
Xen
和
KVM
感兴趣的童鞋请看:在
CentOS
上安装和配置
Xen
和
在
CentOS
上安装和配置
KVM.
www.it165.net
安装
OpenVZ
首先加入
openvz
源、升级系统、安装
openvz
内核和
vzctl, vzquota
等工具:
# cd /etc/yum.repos.d
# wget http://download.openvz.org/openvz.repo
# rpm --import http://download.openvz.org/RPM-GPG-Key-OpenVZ
# yum update
# yum install vzkernel
# yum install vzctl vzquota
调整内核参数
为了能让
VE/VPS
访问外部网络,我们必须启动
ip forwarding
;如果内核出错或者运行很慢,我们希望能用特殊按键
dump
一些信息到控制台并结合
log
排错,所以建议打开
kernel.sysrq
:
# vi /etc/sysctl.conf
...
net.ipv4.ip_forward = 1
kernel.sysrq = 1
...
为了减少麻烦最好关闭
selinux
,
selinux
带来的麻烦往往比得到的好处多:
# vi /etc/sysconfig/selinux
...
SELINUX=disabled
...
检查
vz
服务是否自动启动,并重启机器进入
openvz
内核:
# chkconfig --list vz
vz 0:off 1:off 2:on 3:on 4:on 5:on 6:off
# reboot
创建和安装
guest
Perl
语言之父
Larry Wall
说过真正优秀的程序员有三大优良品质:偷懒,没有耐性和骄傲自大。所以能利用别人的劳动成果就不要自己重造轮子。我们可以到
http://download.openvz.org/template/precreated/
下载已经安装好的模版,有
centos, debian, ubuntu, fedora, suse
等几个模版可以选择:
# cd /vz/template/cache
# wget http://download.openvz.org/template/precreated/ubuntu-10.04-x86.tar.gz
有了
ubuntu 10.04
的模版以后就可以用这个模版来创建
guest
系统(
VE/VPS
)了,以刚下载的
ubuntu-10.04-x86
为模版创建一个
ID
为
1
的
Virtual Environment (VE)
,并指定
IP
地址、
DNS
服务器地址、主机名、磁盘空间等,创建成功后启动
ID
为
1
的
VE
,最后修改
root
密码:
# vzctl create 1 --ostemplate ubuntu-10.04-x86
# vzctl set 1 --onboot yes --save
# vzctl set 1 --ipadd 172.16.39.110 --save
# vzctl set 1 --nameserver 8.8.8.8 --save
# vzctl set 1 --hostname vps01.vpsee.com --save
# vzctl set 1 --diskspace 10G:10G --save
# vzctl start 1
# vzctl exec 1 passwd
启动、重启、关闭和断电关闭
ID
为
1
的
VE/VPS
:
# vzctl start 1
# vzctl restart 1
# vzctl stop 1
# vzctl destroy 1
查看正在运行中的
VE/VPS
:
# vzlist
CTID NPROC STATUS IP_ADDR HOSTNAME
1 8 running 172.16.39.110 vps01.vpsee.com
计算
ID
为
1
的
VE/VPS
用到的资源:
# vzcalc -v 1
Resource Current(%) Promised(%) Max(%)
Low Mem 0.06 1.44 1.44
Total RAM 0.19 n/a n/a
Mem + Swap 0.08 1.30 n/a
Alloc. Mem 0.11 1.62 3.09
Num. Proc 0.01 n/a 0.32
--------------------------------------------
Memory 0.19 1.62 3.09
进入
guest
VE
成功启动后就可以进入系统了,相当于
xen
的
xm console
,不过从
VE
退出来不需特殊按键直接
exit
就可以:
# vzctl enter 1
entered into CT 1
root@vps01:/# exit
logout
exited from CT 1
管理
OpenVZ
可以通过命令,或者是第三方开发的管理网站。现在主流的有以下三款:
Webvz 2.0 http://webvz.sourceforge.net/
Vtonf http://www.vtonf.com/
HyperVM 2.0 http://lxlabs.com/software/hypervm/
这些第三方开发的管理网站都十分出色,其中
WebVZ 2.0
最节省
VE
资源以及功能基本符合要求,使用简洁。
如果需要功能强大的集群技术可以使用
HyperVM 2.0
但这东东有限制,需要购买哦
~~
!
一、安装
Webvz 2.0
A.
安装数据库
sqlite
#yum install python-sqlite sqlite-devel sqlite
B.
安装
ruby
#yum install ruby ruby-irb ruby-libs ruby-devel ruby-rdoc
C.
安装
rubygems
yum –y install rubygems
D.
安装
rails
#gem install -v=2.1.0 rails -y
这里要注意哦!第一次安装的时候会出现错误,但你在安装多一次就可以成功了。
@_@
晕
~~
我也不知道为何?
E.
安裝
sqlite3-ruby
#gem install sqlite3-ruby
F.
安装
webvz 2.0
http://sourceforge.net/project/showfiles.php?group_id=218223
把它解压把
#mkdir /var/srv/www
#tar -zxf webvz.2.0.tar.gz –C/var /srv/www
启动
Webvz 2.0
#ruby /var /srv/www/webvz.2.0/script/server -d
#echo "ruby /var /srv/www/webvz.2.0/script/server -d" >> /etc/rc.d/rc.local
登入
Webvz 2.0
http://your-server-ip:3000
用户名
: admin
密码
: admin123
Webvz
的登录界面
Webvz
的
management
界面
【参考资料】
1、LisVP 虚拟化管理平台 | 虚拟机管理系统 | VM | KVM | OpenVZ | 主机系统 http://www.extmail.org/product/lisvp.html
2、OpenVZ Web Panel-OpenVZ主机管理系统,OpenVZ Web Panel管理面板,OpenVZ Web Panel控制面板 - Powered by Discuz! http://www.chinahost.org/list-72-1.html