Tag Archives: Virtualization

在RHEL 5上安装Xenoprof

Xenoprof是HP公司针对OProfile工具开发的一个接口,它使得OProfile能够适用于基于Xen的虚拟环境,从而能够对内核、应用程序等的性能信息进行监控,在官网http://xenoprof.sourceforge.net/上有详细的介绍。之前我在《OpenSolaris, Fedora and Xen 之 Fedora 10上Xen 3.3.1的安装与配置》一文中写了关于Xen 3.3.1的安装过程,本文我将介绍如何在RHEL 5上安装Xenoprof。 安装好Xen后,进入Dom0,如果你还未安装Xenoprof,键入opcontrol --reset命令,会有以下错误信息,而正常情况下是没有任何提示信息的。 [root@v6 oprofile-0.9.3]# opcontrol --reset FATAL: Module oprofile not found. FATAL: Module oprofile not found. Kernel doesn't support oprofile 具体安装过程如下: 1. 从http://oprofile.sourceforge.net/上下载oprofile-0.9.3(虽然目前的最新版是0.9.5,但目前Xenoprof只支持到oprofile 0.9.3); 2. 从Xenoprof官方网站http://xenoprof.sourceforge.net/上下载oprofile-0.9.3-xen-r2.patch; 3. tar xzvf oprofile-0.9.3.tar.gz解压oprofile,并将oprofile-0.9.3-xen.r2.patch复制进oprofile-0.9.3文件夹,然后执行patch … Continue reading

Posted in C/C++/Others, Linux&Minix, 虚拟化 | Tagged , , , | Leave a comment

OpenSolaris使用clone技术安装zone

Solaris container是从Solaris 10开始引入的非常优秀的虚拟化解决方案,它通过在一个Solaris操作系统虚拟多个zone(Solaris实例)来实现服务器整合及资源隔离。由于 每个zone需要占用一定的存储空间,如果系统中的zone过多也会对系统的存储资源带来一定的负担。本文主要介绍如何使用clone的方式来创建多个 zone,并达到节约存储资源的目的。 之前在《Crossbow practice in OpenSolaris 2009.06》一文中介绍了OpenSolaris的Crossbow项目,我们可以通过crossbow虚拟多个etherstub及NIC来安装多个zone。 dladm create-etherstub etherstub0 dladm create -l e1000g0 vnic01 首先在vnic01这块虚拟网卡上安装一个zone,使用vi clonezone.config建一个配置文件,内容如下: create set zonepath=/export/home/zones/clonezone set ip-type=exclusive add net set address=192.168.205.123 set physical=vnic01 end 将clonezone.config配置文件应用于clonezone。 zonecfg -z clonezone -f clonezone.config 可使用zonecfg -z … Continue reading

Posted in Solaris, 虚拟化 | Tagged , , | Leave a comment

