怎么在CentOS中安装和配置Xen虚拟机
这篇文章主要讲解了"怎么在CentOS中安装和配置Xen虚拟机",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么在CentOS中安装和配置Xen虚拟机"吧!
注 1 :本次实验环境 真机 CentOS 5.8 32位, 虚拟机 CentOS 5.2 32位, 真机IP: 192.168.100.117
注 2 :实验前一定要先记下真机的 MAC 地址,以免以后不能上网用,我这里的 MAC 是 00:1D:7D:CD:D7:74
第一步 查看硬件支持
1. 半虚拟化硬件要求
代码如下:
[root@xen ~]# cat /proc/cpuinfo | grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
pbe nx lm constant_tsc pni monitor ds_cpl est tm2 cid cx16 xtpr lahf_lm
如果出现 pae 字符,表示支持半虚拟化; 我们这次就是使用半虚拟化实验。
2. 全虚拟化硬件要求
由于我没有支持的硬件,大概说下,查询命令和上面的一样
Inter 的 CPU 要出现 pae vmx ; AMD 的 CPU 要出现 pae svm
第二步 安装 Xen 核心软件
注意要先关闭selinux和禁止netmanager
在 /etc/sysconfig/network-script/ifcfg-eth0中加入
代码如下:
NM_CONTROLLED=no
1. 基本安装和检测
代码如下:
[root@xen ~]# yum install xen* kernel-xen*
[root@xen ~]# vi /boot/grub/menu.lst
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-308.4.1.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-308.4.1.el5
module /vmlinuz-2.6.18-308.4.1.el5xen ro root=LABEL=/ rhgb quiet
module /initrd-2.6.18-308.4.1.el5xen.img
title CentOS (2.6.18-308.4.1.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-308.4.1.el5 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.18-308.4.1.el5.img
看到上面的 el5xen 内核版本的系统了吗?将 default 改为 0 就是以它启动。
然后,重启服务器
代码如下:
[root@xen ~]# shutdown -r now
启动好后,再次确认是否是以 Xen 内核启动的
代码如下:
[root@xen ~]# uname -r
2.6.18-308.4.1.el5xen
[root@xen ~]# chkconfig --list | grep xen
xend 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
xendomains 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
[root@xen ~]# pstree -p | grep xen
| |-xenbus(14)
| `-xenwatch(13)
|-xenconsoled(2860)---{xenconsoled}(2861)
|-xend(2856)---xend(2858)-+-{xend}(28 62)
| |-{xend}(2866)
| |-{xend}(2867)
| |-{xend}(3086)
| `-{xend}(3087)
|-xenstored(2852)
[root@xen ~]# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 1763 2 r----- 37.1
如果上面几步有颜色和加粗部分和我差不多的话,说明启动成功了!
2. Xen 的软件结构
/usr/sbin/xend xend的启动脚本,我最爱的 python 写的
/usr/sbin/xm 管理 xen 的命令,输入 xm help 查询用法
/etc/xen/xend-config.sxp 这个是 xend 配置文件,一般不用动
/etc/xen/ 里面包含数个 domain-U 的配置范本, xmexample.hvm 可作为完整虚拟的范本
/etc/xen/auto 系统开机就自动启动某个 domain-U ,下面的举例用法:
[root@xen ~]# cd /etc/xen/auto/
[root@xen auto]# ln -s ../xmexample.hvm .
这样系统启动的时候就启动 xmexample 了,但是不要这么直接用(鸟哥说的)
/etc/xen/scripts 包括虚拟设备的启动、网络的启动等
第三步 安装虚拟系统
1. 先创建一个目录用来放虚拟系统(目录自己定)
代码如下:
[root@xen auto]# cd /var
[root@xen var]# mkdir vps
我们这里使用 /var/vps 这个目录
2. 然后制作一个空映像文件来放系统
代码如下:
[root@xen var]# dd if=/dev/zero of=/var/vps/vps1.img bs=1M count=8000
count 就是大小; 小二,给我来 8G 空间
3. 安装 vsftp 并把光驱中的 系统 挂载到 ftp 目录下
代码如下:
[root@xen ~]# yum install vsftpd
[root@xen ~]# service vsftpd start
这样一个匿名 FTP 就可以用了,下载挂载光驱
[root@xen ~]# mount /dev/cdrom /var/ftp/pub/
测试下是不是挂载成功了,从浏览器中访问
ftp://192.168.100.117/pub/
e2fsck’s blog http://www.e2fsck.org
能看到光盘内容说明成功了。
4. 进入 /var/vps 目录建立虚拟机
代码如下:
[root@xen ~]# cd /var/vps/
[root@xen vps]# virt-install –prompt
What is the name of your virtual machine? vps1 #输入名字
How much RAM should be allocated (in megabytes)? 415 #内存大小
What would you like to use as the disk (file path)? /var/vps/vps1.img #存放位置,写上面 of 后的地址
What is the install URL? ftp://192.168.100.117/pub/ #安装文件在哪
接下来就是 TEXT 安装模式
代码如下:
Welcome to CentOS +---------+ Choose a Language +---------+
| |
| What language would you like to use |
| during the inst
allation process? |
| |
| Catalan ^ |
| Chinese(Simplified) : |
| Chinese(Traditional) # |
| Croatian : |
| Czech : |
| Danish : |
| Dutch : |
| English v |
| |
| +----+ |
| | OK | |
| +----+ |
| |
| |
+---------------------------------------+
/ between elements | selects | next screen
文本模式安装不难,如果有问题,网上搜搜
安装好后,重启,出现:
代码如下:
CentOS release 5.2 (Final)
Kernel 2.6.18-92.el5xen on an i686
localhost.localdomain login: root
Password:
[root@localhost ~]#
输入帐号密码就进去了
退出的按键和 telnet 的一样: CTRL + ]
5. 管理 Xen 虚拟机
查看当前系统中的虚拟机普通信息
代码如下:
[root@xen vps]# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 1599 2 r----- 421.9
vps1 2 415 1 -b---- 24.9
顺便讲下上面 State 的 6 种状态:
r – 运行、b – 阻塞(不运行状态或者是 sleep 状态)、p – 暂停(可能执行了 xm pause)、s – 关闭、c – 崩溃、d – 垂死
查看虚拟机的负载
代码如下:
[root@xen vps]# xm top
关闭虚拟机
代码如下:
[root@xen vps]# xm shutdown vps1
进入虚拟机
代码如下:
[root@xen vps]# xm console vps1
启动虚拟机
代码如下:
[root@xen vps]# xm create vps1
把 vps1 加入到真机启动自启动
代码如下:
[root@xen xen]# ln -s /etc/xen/vps1 /etc/xen/auto/vps1
其它参数输入 xm help
6. Xen虚拟机复制
先关闭虚拟机
代码如下:
[root@xen xen]# xm shutdown vps1
复制虚拟机的镜像文件和配置文件
代码如下:
[root@xen xen]# cp /var/vps/vps1.img /var/vps/vps2.img
[root@xen xen]# cp /etc/xen/vps1 /etc/xen/vps2
修改新复制虚拟机的配置文件
代码如下:
[root@xen xen]# vi /etc/xen/vps2
原内容为:
代码如下:
name = "vps1"
uuid = "1f251cca-5ea2-49fb-95e6-3b08359e6d33"
maxmem = 415
memory = 415
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
disk = [ "tap:aio:/var/vps/vps1.img,xvda,w" ]
vif = [ "mac=00:16:3e:44:09:ca,bridge=xenbr0,script=vif-bridge" ]
修改后为:
代码如下:
name = "vps2"
uuid = "1f251cca-5ea2-49fb-95e6-3b08359e6d34"
maxmem = 415
memory = 415
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
disk = [ "tap:aio:/var/vps/vps2.img,xvda,w" ]
vif = [ "mac=00:16:3e:44:09:cb,bridge=xenbr0,script=vif-bridge" ]
注: 就是要保证 name、uuid、mac 唯一,然后把 disk 路径改了
然后启动并进入新的虚拟机
代码如下:
[root@xen xen]# xm create -c vps2
修改主机名和IP
代码如下:
[root@localhost ~]# vi /etc/hosts
[root@localhost ~]# vi /etc/sysconfig/network
上面2个比较简单,我就不说了
代码如下:
[root@localhost ~]# hostname vps2
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# Xen Virtual Ethernet
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:16:3E:44:09:CB #这里最好换成上面修改过的配置文件中的MAC地址
ONBOOT=yes
IPADDR=192.168.100.167
NETMASK=255.255.255.0
NETWORK=192.168.100.0
GATEWAY=192.168.100.1
感谢各位的阅读,以上就是"怎么在CentOS中安装和配置Xen虚拟机"的内容了,经过本文的学习后,相信大家对怎么在CentOS中安装和配置Xen虚拟机这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!