标签为 KVM 的文章

安装部署CloudStack 4.0企业私有云平台[原创分享]

参考资料
CloudStack Installation_Guide/installation.html
CloudStack Admin_guide/working-with-iso.html
CloudStack Admin_guide/creating-vms.html
CloudStack Admin_guide/create-templates-overview.html

目录结构
1. 什么是CloudStack
2. 宿主机的系统需求
3. 配置安装源
4. 安装Management Server
5. 安装配置KVM虚拟化Host主机
6. 用户界面
7. 配置Management Server
8. 创建Instance类型
9. 创建ISO安装源并创建Instance
10. 创建并定制Template
11. 通过定制的Template创建VM Instance
12. 其它优化设置

环境介绍
OS: Ubuntu Server 12.04.1 64-bit
Server:
10.6.203.10 cloudstack-server-1
- CloudStack Management Server
- CloudStack Agent
- NFS Server
- MySQL Server
注:CloudStack支持很好的分布式架构,上面 - 代表的所有角色都可以部署在不同的机器上,但在测试环境中因为条件有限我全部都部署到了一台机器上。

1. 什么是CloudStack
CloudStack是一个开源的具有高可用性及扩展性的云计算平台。
提到开源的云计算平台,相信大家首先想到的可能是OpenStack,目前国内的几家云计算平台如阿里云、盛大云以及新浪SAE貌似都基于OpenStack做了二次开发。
但使用过CloudStack之后,你会发现其实CloudStack更像是一个商业化过后的产品,有着非常好的用户界面,各个模块默认集成的很好,且安装与部署过程也相对容易一些。

事实上,CloudStack的前身是Cloud.com,后来被思杰收购。2011年7月,Citrix收购Cloud.com,将CloudStack 100%开源并交给Apache软件基金会管理。
同时,CloudStack已经有了许多商用客户,包括GoDaddy、英国电信、日本电报电话公司、塔塔集团、韩国电信等。

因此,CloudStack本身其实就是一个商业化过后的产品,然后在面对OpenStack等开源系统的巨大竞争压力的情况下选择了同样的开源。

目前Cloudstack支持管理大部分主流的hypervisors,如KVM,XenServer,VMware,Oracle VM,Xen等。
CloudStack具有商业软件所拥有的完善的用户权限管理,可以让用户构建一个安全的多租户云计算环境。
同时兼容Amazon AWS API 接口,可用来管理AWS的资源。
  
CloudStack的官方网址如下(目前还处于Apache基金会的孵化器中):
http://incubator.apache.org/cloudstack/

以下是CloudStack的系统架构,基本上与其他云计算平台相同:

2. 宿主机的系统需求
由于CloudStack 4.0 限定了libvirt版本 > 0.9.4,并在社区宣称所支持的OS为 CentOS/RHEL 6.2 以上或 Ubuntu Server 12.04。
因此,这里我们选择 Ubuntu Server 12.04.1 作为我们的操作系统。
官方下载地址:http://releases.ubuntu.com/precise/ubuntu-12.04.1-server-amd64.iso

另外,官方要求硬件至少满足以下条件:
1) 支持硬件虚拟化(Intel-VT 或 AMD-V)
2) 64位的x86 CPU
3) 4G内存
4) 36GB硬盘
5) 1张网卡

3. 配置安装源
配置国内的网易镜像源
$ sudo sed -i s/us.archive.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
$ sudo sed -i s/security.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list

配置CloudStack官方源
$ sudo vim /etc/apt/sources.list.d/cloudstack.list
deb http://cloudstack.apt-get.eu/ubuntu precise 4.0

配置CloudStack官方源证书
$ wget -O - http://cloudstack.apt-get.eu/release.asc| sudo apt-key add -

更新系统的安装源
$ sudo apt-get update

4. 安装Management Server
4.1 准备好操作系统环境
查看主机名
$ hostname --fqdn
cloudstack-server-1

$ sudo vim /etc/hosts
添加以下记录
10.6.203.10 cloudstack-server-1

安装时间服务器
$ sudo apt-get install openntpd

4.2 下载安装 CloudStack Management Server 与 vhd-util
安装CloudStack Management Server
$ sudo apt-get install cloud-client
阅读全文 »

, , , , , ,

58 Comments

虚拟化技术总结与经验分享

云计算与融合
近几年来,“云计算”与“融合”等概念炒得沸沸扬扬,其相关技术非常值得我们去进行关注。
就我的理解而言,数据中心要实现云计算,虚拟化无疑是一个重要的基础,但虚拟化本身并不是云计算,而只是走向云计算的途径之一;
至于“融合”,则主要是为了解决目前运营商和企业的IT基础设施无序化建设所提出的一种解决思路,虚拟化则是一个重要的手段,具体方法是将众多服务器硬件资源,通过虚拟化技术将它们形成一系列虚拟的“资源池”,再重新利用起来。

目前虚拟化软件有很多厂商都在做,成功商用的也有很多家,下面我就自己的一些了解,和周围一些前辈的经验分享,来简单的总结一下。