Sun公司与云计算

  云计算是近年来一个非常热门的话题。那到底什么是云计算呢?每个人都有自己的看法。   维基百科是这样描述的:云计算是分布式计算技术的一种,其最基本的概念,是通过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统进行搜寻和计算分析,最后将处理结果回传给用户。通过这项技术,网络服务提供者可以在数秒内,处理数以千万计甚至亿计的信息,达到和超级计算机同样强大效能的网络服务。按照这样的定义,好像和网格计算没有什么实质性的区别,但是看看目前一些成熟的云计算实例,云计算和网格计算又有一些差异。   云计算可以是租用一台服务器或一千台服务器并在目前世界上最强大的系统上运行地球物理建模应用程序的能力。云计算也可以是租用一个虚拟服务器、在其上面加载软件、随意打开和关闭该虚拟服务器或克隆该服务器十次以满足突发工作负荷需求的能力。云计算可以存储并保护巨量数据,而且这些数据只允许授权应用程序和用户进行访问。云计算可由建立一个包括 OS、Apache、MySQLTM 数据库、Perl、Python 和 PHP 的平台的云提供商提供支持,该平台能够根据不断变化的工作负荷自动扩展。云计算还可以是在互联网上使用存储并保护数据同时提供服务 [包括电子邮件、销售能力自动化 (Sales Force Automation) 和报税 (Tax Preparation),等等] 的应用程序的能力。云计算可以使用存储云 (Storage Cloud)来保存应用程序、企业和个人数据。而且,云计算还可以使用少数 Web 服务来集成照片、地图和 GPS 信息,以便与客户 Web 浏览器中创建聚合 (Mashup)。Sun 公司采取一种全面的观点,这种观点认为,云的类型有很多种,而且有很多不同的应用程序可以使用云来构建。由于云计算有助于提高应用程序部署速度,有助于加快创新步伐,因而云计算可能还会出现我们现在无法想像到的形式。然而,永恒不变的是,Sun 公司是一家具有丰富经验的服务器、网络和软件技术提供商,提供的这些技术均支持云计算。作为创造“网络就是计算机”(The Network is the ComputerTM) 这一短语的公司,Sun深信云计算就是下一代的网络计算。   ChinaGrid专家组组长、虚拟化973首席科学家金海教授这样描述网格计算与云计算的差别:网格计算强调的是一个由多机构组成的虚拟组织,多个机构的不同服务器构成一个虚拟组织为用户提供一个强大的计算资源;而从目前云计算的成熟案例来看,云计算更强调在一个机构内部的分布式计算资源的共享。无论是亚马逊的EC2或者S3(Simple Storage Service,简单存储服务),还是谷歌的云计算,其实都是由一个能统一控制资源的机构提供计算/存储资源,也正是因为由这样的一个机构来提供资源,才能确保用户的服务质量。比如可以按照用户的需求首先在云中为用户部署所需要的运行环境(当然资源预留和动态部署技术的成熟也得益于最近几年兴起的虚拟化技术的研究成果,正因为虚拟化技术使得可以把用户和底层的软硬件运行环境分离开来)或者预留存储资源,这样在用户运行的时候可以确保所需的资源。原来在网格环境下无法将庞大的计算处理程序分拆成无数个较小的子程序在多个机构提供的资源之间进行处理,而在云计算环境下由于确保了用户运行环境所需的资源,将用户提交的一个处理程序分解成较小的子程序在不同的资源上进行处理就成为可能。由于确保了用户运行所需要的资源和环境,因此针对用户的收费就成为可能。   十几年来,Sun 公司一直致力于推动构成云计算基础的大型计算基础设施的技术进步。早在 20 世纪 90 … Continue reading

Posted in 虚拟化 | Tagged , | Leave a comment

Sun xVM VirtualBox 3.0.2新特性

Sun xVM VirtualBox,是一款免费的、高性能的开源桌面虚拟软件,它不仅具有丰富的特色,而且性能也非常优异,可以支持几乎所有主流的操作系统,如Mac OS、Linux、Windows、Solaris及OpenSolaris等。它的主要优点是小巧、完全免费、跨平台、性能突出、支持操作系统种类广等。其3.0版本已经正式发布,它在修改了一些Bug并对原有功能进行完善的同时,增加了许多新的特性,目前的最新版是3.0.2。 VirtualBox 3.0最大的亮点就是对SMP(对称多处理器)的支持,能够在一个虚拟机里支持更多的虚拟CPU,最多可达到32个。虚拟处理器实际上是VirtualBox中的一个线程。宿主机的处理器或处理器的核越多,在VirtualBox的客户虚拟机里就能进行越多的并行处理,从而使用户能在虚拟机上运行各种复杂的任务。 同时,相比VirtualBox 2.2及之前的版本,VirtualBox 3.0能够更好地支持3D加速。如果虚拟机里的应用程序通过OpenGL或DirectX 8/9代替软件模拟来使用3D特性,VirtualBox将会直接访问宿主机的3D硬件。在 VirtualBox 2.1里只对Windows guest添加了OpenGL的支持,在VirtualBox 2.2里开始支持Linux和Solaris,而VirtualBox 3.0在Windows、Mac、Linux及Solaris里都已经得到了较好的支持。它在Windows虚拟机里可以支持DirectX 8/9的Direct3D加速,而在Windows、Linux、Solaris虚拟机都可以使用OpenGL 2.0来支持加速。 为了更好地改善用户的使用体验,VirtualBox 3.0在较好地支持对本地USB设备的访问外,也能让你通过VRDP协议连接到远程的USB设备。同时,在共享文件夹等方面也做得更好。 VirtualBox 3.0.2与3.0.0版本相比,主要是修正了VMM、3D support、Shared Folders等方面的bug,并且添加了一些附加新特性。

