Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1013348
  • 博文数量: 584
  • 博客积分: 2293
  • 博客等级: 大尉
  • 技术积分: 3045
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-28 11:15
文章分类

全部博文(584)

文章存档

2012年(532)

2011年(47)

2009年(5)

我的朋友

分类:

2012-07-06 14:05:46

XEN 虚拟机安装

需要安装的软件包:
[root@mail ~]# yum -y install xen virt-viewer virt-manager python-virtinst libvirt kernel-xen
如果安装时候提示依赖关系不匹配的需删除相关软件包
[root@mail ~]# rpm -e --nodeps cyrus-sasl-lib
装好后就生存新的内核,设置默认内核为XEN 内核
vim /boot/grub/grub.conf

[root@mail ~]#reboot
当XEN 启动后,物理机也会被认为是虚拟机
---------------------------
半虚拟化 (虚拟机 不支持pxe和光盘安装操作系统,只支持网络安装操作系统。 且只能安装与宿主主机同类型的OS。)
查看是否支持版虚拟化
[root@mail ~]# cat /proc/cpuinfo | grep pae
全虚拟化 (虚拟机 支持pxe和光盘安装操作系统 且能安装与宿主主机不同类型的OS。)
[root@mail ~]# cat /proc/cpuinfo | grep vmx  ---intel
[root@mail ~]# cat /proc/cpuinfo | grep svm   ------ AMD
注意:bios中是否禁用了虚拟化支持。

xen 支持半虚拟化和全虚拟化
kvm 只能在支持全虚拟化的CPU上和64位的RHEL6的操作系统中支持全虚拟化。

1,准备好网络安装树
FTP(192.168.13.250)的方式 共享 光盘中的所有文件
设置好相关环境
[root@mail ~]# iptables -F
[root@mail ~]# echo iptables -F >> /etc/rc.local
[root@mail ~]# chkconfig iptables off
[root@mail ~]# getenforce
Disabled

[root@mail ~]# ls /var/ftp/yum/
[root@mail ~]# service vsftpd restart
[root@mail ~]# lftp 192.168.13.250
lftp 192.168.13.250:~> cd yum/
lftp 192.168.13.250:/yum> pwd

lftp 192.168.13.250:/yum>

2 virt-manager --- 新建 安装虚拟 机
  配置项都 保存到了/etc/xen/virtual_name
 [root@mail ~]# cat  /etc/xen/vm1
name = "vm1"
uuid = "388aaf40-4094-d383-a6ff-26631a8a72ad"
maxmem = 256
memory = 256
vcpus = 2
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [ "type=vnc,vncunused=1,keymap=en-us" ]
disk = [ "phy:/dev/sda5,xvda,w" ]
vif = [ "mac=00:16:36:13:54:f1,bridge=xenbr1,script=vif-bridge" ]
[root@mail ~]# 

查看虚拟机状态
[root@mail ~]# virsh list
 Id 名称               状态
----------------------------------
  0 Domain-0             running
  1 vm1                  闲置
启动虚拟机
[root@mail ~]# virt-viewer vm1
[root@mail ~]#
查看网络连接状态
[root@mail ~]# brctl show
bridge name     bridge id               STP enabled     interfaces
virbr0          8000.000000000000       yes
xenbr1          8000.feffffffffff       no              vif1.0
                                                        peth1
                                                        vif0.1

============使用虚拟机====================
1,删除虚拟;
  虚拟机的配置文件
/etc/xen/name
  虚拟机的磁盘文件
/var/lib/xen/image/name


2,开启关闭和重启动虚拟机OS
[root@mail ~]# virsh list
 Id 名称               状态
----------------------------------
  0 Domain-0             running
  2 vm1                  闲置
关闭虚拟机
[root@mail ~]# virsh shutdown vm1
域 vm1 被关闭
虚拟机启动
[root@mail ~]# virsh start vm1
域 vm1 已开始
重启虚拟机
[root@mail ~]# virsh reboot vm1
强制关闭虚拟机
[root@mail ~]# virsh destroy vm1

3,修改虚拟机配置

添加磁盘空间 

dd if=/dev/zero of=/vm1.img bs=1M count=100

[root@mail ~]# cat /etc/xen/vm1
name = "vm1"
uuid = "388aaf40-4094-d383-a6ff-26631a8a72ad"
maxmem = 256
memory = 256
vcpus = 2
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [ "type=vnc,vncunused=1,keymap=en-us" ]
disk = [ "phy:/dev/sda5,xvda,w","tap:aio:/vm1.img,sda,w","phy:/dev/sda6,sdb,w" ]
vif = [ "mac=00:16:36:13:54:f1,bridge=xenbr1,script=vif-bridge" ]

3,开机自动启动虚拟机系统
[root@localhost ~]# /etc/init.d/xendomains stop
Shutting down Xen domains: vn1(save)........
 vn2(save)........
[done]                                                [确定]
[root@localhost ~]# /etc/init.d/xendomains start
Restoring Xen domains: vn1 vn2.
[done]                                                [确定]
[root@localhost ~]# chkconfig xendomains on
[root@localhost ~]#

4,克隆虚拟机

[root@localhost ~]# virt-clone -n vn2 -o vn1 -f /var/lib/xen/images/vn2.img
ERROR    Domain with devices to clone must be paused or shutoff.
[root@localhost ~]# virsh save vn1
错误:命令 'save' 需要 选项
[root@localhost ~]# virsh save vn1  /opt/vn1.save1 暂停虚拟机
域 vn1 被存到 /opt/vn1.save1

[root@localhost ~]# virt-clone -n vn2 -o vn1 -f /var/lib/xen/images/vn2.img
Cloning /va 11% [    ]  28 MB/s | 663 MB     03:10 ETA


[root@localhost ~]# virsh restore   /opt/vn1.save1 恢复暂停的虚拟机

[root@mail ~]# virt-clone  -n vm3 -o vm1  --prompt
What would you like to use as the cloned disk (file path) for '/dev/sda5'? /aa.img
 What would you like to use as the cloned disk (file path) for '/vm1.img'? /bb.img
 What would you like to use as the cloned disk (file path) for '/dev/sda6'? /cc.img
Cloning /dev/sda5                          | 4.7 GB     01:47    
Cloning /vm1.img                           | 100 MB     00:00    
Cloning /dev/sda6                          | 486 MB     00:06    
 
Clone 'vm3' created successfully.
[root@mail ~]#


5,关于虚拟其它真实机通信的问题。

 


[root@mail ~]# vim /etc/xen/vm1
[root@mail ~]# brctl show
bridge name     bridge id               STP enabled     interfaces
virbr0          8000.000000000000       yes
xenbr1          8000.feffffffffff       no              peth1
          
当物理机网卡为eth1时,需要将/etc/xen/xend-config.sxp文件的第80行(network-script 'network-bridge netdev=eth1')的注释打开.使该行生效.这样来解决网络问题.

vim     /etc/xen/xend-config.sxp        
80   (network-script 'network-bridge netdev=eth1')

以上是我装XEN 的方法和相关设置,以及配置的时候相关错误和解决方法。

 

 

 


 

阅读(674) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~