虚拟化技术
在x86服务器上的虚拟化技术上可分为:
硬件协助虚拟化与操作系统虚拟化,而操作系统虚拟化又可分为全虚拟化与半虚拟化。

硬件协助虚拟化(Hardware-Assisted-Virtualization)
两大CPU厂商的 Intel VT-x 与 AMD-V 技术。
应用:在BIOS设置中打开该功能选项,可以使Xen等半虚拟化软件支持全虚拟化。

全虚拟化(Full Virtualization)
中央处理器与其他的硬设备都虚拟化。
优点:操作系统只要有支持虚拟化系统提供的硬设备 ,就可以不修改操作系统而直接在虚拟机上安装该操作系统。
缺点:因为所有的硬设备都由虚拟产生,所以当虚拟机上的操作系统要读取某一个硬设备时,都需要通过虚拟化系统才能读取真实的硬设备,因而效能往往比较差。
代表:Vmware ESX Server

半虚拟化(Paravirtualization)
虚拟化系统仅提供中央处理器的虚拟化能力。
优点:硬件设备则与真实机器共享同一个硬件设备,因此使用硬件设备的效率较佳。
缺点:操作系统必须修改内核才能安装在半虚拟化系统中的虚拟机器中,这样就无法直接支持像Windows这样的非开放源代码操作系统。
代表:Citrix XenServer

商业虚拟化软件
VMware ESX Server
VMware的企业级应用软件,直接运行在服务器裸机上,是基于硬件之上的架构。用同一台服务器底层硬件,划分出若干虚机,集中管理,能够很方便的实现集群,负载均衡,热迁移等功能。通过 VMware vSphere 可集中管理多台VMware ESX Server主机。
通过我对四川省公司电信云计算平台相关技术负责人的调研了解,目前中国电信已经开始采用VMware的全套技术构建其云计算平台了,并且已经开始了广泛的试点应用,所有新上线的IT系统均需要审核并考虑部署到该平台当中,其中不包括 核心IT系统(如营帐、计费系统)以及配置与IO需求很高的系统。

Microsoft Hyper-V
微软Hyper-V虚拟化平台,以Xen的虚拟化技术为基础开发而成的,目前已整合到64位的Windows Server 2008。

Citrix XenServer
VMware的企业级应用软件,直接运行在服务器裸机上,是基于硬件之上的架构。以Xen的虚拟化技术为基础开发而成的,其白金版与企业版支持高可用性(High availability,HA)备援,以及Xen-Motion虚拟机在线转移等功能,精简版可以免费下载与使用,但对免费授权有所限制,需要每年申请license。Citrix XenCenter 可集中管理多台 Citrix XenServer。

Parallels Virtuozzo Containers
Parallels的企业级应用软件,声称其与VMware系列产品相比能够提供更高的性能。

IBM与HP基于自身硬件的虚拟化解决方案

开源及免费虚拟化软件
VMware Server
VMware的免费虚拟化软件,支持Windows与Linux平台,通过VMware Server Console工具可进行图形化管理。

Xen
Xen是开源虚拟化的一面旗帜。Xen是一专为x86服务器虚拟化准备的开源软件包,是由英国剑桥大学开发,运行在Linux上,支持Windows和Linux等操作系统的虚拟化。
它对商业虚拟化软件公司如微软、VMware等有重大的影响,迫使这些公司将一些工具开源,免费供用户使用。

Red Hat KVM
KVM:Kernel Virtual Module的简写,是从RHEL5.4开始推出的虚拟化技术,目前只支持在64位的RHEL5.4以及后续新版本的操作系统上运行。

VirtualBox
由Sun Microsystems公司出品的虚拟化软件,功能丰富易用,但在网络方面仍需改进。

OpenVZ
OpenVZ是开源虚拟化软件,使用Virutozzo软件的内核,Virutozzo是Parallels公司的企业级虚拟化软件。

经验分享
VMware是目前最领先的虚拟化厂商,其产品与技术也最受认可,在项目中如果需要考虑虚拟化的解决方案,选择VMware将是最容易被接受和认可的,因为目前像电信这样的运营商已经开始利用VMware的产品搭建其云计算平台了;
VMware的售价昂贵,目前官方报价是10万元每CPU;
VMware以外的其它虚拟化软件在严格意义上都不是全虚拟化;
半虚拟化的性能要优于全虚拟化;
部分半虚拟化软件经过改进之后,通过CPU的硬件协助虚拟化就可以支持全虚拟化了,例如在Xen上安装Windows;
如果需要考虑成本,同时兼顾系统的性能与稳定性,推荐在Linux上通过VMware Server 与 Xen来实现;
VMware Server 部署与实现要比Xen方便,但性能上Xen更好;
VMware Server 2.0 相比 1.0 而言,推荐使用更稳定和低资源耗用的1.0;
推荐购买采用Xen技术实现的VPS,而不是OpenVZ;
Xen推荐采用各Linux发行版的二进制版本,不推荐自己编译安装Xen;
……
更多经验分享还需要大家共同探讨。

, , , ,

2 Comments