Posted in 虚拟化 | Tagged , | Leave a comment

Crossbow practice in OpenSolaris 2009.06

在《Crossbow网络虚拟化技术》这篇文章已经详细介绍了Crossbow这个项目,而本文主要是介绍在OpenSolaris 2009.06里使用Crossbow的实例。 要查看物理网卡的状态,可以使用如下命令: haiou@opensolaris:~# dladm show-phys LINK MEDIA STATE SPEED DUPLEX DEVICE e1000g0 Ethernet up 1000 full e1000g0 可以通过以下命令来查看目前系统的LINK,而LINK是能被分配给zone的实体,包括物理网卡、虚拟网卡等。 haiou@opensolaris:~# dladm show-link LINK CLASS MTU STATE OVER e1000g0 phys 1500 up -- etherstub0 etherstub 9000 unknown -- vnic0 vnic 9000 … Continue reading

Posted in Solaris | Tagged , , | Leave a comment

Crossbow网络虚拟化技术

Crossbow项目是Sun公司在近十年中最重要的软件网络技术的核心。由于项目Crossbow集成到OpenSolaris 2009.06中 ,因此不管是从复杂服务器虚拟化到专用系统,还是从高端系统到单CPU的工业标准电脑的任何数据中心环境,都可以实现在灵活性,管理和性能方面取得高效的目的。Deployers不需要重新设计他们的网络基础设施,通过服务器虚拟化,OpenSolaris使得企业的应用程序或在特定环境下的虚拟客户系统实现价值最大化,确保应用程序可以得到满足服务水平所需的资源,并使性能得到提升,特别是对那些在处理高容量,高带宽流量碰壁的系统。   集成了Crossbow项目的OpenSolaris 2009.06拥有了更多让人印象深刻的优点和新特性:           网络虚拟化促进服务器整合 其他操作系统支持服务器整合。与建设物理网络相比,OpenSolaris 2009.06提供网络虚拟化,使服务器整合项目在很大程度上涉及整个网络拓扑结构。利用VNICs提供的基础虚拟网络构建、虚拟交换机及其互连、虚拟局域网(VLANs)、和OpenSolaris开源路由和防火墙功能,允许整合整个分布式应用环境到一个以原型、测试和部署为目的的单一系统中。 资源管理能够使应用程序在所有系统负载下预期运行 网络供应商把重点放在网络管理能力方面。OpenSolaris的发展使得人们真正意识到这个问题的重要性,以确保应用程序在运行环境中满足需求。 OpenSolaris的网络资源管理允许组织去满足网络服务质量的目标。这些管理功能允许为物理和虚拟接口设置带宽限制条件以及为这些服务接口设定流量优先次序和 CPU资源限制条件。但更重要的是控制应用程序的执行环境,促使应用程序达到服务水平协议。在OpenSolaris系统中,结合CPU和内存资源管理设施,不管系统负载多大,都有可能使得关键应用程序分配到资源。OpenSolaris系统可以提高管理员对系统资源的管理能力,这是其他一般用途的操作系统没法比拟的。  更好吞吐量 OpenSolaris 2009.06提高了系统的网络性能。最好的性能收益通常配备了最新一代智能网络接口控制器(NICs),这些控制器有Crossbow可以管理的数据包过滤和多环缓冲器。即使在过去的OpenSolaris中部署,仍然可以得到好处,就像Crossbow架构完全适应以前的接口一样。  OpenSolaris 2009.06加强安全部署 OpenSolaris 2009.06能创建安全的应用环境。虚拟网卡是一种内在的更安全的操作系统架构构件,因为它们是建立在一个充分独立的网络堆栈的框架内。最新的智能网络接口,可以使用OpenSolaris编程,用网络接口硬件提供流量分类,而以硬件提供的分类数据包可以通过它自己的'道'到应用程序。此外,由Sun公司提出的虚拟环境的共同点是在一个单独的行政域管理虚拟网卡的能力。例如对Solaris Container,像带宽,流量的优先次序和 CPU资源等网络接口性能可以传递到容器环境中,并且在此环境中不可改变。此外,虚拟局域网允许通过支持VLAN构建的交换机和路由器,创建端到端独立的从应用程序到服务的通信道。这些功能允许建立执行环境,即使损害了安全漏洞,但可以限制暴露漏洞。继续以Solaris Contrainer为例,即使以管理员身份访问容器,使用本该分配给网络接口的更多资源,也不会自动启用监瑞脑消金兽听网络流量,不会从VLAN路由出数据包等等。  对虚拟和物理网络接口的监测 OpenSolaris的管理工具提供了通过使用观测物理网络接口的相同工具观测虚拟网络的功能。监测能力可以促使做出资源管理的策略。在设计策略之前,可以通过观察VNIC带宽的使用情况了解趋势,还可以学习由OpenSolaris内核为后事件分析所保存的历史数据。  总结 综上所述,集成了Crossbow项目的OpenSolaris2009.06带来了如此多业界领先的新特性和惊喜。OpenSolaris系统是唯一一个能在高端多核系统运行的并在行业标准服务器领域拥有极高性价比的操作系统,也是唯一一个能完全重构建网络协议栈以更好地实现虚拟化和资源管理的操作系统。它是下一代网络应用程序的最佳候选之一。  参考文献:http://www.opensolaris.com/learn/features/networking/networkcrossbow/ 

