CentosX64使用yum快速搭建xen虚拟化环境
Xen的大名想必已经被众SA所熟知。Xen 是一个开放源代码虚拟机监视器,由剑桥大学开发。它打算在单个计算机上运行多达100个满特征的操作系统。操作系统必须进行显式地修改(“移植”)以在Xen上运行(但是提供对用户应用的兼容性)。这使得Xen无需特殊硬件支持,就能达到高性能的虚拟化。
对于xen知识上的介绍,这里就不过多提及了,有需要的朋友自行去查找。接下来主要讲解如何使用yum快速的把xen虚拟化环境建立起来。
服务器环境:centos 5.6 X86_64
内存:越大越好
硬盘:如果单机虚拟化,越大越好;如果集群虚拟化,适中就好。
如果需要支持全虚拟化的功能,请在BIOS中开启cpu的VT支持。如此不开,则xen只能支持半虚拟化。
在64位版centos5.6中,是支持两种虚拟化的,kvm和xen,通过yum grouplist能看到两个组名kvm和Virtualization,其中Virtualization就是我们要安装的。
通过yum groupinfo Virtualization可以看到,这个包组中包含如下内容
Group: Virtualization
Description: Virtualization Support.
Mandatory Packages:
kernel-xen
xen
Default Packages:
gnome-applet-vm
libvirt
virt-manager
virt-viewer
Optional Packages:
Virtualization-en-US
接下来就可以执行
# yum groupinstall 'Virtualization'
来进行安装了。经过几分钟的等待,相关的包就都装好了,接下来需要改grub的配置
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.18-238.12.1.el5xen)
root (hd0,0)
kernel /xen.gz-2.6.18-238.12.1.el5
module /vmlinuz-2.6.18-238.12.1.el5xen ro root=/dev/VolGroup00/LogVol00
module /initrd-2.6.18-238.12.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
将红色部分由原来的1改成现在的0,然后保存退出,并重启服务器。
等服务器重启完成后,登陆到服务器中执行
# uname -a
Linux xen252 2.6.18-238.12.1.el5xen #1 SMP Tue May 31 14:02:29 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux
看到,现在的服务器已经使用xen内核起来了。到此一个标准的xen虚拟化环境就准备完毕了,是不是很简单。
下面来简单装一个虚拟机试试。
# virt-install –prompt <--------提示的方式安装vm
Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating systems. no <--------是否使用全虚拟化,这里选择不使用
What is the name of your virtual machine? test <---------虚拟机的名字
How much RAM should be allocated (in megabytes)? 512 <-----------给虚拟分配的内存大小,单位MB
What would you like to use as the disk (file path)? /root/test.vm <------虚拟机文件存放位置,这个文件可以不用提前创建,系统会自动创建
How large would you like the disk (/root/test.vm) to be (in gigabytes)? 10 <---------虚拟机硬盘文件大小,也就是在虚拟机中看到的磁盘空间大小,单位Gb
What is the install URL? http://10.4.8.1/centos/5/os/i386 <-------linux安装文件,支持nfs,ftp,http三种模式
回车后,系统会进入安装进程,首先下载kernel文件,然后启动kernel,最终会看到
hypervkvpd
8.1. KVM
virtio-SCSI
已改进 KVM 虚拟化存储栈,添加了 virtio-SCSI(SCSI 中基于 KVM 的存储构架)性能。virtio-SCSI 提供直接连接到 SCSI LUN 的能力,相对 virtio-blk 显著提高了伸缩性。virtio-SCSI 的优点是可处理成百个设备,而 virtio-blk 只能处理约 25 个设备,还会耗尽 PCI 插槽。
virtio-SCSI 现在可以继承目标设备功能,并可:
通过 virtio-scsi 控制器添加虚拟硬盘或 CD,
通过 QEMU sisi-block 设备绕过主机到虚拟机的物理 SCSI 设备,
允许在每个虚拟机中使用成百设备;相对于 virtio-blk 的 25 个设备上限是个提高。
virtio-scsi 在红帽企业版 Linux 6.3 中是作为技术预览引进,在红帽企业版 Linux 6.4 中已全面支持。最新的 virtio-win 驱动程序还支持 Windows 虚拟机(不包括 Windows XP)。
支持 Intel 下一代核心处理器
红帽企业版 Linux 6.4 添加了对 Intel 下一代核心处理器的 qemu-kvm 支持,这样 KVM 虚拟机就可以利用这个处理器提供的新功能,最重要的是:高级向量扩展 2(AVX2)、字节操作指令 1(BMI1)、字节操作指令 2(BMI2)、硬件锁定省略(HLE)、限制可转换内存(RTM)、进程上下文标识符(PCID)、验证进程上下文标识符(INVPCID)、整合乘加器(FMA)、大端移动指令(MOVBE)、F 片段指令和 G 片段基准指令(FSGSBASE)、超级模式执行防范(SMEP)、改进的 REP MOVSB/STOSB(ERMS)。
AMD Opteron 4xxxx 系列 CPU 支持
AMD Opteron 4xxx 系列处理器现在由 qemu-kvm 支持。这样就可以让 KVM 虚拟机识别这个处理器系列的新功能,比如:F16C 指令集、小端操作、字节操作指令 1(BMI1)大幅削减功能以及整合乘加(FMA)指令集。
使用 USB 转发通过 SPICE 进行虚拟机实时迁移
在红帽企业版 Linux 6.4 中,KVM 支持 USB 转发通过 SPICE 进行虚拟机实时迁移,同时保持现有 USB 设备为所有配置的设备重新定向。
使用 USB 设备进行虚拟机实时迁移
在红帽企业版 Linux 6.4 中,KVM 支持使用 USB 设备进行虚拟机实时迁移。支持的设备有:高级主机控制器接口(EHCI)和通用主机控制器接口(UHCI)本地转移以及模拟设备,比如存储设备、鼠标、键盘、集线器及其他。
已更新 QEMU 虚拟机代理
红帽企业版 Linux 6.4 现在完全支持 QEMU 虚拟机代理(由 qemu-guest-agent 软件包提供)。已将其更新至 upstream 版本 1.1,包括以下值得关注的改进和 bug 修复:
现在可使用
guest-suspend-disk和guest-suspend-ram命令挂起 RAM 或者 Windows 系统中的磁盘。现在可使用
guest-network-get-interfaces查询 Linux 的网络接口信息。这个通信提供系统停滞支持改进和修复。
这个更新包括各种文档修复和小的改进。
半虚拟中断终止提示(PV-EOI)
运行红帽企业版 Linux 6.3 以及更老系统的主机和虚拟机在每个中断中都需要有两个 VM 出口(VM 到 Hypervisor 的上下文切换):一个是输入中断,另一个是给出中断终止信号。当主机和虚拟机系统都更新至红帽企业版 Linux 6.4 或者更新的系统后,它们就可以协商一个版虚拟中断终止功能,这样每个中断就只需要一个切换。这样在主机和虚拟机中同时使用红帽企业版 Linux 6.4 或者更新的系统时,用于中断负载的出口数量就会减半,比如通过 virtio 网络设备进入的网络流量。这样就导致主机 CPU 在此类负载中的用量的大幅降低。注:只改进了边缘中断,例如:使用等级中断的 e1000 联网就没有得到改进。
可配置音频传导
音频设备现在可在虚拟系统中被识别为 microphone 或者 speaker(也可被识别为 line-in 和 line-out)。音频失败现在可以在声音录制和音频中只接受某些类型输入虚拟程序中正常使用。
8.2. Hyper-V
包括微软 Hyper-V 驱动程序的虚拟机安装支持
在 Hyper-V 中对红帽企业版 Linux 6.4 集成的红帽企业版 Linux 虚拟机安装以及 Hyper-V 半虚拟设备支持可让用户在微软 Hyper-V hypervisor 顶层将红帽企业版 Linux 6.4 作为虚拟机运行。已在红帽企业版 Linux 6.4 提供的内核中添加了以下 Hyper-V 驱动程序和时钟资源。
网络驱动程序(
hv_netvsc)存储驱动程序(
hv_storvsc)服从 HID 的鼠标驱动程序(
hid_hyperv)VMbus 驱动程序(
hv_vmbus)util 驱动程序(
hv_util)和 IDE 磁盘驱动程序(
ata_piix)时钟资源(i386、AMD64/Intel 64:
hyperv_clocksource)
红帽企业版 Linux 6.4 还包括对 Hyper-V 作为时钟资源支持,以及虚拟机 Hyper-V 密钥--值对(KVP)守护进程(hypervkvpd)支持,它可通过 VMbus 向主机提供基本信息,比如虚拟机 IP、FQDN、操作系统名称以及操作系统发行本号。
8.3. VMware ESX
VMware PV 驱动程序
已将 VMware 版虚拟驱动程序更新至提供在 VMware ESX 中运行红帽企业版 Linux 6.4 时提供无缝开盒即用经验。已将 Anaconda 安装程序更新至在安装过程中列出驱动程序。已更新以下驱动程序:
网络驱动程序(
vmxnet3)存储驱动程序(
vmw_pvscsi)内存布尔值驱动程序(
vmware_balloon)鼠标驱动程序(
vmmouse_drv)视频驱动程序(
vmware_drv)CentOS6.4发行注记中的虚拟化
CentosX64使用yum快速搭建xen虚拟化环境的更多相关文章
- 9款一键快速搭建PHP运行环境的好工具
9款一键快速搭建PHP运行环境的好工具 胡倡萌 2011/02/19 网络资源 77,063 1 内容提要: 建立一个PHP网站,首先需要搭建PHP的开发和运行环境,对于PHP初学者也是一个难 ...
- WAMP Server助你在Windows上快速搭建PHP集成环境
WAMP Server助你在Windows上快速搭建PHP集成环境 原文地址 我想只要爬过几天网的同学都会知道PHP吧,异次元的新版本就是基于PHP的WordPress程序制造出来的,还有国内绝大部分 ...
- CentOS 7快速搭建Nodejs开发环境
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好.学习Nodejs首先需要会安装环境.这里我介绍如 ...
- 基于 Jenkins 快速搭建持续集成环境--转
源地址:http://www.ibm.com/developerworks/cn/java/j-lo-jenkins/ 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础 ...
- Jenkins 快速搭建持续集成环境
持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域 ...
- Linux下快速搭建php开发环境
php开发环境快速搭建 一.Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XA ...
- 利用Docker Compose快速搭建本地测试环境
前言 Compose是一个定义和运行多个Docker应用的工具,用一个YAML(dockder-compose.yml)文件就能配置我们的应用.然后用一个简单命令就能启动所有的服务.Compose编排 ...
- 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticsearch, MongoDB) | 建议收藏
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- Windows下快速搭建安卓开发环境android-studio
Windows下快速搭建安卓开发环境android-studio 发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 安卓 搭建 Android Windows 快速 环境 Studi ...
随机推荐
- C#解压、压缩RAR文件
using System; using System.Collections.Generic; using System.Text; using System.IO; using Microsoft. ...
- C# List<> 删除
List<string> l = new List<string>() { "A1", "A2", "A3", &q ...
- [转载]MongoDB学习 (五):查询操作符(Query Operators).1st
本文地址:http://www.cnblogs.com/egger/archive/2013/05/04/3059374.html 欢迎转载 ,请保留此链接๑•́ ₃•̀๑! 查询操作符(Quer ...
- Java集合框架的知识总结(1)
说明:先从整体介绍了Java集合框架包含的接口和类,然后总结了集合框架中的一些基本知识和关键点,并结合实例进行简单分析. 1.综述 所有集合类都位于java.util包下.集合中只能保存对象(保存对象 ...
- linux 性能分析常规逻辑和手段总结
一. 追查cpu占用较高的进程(线程) 1 . 如何查找出当前系统中占用cpu或者内存最高的进程? ps aux |sort -rn -k 3 |head -n3 查找出当前系统中cpu资源占用前三 ...
- UVA 10896 Sending Email
这个题目真是伤透脑筋了,一直RE,连着改了好几个版本,又是spfa,又是单调队列dijkstra+单调队列,总是不过,后来发现M开小了,双向边应该开m的两倍,悲剧啊!!!以后不管怎样,数组一定要尽量开 ...
- ANDROID_MARS学习笔记_S02_006_APPWIDGET2_PendingIntent及RemoteViews实现widget绑定点击事件
一.代码流程 1.ExampleAppWidgetProvider的onUpdate(Context context, AppWidgetManager appWidgetManager, int[] ...
- delphi中formatFloat代码初探(在qt下实现floatformat的函数)
由于项目需要,需要在qt下实现floatformat的函数.之前写过一个,但是写得不好.决定重新写一个,参考delphi xe2下的实现.把xe2下的相关代码都看了一遍,xe2的代码思路在这里贴出来. ...
- VC 无标题栏对话框移动(在OnLButtonDown里再次发送消息)
操作系统:Windows 7软件环境:Visual C++ 2008 SP1本次目的:实现无框移动 所谓的无标题栏对话框,是基于对话框的工程,对话框属性Border设置为None,对话框如下所示: 为 ...
- poj2029Get Many Persimmon Trees(最大矩阵和)
链接 类似最大矩阵 sum存下 枚举最大就是 #include <iostream> #include<cstdio> #include<cstring> #inc ...