在Debian下通过OpenVZ实现虚拟化入门
创始人
2024-07-22 19:41:13
0

【51CTO独家特稿】 OpenVZ(OpenVZ官方网站:http://www.openvz.org)是一种Linux平台下的虚拟化解决方案。OpenVZ采用SWsoft的Virutozzo虚拟化服务器软件产品的内核(Virutozzo是SWsoft 公司提供的商业虚拟化解决方案)。OpenVZ在单个物理服务器上创建隔离的虚拟专用服务器(VPS或虚拟环境,VE),从而提高服务器利用率并确保应用程序之间不会相互干扰。每个VPS的运行都和独立的服务器完全一致:VPS可以独立重起,具有根访问权限,用户、IP 地址、内存、处理器、文件、应用程序、系统库和配置文件等。OpenVZ软件同时为用户提供工具,协助自动化管理虚拟服务器。基于模板的应用程序部署可以在几分钟内用简单的方法创建新的虚拟服务器并投入使用,而且与其他的虚拟化技术相比,OpenVZ可以在每台CPU上运行几倍于其他虚拟化服务器技术的虚拟化服务器。

本文将讲述Debian Squeeze (AMD64)平台下安装及使用OpenVZ的基本方法。

一、安装OpenVZ

1、通过如下命令安装OpenVZ(如果使用32位平台则需要安装linux-image-openvz-686)。

srv75:~# apt-get install linux-image-openvz-amd64 vzdump vzctl vzquota
srv75:~# ln -s /var/lib/vz /vz

2、将如下内容增加到/etc/sysctl.conf文件中。

net.ipv4.conf.all.rp_filter=1
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.ip_forward=1
kernel.sysrq = 1
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.eth0.proxy_arp=1

3、通过如下命令使/etc/sysctl.conf文件中的修改立即生效。

srv75:~# sysctl -p

4、修改/etc/vz/vz.conf文件中的如下参数。

NEIGHBOUR_DEVS=all

5、重新启动计算机(如下图所示,启动后会发现Grub中多了一个使用OpenVZ内核的选项,请选择该项目进入系统)。

Grub中多了一个使用OpenVZ内核的选项

#p#

二、通过OpenVZ建立虚拟机

在OpenVZ安装完成后***需要建立虚拟机,最简单的方法是直接下载OpenVZ官方提供的各种Linux发行版的虚拟机模板使用(下载地址:http://download.openvz.org/template/precreated/)。通过模板建立虚拟机的基本步骤如下:

1、通过如下命令下载虚拟机模板。

srv75:~# cd /var/lib/vz/template/cache
srv75:~# wget http://download.openvz.org/template/precreated/contrib/debian-6.0-amd64-minimal.tar.gz

2、通过如下命令使用模板建立虚拟机(其中200是给要建立虚拟机定义一个编号,该编号必须是唯一的,以后通过OpenVZ管理这些虚拟机时就需要使用该编号)。

srv75:~# vzctl create 200 --ostemplate debian-6.0-amd64-minimal --config basic

3、使用如下命令将建立的虚拟机处于启动状态。

srv75:~# vzctl set 200 --onboot yes --save

4、使用如下命令配置虚拟机的IP地址、主机名等参数。

srv75:~# vzctl set 200 --hostname ov1.example.zqin --save
srv75:~# vzctl set 200 --ipadd 192.168.159.200 --save
srv75:~# vzctl set 200 --numothersock 120 --save
srv75:~# vzctl set 200 --nameserver 192.168.159.1 --nameserver 202.103.24.68 --save

5、使用如下命令正式启动虚拟机。

srv75:~# vzctl start 200

6、使用如下命令为虚拟机root用户设置登录密码。

srv75:~# vzctl exec 200 passwd

7、至此虚拟机已完成可以使用。可以通过ssh连接到虚拟机进行其它操作,也可以通过如下命令进行虚拟机进行操作。

srv75:~# vzctl enter 200

#p#

三、通过OpenVZ管理虚拟机

下面介绍几个管理OpenVZ虚拟机的常用命令。

1、在虚拟机上执行命令。

srv75:~# vzctl exec 200 ls /etc/rc2.d/
README
S01bootlogs
S01rsyslog
S02cron
S02ssh
S03rc.local
S03rmnologin
S03stop-bootlogd

1、重新启动虚拟机。

srv75:~# vzctl restart 200

2、关闭虚拟机。

srv75:~# vzctl stop 200

3、删除虚拟机。

srv75:~# vzctl destroy 200

4、查看已有虚拟机。

srv75:~# vzlist -a
CTID NPROC STATUS IP_ADDR HOSTNAME
200 6 running 192.168.159.200 ov1.example.zqin
201 - stopped 192.168.159.201 ov2.example.zqin
202 - stopped 192.168.159.202 ov3.example.zqin

5、查看某虚拟机资源占用的情况。

srv75:~# vzcalc -v 200
Resource Current(%) Promised(%) Max(%)
Low Mem 0.10 2.67 2.67
Total RAM 0.18 n/a n/a
Mem + Swap 0.06 2.12 n/a
Alloc. Mem 0.49 2.64 5.04
Num. Proc 0.02 n/a 0.73
--------------------------------------------
Memory 0.49 2.67 5.04

6、详细查看OpenVZ为虚拟机分配的资源。

详细查看OpenVZ为虚拟机分配的资源

显示的内容共七列,每列含义如下:

• uid:虚拟机的编号。

• held:当前资源的使用状况。

• maxheld:显示的是在一个周期内,资源使用的***值(一个周期是指从启动虚拟机到结束之间的时间)。

• barrier和limit:显示用于控制资源的设定值。

• failcn:显示被拒绝分配资源的次数。如果failcn的值增大很可能表示没有足够的内存分配给应用程序。

下面介绍是几个比较重要的值:

• kmemsize:该参数用于显示内核使用的内存大小(内核只能常驻内存不能使用swap,单位byte。

• privvmpages:该参数显示分配的内存+swap的大小(不是实际使用内存),单位page(将page换算成MB的方法:page值*4/1024)。这个参数只是显示分配的内存大小,但并不是实际使用内存的大小。

• physpages:该参数显示实际使用的内存大小,单位page(所有单独虚拟机的实际使用内存相加就是OpenVZ的内存消耗)。

• vmguarpages:该参数显示将多少内存分配给了虚拟机(Dedicated RAM),单位page。

• oomguarpages:该参数显示在 Dedicated RAM耗尽了的情况下有多少额外内存可以供虚拟机使用,单位page。

作者简介:张勤(博客),MCSE、MCDBA、RHCE,从事软件开发(Delphi、Java)、项目管理、系统集成工作。曾参与多个基于Windows及Linux的大型系统集成项目,并在国内多个知名IT网站发表技术类文章。

【编辑推荐】

  1. 专题:Debian自由软件的精神捍卫者
  2. Debian下通过Bonding实现双网卡单IP
  3. Debian上配置vsftpd常见问答集锦

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...