Posted in Solaris, 虚拟化 | Tagged , , | Leave a comment

The development process of virtualization

Virtualization is a very hot topic recently in IT industry, but what’s a real virtualization? Continue reading

Posted in 虚拟化 | Tagged | Leave a comment

Virtualization:Xen and xVM Server

近年来随着计算机硬件的高速发展,虚拟化技术已经成为计算机业的焦点之一。虚拟化技术从实现途径上来说,由两种典型的派别:泛虚拟化(para-virtualization)和完全虚拟化(HVM)。前者通过修改客户操作系统来配合虚拟化的环境,从而达到较高的性能,但也付出了兼容性和维护性方面的限制,而Xen就是泛虚拟化技术的杰出代表;而完全虚拟化技术常常需要得到处理器级别的硬件支持(如Intel VT或AMD-V处理器),或者通过对客户机执行代码进行动态二进制代码转换,然后可以无需修改的直接运行一个已有的操作系统,使得虚拟化技术的应用更加容易。完全虚拟化的代表产品有VMware, VirtualPC, QEMU等。事实上,当前一些主流的虚拟化产品都同时支持这两种模式。下图为native、para-virtualization和HVM三种情况运行级别的对比: 三种情况运行级别的对比 根据虚拟机管理程序在系统中所处的位置,虚拟化技术又可以分为如下几种,如下图如示: 三种虚拟化体系结构 Xen作为虚拟机技术的前沿代表,在同一台物理计算机上,使用户不仅可以同时搭建几个不同Linux系统的服务器,而且如果拥有一台先进的支持硬件虚拟技术(VT)的计算机,还可以利用Xen同时运行多个Windows。Sun xVM Server正是Sun基于Xen开发的一个数据中心级别的企业级的hypervisor产品,可以支持Windows、Linux和Solaris等不同操作系统,并支持Sun以及其他公司的x86/x64系统架构,允许用户在一台机器上虚拟多个操作系统,以对服务器进行整合。此外,Sun xVM Server还有一套完善的监控和管理机制。 1. 什么是VMM(hypervisor) 虚拟软件的核心是一个“虚拟机监视器”(VMM,virtual machine monitor),有时也被称作“hypervisor”。一个hypervisor是一个非常底层的虚拟化程序,可以让多个OS共享一个单一的硬件处理器——无论是不同类型的操作系统,还是同一操作系统的多个实例(instance)。表面上看来,每个操作系统“独占”处理器、内存及 其他资源。但实际上是由hypervisor控制着真实的处理器等资源,并根据需求轮流向操作系统分配资源。由于一个操作系统经常是用于运行某个或某组特定的应用,而使用hypervisor可以在单一服务器上运行多个操作系统及应用,因此可以全面地减少硬件成本。 2. 什么是Xen Xen 是由剑桥大学开发的一个开放源代码的para-virtualizing虚拟机(VMM),或“管理程序 ”,是为x86架构的机器而设计的。Xen 可以在一套物理硬件上安全的执行多个虚拟机;Xen是基于内核的虚拟程序,它和操作平台结合的极为密切,所以它占用的资源最少。 什么是虚拟机呢?可能大家知道VMWARE吧,是的,Xen就是类似这样的程序,比如我们可以在Fedora 上虚拟安装和使用Slackware、Debian、Gentoo ... ... 等发行版。因为Xen是基于内核的,相对VMWARE 来说,它占用的系统资源也就是VMWARE的百分之几左右。Xen是不是更有优势呢?只有您实践了才知道。 Xen 3.0体系结构 基于Xen的操作系统,有多个层,最底层和最高特权层是 Xen程序本身。Xen 可以管理多个客户操作系统,每个操作系统都能在一个安全的虚拟机中实现。在Xen的术语中,Domain由Xen控制,以高效的利用CPU的物理资源。每个客户操作系统可以管理它自身的应用。这种管理包括每个程序在规定时间内的响应到执行,是通过Xen调度到虚拟机中实现。 当Xen启动运行后,第一个虚拟的操作系统,就是Xen本身,我们通过xm list,会发现有一个Domain 0的虚拟机。Domain 0 目前主要由Linux来充当,是其它虚拟主机的管理者和控制者,可以构建其它的更多的Domain(称为DomU) … Continue reading

