Xen虚拟化在CentOS 5.6(x86_64)

Xen虚拟化在CentOS 5.6(x86_64) 本教程提供了如何在C上安装Xen(版本3.0.3)的分步说明...

使用Xen On CentOS 5.6(x86_64)进行半虚拟化

本教程提供了有关如何在CentOS 5.6 (x86_64)系统上安装Xen (版本3.0.3 )的分步说明。

Xen允许您在主机操作系统( dom0 )下创建客户操作系统(* nix操作系统,如Linux和FreeBSD),即所谓的“虚拟机”或主机。 使用Xen可以将应用程序分离成完全独立的虚拟机(例如,邮件服务器的虚拟机,高流量网站的虚拟机,为客户网站提供的另一个虚拟机,一个用于DNS的虚拟机等),但仍然使用相同的硬件。 这样可以节省资金,更重要的是更安全。 如果您的DNS服务器的虚拟机被黑客入侵,它对您的其他虚拟机没有影响。 此外,您可以将虚拟机从一个Xen服务器移动到下一个。

我将使用CentOS 5.6(x86_64)作为主机操作系统( dom0 )和客户操作系统( domU )。

这是一个实践指南; 它不包括理论背景。 他们在网络上的许多其他文档中被处理。

本文档不附带任何形式的保证! 我想说,这不是设立这样一个制度的唯一办法。 实现这一目标有很多方法,但这是我所采取的方式。 我不会保证这将为您工作!

1初步说明

本指南将介绍如何设置基于映像的虚拟机以及基于LVM的虚拟机。

确保SELinux已禁用或允许:

vi /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=disabled
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted

如果您必须修改/ etc / sysconfig / selinux ,请重新启动系统:

reboot

2安装Xen

要安装Xen,我们只需运行

yum install kernel-xen xen

这将在我们的CentOS系统上安装Xen和Xen内核。

在使用Xen内核引导系统之前,请检查您的GRUB引导程序配置。 我们打开/boot/grub/menu.lst

vi /boot/grub/menu.lst

第一个列出的内核应该是您刚刚安装的Xen内核:

[...]
title CentOS (2.6.18-238.9.1.el5xen)
        root (hd0,0)
        kernel /xen.gz-2.6.18-238.9.1.el5
        module /vmlinuz-2.6.18-238.9.1.el5xen ro root=/dev/VolGroup00/LogVol00
        module /initrd-2.6.18-238.9.1.el5xen.img
[...]

默认值更改为0 (以便默认情况下第一个内核(Xen内核)将被引导):

[...]
default=0
[...]

完整的/boot/grub/menu.lst应该是这样的:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00
#          initrd /initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-238.9.1.el5xen)
        root (hd0,0)
        kernel /xen.gz-2.6.18-238.9.1.el5
        module /vmlinuz-2.6.18-238.9.1.el5xen ro root=/dev/VolGroup00/LogVol00
        module /initrd-2.6.18-238.9.1.el5xen.img
title CentOS (2.6.18-238.el5)
        root (hd0,0)
        kernel /vmlinuz-2.6.18-238.el5 ro root=/dev/VolGroup00/LogVol00
        initrd /initrd-2.6.18-238.el5.img

之后,我们重新启动系统:

reboot

系统现在应该自动启动新的Xen内核。 系统启动后,我们可以通过运行进行检查

uname -r

[root@server1 ~]# uname -r
2.6.18-238.9.1.el5xen
[root@server1 ~]#

所以它真的使用新的Xen内核!

我们现在可以跑

xm list

检查Xen是否已启动。 应该列出域0dom0 ):

[root@server1 ~]# xm list
Name                                      ID Mem(MiB) VCPUs State   Time(s)
Domain-0                                   0     3343     2 r-----     18.1
[root@server1 ~]#


分享按钮