XEN 是一种直接执行在硬件上一层软件,它能够让电脑硬件上同一时候跑多个用户的操作系统。其体系结构例如以下:
XEN Hypervisor :介于操作系统和硬件之间的一个软件描写叙述层。它负责在各个虚拟机之间进行 CPU 调度和内存分配。
(XEN Hypervisor 不会处理网络、存储设备、视频以及其它 I/O)
Domain 0:一个改动过的 Linux kernel,它拥有訪问物理 I/O 资源的权限。同一时候和系统上执行的其它虚拟机进行交互。(Domain 0 须要在其他 Domain 启动之前启动)
Domain U:有两种模式,一是PV Guests(半虚拟化虚拟机)。其上执行着被改动过内核的操作系统。如 Linux、Solaris 等操作系统。二是HVM Guests(全虚拟化虚拟机),其上执行着不用改动内核的操作系统,如Windows 等。
===============================================================================================================================
对XEN体系有基本了解后,以下将分4步解说Fedora20下怎样安装XEN虚拟机。并创建DomU:
1.更换yum源
2.安装前的配置
3.安装XEN
4.安装DomU
【注:安装之前已经在一台物理机上装有Win7和Fedora20系统。另外在Fedora20下建议切换到root用户下进行操作,以避免不必要的权限问题】
1.更换yum源
fedora的软件源信息文件(*.repo)都是放在 /etc/yum.repos.d 文件夹下。
因为默认的软件源都是国外的,可能网速不是非常快,我们能够自己加入国内软件源和本地软件源。
(1)加入国内源
[root@localhost~]#wget http://mirrors.163.com/.help/fedora-163.repo [root@localhost~]# wget http://mirrors.163.com/.help/fedora-updates-163.repo [root@localhost~]#wget http://mirrors.sohu.com/help/fedora-sohu.repo [root@localhost~]#wget http://mirrors.sohu.com/help/fedora-updates-sohu.repo [root@localhost~]#wget http://lug.ustc.edu.cn/wiki/_export/code/mirrors/help/fedora?codeblock=0 [root@localhost~]#wget http://lug.ustc.edu.cn/wiki/_export/code/mirrors/help/fedora?codeblock=1 |
(2)加入fedora20源
[root@localhost~]#yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-20.noarch.rpm [root@localhost~]#yum localinstall --nogpgcheck http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-20.noarch.rpm |
(3)生成缓存
[root@localhost~]# yum clear all [root@localhost~]# yum makecache |
(4)安装加速插件
[root@localhost~]# yum instal yum- fastestmirror //自己主动选择最快的源 [root@localhost~]# yum intall axel //多线程下载 |
(5)查看并更新
[root@localhost~]# ls /etc/yum.repos.d [root@localhost~]# yum update |
2.安装前的配置
(1)开启网络服务配置:
[root@localhost~]# chkconfig network on [root@localhost~]# systemctl start network.service |
(2)禁用防火墙:
[root@localhost~]# systemctl stop firewalld //关闭 [root@localhost~]# systemctl disabled firewalld //禁用 |
编辑/etc/selinux/config文件,将SELINUX改为disabled,例如以下:
[root@localhost~]#gedit /etc/selinux/config
# 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 - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted |
(4)编辑/etc/hosts文件,为安装Fedora20时指定的主机名加入一项,例如以下:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 127.0.0.1 f20 localhost.localdomain |
(5)更新Fedora20系统:
[root@localhost~]# yum update |
(6)重新启动系统:
[root@localhost~]# reboot |
3.安装XEN
(1)安装一些开发库和开发工具:
[root@localhost~]# yum groupinstall "Development Libraries" [root@localhost~]# yum groupinstall "Development Tools" |
(2)安装XEN执行时可能用到的包:
[root@localhost~]# yum install transfig wget texi2html libaio-devel dev86 glibc-devel e2fsprogs-devel gitk mkinitrd iasl xz-devel bzip2-devel [root@localhost~]# yum install pciutils-libs pciutils-devel SDL-devel libX11-devel gtk2-devel bridge-utils PyXML qemu-common qemu-img mercurial
[root@localhost~]# yum install glibc-devel.i686
|
(3)安装XEN及其相关包(xen-hypervisor,xen-libs ,xen-runtime):
[root@localhost~]# yum -y install xen xen-hypervisor xen-libs xen-runtime
|
(4)配置xen的一些信息:
[root@localhost~]# systemctl enable xend.service
[root@localhost~]# systemctl enable xendomains.service
|
配置grub2:
[root@localhost~]# grep ^menuentry /boot/grub2/grub.cfg | cut -d "'" -f2 Fedora, with Linux 3.13.4-200.fc20.x86_64 Fedora, with Linux 0-rescue-c9dcecb251df472fbc8b4e620a749f6d Fedora, with Xen hypervisor [root@localhost~]# grub2-set-default 'Fedora, with Xen hypervisor' [root@localhost~]# grub2-editenv list saved_entry=Fedora, with Xen hypervisor |
(5)重新启动电脑,验证XEN是否成功安装并执行:
[root@localhost~]# xmdmesg | head
【注:还能够用下面命令xminfo 或xm list查看很多其它XEN的信息】
4.创建DomU
(1)安装XEN虚拟机图形管理器及相关包:
[root@localhost~]# yum -y install virt-manager libvirt virt-viewer xorg-x11-xauth
[root@localhost~]# yum -y install libvirt-daemon-driver-network libvirt-daemon-driver-storage libvirt-daemon-xen
|
(2)启动libvirtd服务:
[root@localhost~]# systemctl enable libvirtd.service
[root@localhost~]# systemctl start libvirtd.service
|
(3)为DomU指定磁盘:
在创建DomU之前必须为其创建磁盘。在此我们把DomU存储在LVM逻辑卷管理的物理磁盘上。磁盘创建步奏例如以下:
①在磁盘上创建LVM分区:
首先查询磁盘分区信息:我的电脑仅仅有一块磁盘sda,当中有10个分区,然后我添加一个分区sda11,以便创建DomU存储磁盘时用,并将sda11分区的ID的设为8e。
创建完sda11分区后,用命令fdisk -l查看创建信息:
②在LVM分区上创建物理卷PV:
[root@localhost~]# pvcreate /dev/sda11
或创建指定大小的物理卷,命令为:pvcreate --setphysicalvolumesize 20G /dev/sda11
③在物理卷PV上创建卷组VG:
[root@localhost~]# vgcreate VG /dev/sda11
创建Windows(全虚拟化)的逻辑卷:
[root@localhost~]# lvcreate -ndllyou_Win -L10G /dev/VG
//以上命令创建名为dllyou_Linux大小为10G的逻辑卷
[root@localhost~]# mkfs.ntfs /dev/VG/dllyou_Win
//以上命令设定逻辑卷的文件系统
|
创建fedora(半虚拟化)的逻辑卷:
[root@localhost~]# lceate -ndllyou_Linux -L 10G /dev/VG [root@localhost~]# mkfs.ext4 /dev/VG/dllyou_Linux |
(4)创建DomU:
两种方法创建:①通过virt-viewer命令创建;②通过virt-manager图形管理器创建。
①通过virt-viewer命令:
[root@localhost~]# yum install virt-install [root@localhost~]# virt-install -n f20 -r 1024 --vcpu=1 -f /dev/VG/dllyou_Linux --vnc -p -l "http://mirrors.sohu.com/fedora/releases/19/Fedora/i386/os/" |
说明:
-n : DomU的名称
-r : DomU的内存
--vcpu : 虚拟CPU个数
-f : 通过LVM管理的dllyou_Linux逻辑卷
--vnc : 通过vnc来连接DomU
-p : 半虚拟化
-l : 网络地址,系统安装的根文件夹
【须要说明的是安装的版本号是32位fedora19,但取名的时候不小心设置为的f20.安装完毕后再来更改DomU名。
】
输入以上命令后,我们就慢慢的等待、等待,直到出现安装界面,设定相关信息,就可以完毕DomU的创建。
此时用命令:xm list查看信息例如以下: