简介html
CloudStack(cloudstack.apache.org)是IaaS类型云计算的一种开源解决方案,同类的解决方案有OpenStack、OpenNebula等,CloudStack是以java语言所研发并具备高可用性、可扩展性、丰富的UI功能、Hypervisor 的多样性等等..(更多请见http://www.cloudstack-china.org/2013/11/2702.html),它能够帮助用户利用本身的硬件提供相似于Amazon EC2那样的公共云服务。CloudStack能够经过组织和协调用户的虚拟化资源,构建一个和谐的环境。CloudStack具备许多强大的功能,能够 让用户构建一个安全的多租户云计算环境。CloudStack 兼容Amazon API 接口.java
CloudStack可让用户快速和方便地在现有的架构上创建本身的云服务。CloudStack能够帮助用户更好地协调服务器、存储、网络资源,从而构建一个IaaS平台。数据库
1、咱们为何要选择cloudstackapache
下面的表格是cloudstack、openstack、VMwareCloud之间的简单对比安全
CloudStack |
OpenStack |
VMwarevCloud |
|
风格并发 |
解决方案负载均衡 |
框架 |
企业级产品 |
专一方向 |
兼顾传统企业应用和云 |
彻底的云风格 |
只基于传统企业架构 |
主要客户列表 |
企业,互联网行业,云服务提供商 |
云服务提供商,互联网 |
企业 |
架构 |
简单的解决方案 |
大量松耦合的组件进行整合 |
一个复杂的管理产品的套件 |
扩展性 |
40,000hosts |
依赖于不少小组件的大量扩展 |
2,000hosts |
升级 |
升级简单 |
早期不支持版本升级,复杂 |
大量产品的复杂升级,花费时间多 |
总结: 如下是对三种产品简单的总结,至于使用哪一个产品本身决定吧.嘿嘿
cloudstack简单的架构部署,轻松的管理上万物理服务器、美观适用的WEB UI、各版本之间兼容性很好、支持物理机及虚拟机的故障迁移、灵活的网络架构设计等功能
Openstack复杂的部署方式(虽然有些公司提供了一键部署的iso包,那对于管理员的咱们不建议使用一键安装的方式.由于不了解各个组建是如何工做的且出了问题很差排查)、各版本直接兼容性很差
VMwareCloud就不用详解介绍了,它是一个企业级产品且费用昂贵,非通常企业可以使用的起的产品
cloudstack的安装包下载量及地区
事件 |
版本 |
时间 |
备注 |
梁胜创建公司:VMOps |
2008 |
Sheng Liang, Shannon Williams, Alex Huang, Will Chan,Chiradeep Vittal |
|
改名为Cloud.com |
2.0 |
2010/05/04 |
开放大部分源码,协议采用GPL V3 |
Tata电信 |
2.2 |
2011/03/08 |
公有云服务提供 |
CloudStack被Citrix收购 |
2011/07 |
GPL v3 |
|
Citrix发布新版本 |
3.0 |
2012/02 |
|
Citrix将cloudstack捐献给apache基金会进行孵化 |
3.0.x |
2012/04/16 |
ASL V2 |
4.0版本发布 |
4.0.0 |
2012/11/06 |
|
Cloudstack成为apache基金会的顶级项目 |
4.0.2 |
2013/03/24 |
|
4.2版本发布 |
4.2.0 |
2013/10/01 |
57个新功能,29个改进功能 |
4.3版本发布 |
4.3.0 |
2014/03/26 |
全新的UI界面,支持更多的Hypervisor |
Cloudstack是 IaaS (Infrastructure as a Service)即基础设施即服务 的开源解决方案,cloudstack支持的功能有如下不等(4.2版本有60个左右的功能)更多详见(http://www.cloudstack-china.org/2014/04/3232.html)
弹性的架构设计支持上万计算节点
支持物理机、虚拟机的故障迁移
美观的UI界面
API的支持
支持众多的Hypervisor
等等
在cloudstack的架构里面有这样几个概念,如图所示,以下一 一介绍
Zones(资源区域)
Cloudstack里面的最大组织单位就是区域,一个区域一般包含一个或多个提供点,
在cloudstack里面区域能够理解为一个idc机房,好比某公司的服务器分别托管在北京、杭州、广州三地的IDC机房,在cloudstack里面最好的解决方案就是建立三个不一样的区域便可
Pods(提供点)
提供点在cloudstack里面一般能够理解为一个机柜或者能够理解为一个网络中的一个子网,在一个提供点里的主机要在同一个子网里面,一个提供点包含有一个或多个clusters(集群)
Clusters(集群)
集群是由一个或多个host、一个或多个主存储组成,在同一个集群中必需要有相同的Hypervisor、建议有相同配置的硬件、共用一个或多个存储。在一个集群中虚拟机实例能够为所欲为的切换到同一集群内的其它host上
Host(主机)
主机就是一台安装有Hypervisor,并为cloudstack提供计算资源的一台服务器
Primary storage(主存储)
主存储也叫一级存储,它在cloudstack里面主要是提供某一个集群中全部主机上运行的虚拟机实例的磁盘卷的存储,主存储在目前只支持NFS、SharedMountPoint 、Clvm这三种类型的存储
Secondary storage(辅助存储)
辅助存储在cloudstack里面主要提供模版、快照、卷的存储,而管理这些功能的是由一个叫ssvm的系统虚拟机
SSVM(Secondary Storage VM)
SSVM在cloudstack里面主要提供管理一级存储、二级存储、模版、快照、卷等功能,在建立并启用一个区域后SSVM会自行建立,若是手动删除cloudstack也会自行建立SSVM
CPVM(Console Proxy VM)
CPVM主要提供链接控制台代理,在cloudstack的UI界面链接某个虚拟机实例的窗口就是CPVM提供的功能,控制台主要是经过vnc实现.咱们在安装配置计算节点的时候须要开启qemu的vnc监听就是为CPVM提供的服务
V-Route(虚拟路由器)
在基础网络模式下虚拟路由器提供的功能有DNS、dhcp服务
在高级网络模式下虚拟路由器提供的功能有×××、DHCP、DNS、防火墙、负载均衡(HaProxy实现)、SNAT、静态NAT、端口转发、安全组、网络ACL、等功能
虚拟路由器的DHCP功能是为虚拟机实例提供动态获取IP的功能,那有的人就会问了,既然是DHCP那做为服务器的虚拟机实例的IP会不会变呢?答案是no,由于虚拟路由器会将虚拟机实例自动获取的IP及MAC等信息存如cloudstack的数据库,这个IP永远是某个实例的,除非销毁这个实例以后IP才会被其余实例所用
有的人就说了,既然是一个虚拟路由器,它的性能及稳定性确定是顶不住大的并发请求,那这个时候咱们怎么办呢,方法有二,1、用物理路由器代替虚拟路由让cloudstack管理.2、可根据本身的网络结构让虚拟机实例的网络不从V-Route走不就行了吗.
Security Group(安全组)
安全组咱们能够理解为一个网络中的出口硬件防火墙,固然事实上并非那么会事,由于安全组主要是利用计算节点的iptables实现的
Guest network(来宾网络)
来宾网络主要是虚拟机实例的走的网络,在配置区域的时候会提示输入来宾网络的预留IP段,那段IP就是给虚拟机实例所用了,在cloudstack中网络结构是一个很是好的设计,一样也是比较难以理解的一块
管理网络
管理网络主要是用于cloudstack的管理节点、SSVM、CPVM、V-Route之间的通讯使用
存储网络
存储网络主要是用于cloudstack管理节点、SSVM、计算节点直接的通讯使用
公共网络
公共网络在高级模式中才有的功能,公共网络咱们能够理解为公网,在cloudstack里公共网络主要是在V-Route中配置使用,为虚拟机实例提供互联网到虚拟机实例之间的IP 或端口的转发,固然用不用公共网络,也要看本身的网络设计
上面简单的阐述了CloudStack的特性及一些概念等信息,那么在了解相关观念以后咱们就要开始着手准备安装部署了,这里简单的介绍下在安装部署以前咱们要考虑的一些问题点
容量规划
服务器是否托管在多地的IDC机房(多区域)
现有的架构中有多少种Hypervisor(多集群)
准备让cloudstack容纳多少虚拟机实例(多HOST,多存储)
等
网络规划
现有的基础网络架构可否支持部署cloudstack(IP地址资源,根据计划容纳的虚拟机实例量规划)
现有的基础网络架构是否支持高级网络模式(使用基础模式)
业务并发请求量是否很大(决定本身的网络模式是否使用V-Route或是否使用物理网络设备代替V-Route)
存储规划
存储空间多大(根据每一个虚拟机实例预分配的磁盘空间*虚拟机实例的个数+预留空间)
存储的高可用性(硬件存储、分布式文件系统、等)
下回再说.