Posted in 虚拟化 | Tagged , , | Leave a comment

关于虚拟化技术和Sun xVM Portfolio的介绍

虚拟化在目前的IT界中是一个非常热门的领域,尽管它并不是一个新的概念,但是随着处理器技术的发展和系统性能的不断提升,虚拟化技术也到了一个迅速发展的成熟时期。许多IT巨人都纷纷推出了自己的虚拟化解决方案和产品,而开源社区的活力也给这项技术加上了飞翔的翅膀,代表产品有Xen、KVM、Sun xVM Portfolio等。 虚拟化技术从实现途径上来说,由两种典型的派别:泛虚拟化和完全虚拟化。前者通过修改客户操作系统来配合虚拟化的环境,从而达到较高的性能,但也付出了兼容性和维护性方面的限制;而完全虚拟化技术常常需要得到处理器级别的硬件支持(即硬件虚拟化),或者通过对客户机执行代码进行动态二进制代码转换,然后可以无需修改的直接运行一个已有的操作系统,使得虚拟化技术的应用更加容易。事实上,当前一些主流的虚拟化产品都同时支持这两种模式。 目前的虚拟化主要有三种方式: 1.           域和分区:这是基于硬件的解决方案,Sun Fire Domains就是其代表之一; 2.           虚拟机器:这是应用层的解决方案,包括VMware、Xen以及即将发布的Sun xVM Server等; 3.           操作系统分区,包括Linux Vservers、Solaris Container等。 Xen是由英国剑桥大学开发的一个成熟的开源虚拟化产品,无论是其功能,还是相关的配套结构都已发展得比较完善。xVM是Sun为推广开源Xen系统管理程序所选定的名称,而Sun xVM Portfolio的出现,使用户不再需要从多个厂商购买不同的虚拟化工具,不再需要专门的技术人员来整合这些工具,因为Sun的一整套虚拟化解决方案将为用户提供最为优质的服务。下面将详细介绍Sun xVM Portfolio。 Sun xVM是针对稳定性、易处理性、有效性、安全性等特性设计的一系列虚拟化产品套件。包括xVM VirtualBox、xVM Server、xVM VDI(Virtual Desktop Infrastructure)和xVM OpsCenter。 Sun xVM portfolio  Sun xVM VirtualBox Sun xVM VirtualBox,是一款免费的、高性能的开源桌面虚拟软件,它不仅具有丰富的特色,而且性能也很优异,可以支持所有主要的操作系统,如Mac OS、Linux、Windows、Solaris及OpenSolaris等,目前最新版2.0已经发布。 … Continue reading

Posted in 虚拟化 | Tagged , | 2 Comments