project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack

 

SaaS / PaaS / IaaS

1. SaaS

提供给客户的服务是运营商运行在云计算基础设施上的应用程序,用户可以在各种设备上通过客户端界面访问,如浏览器。消费者不需要管理或控制任何云计算基础设施,包括网络、服务器、操作系统、存储等等;

2. PaaS:

提供给消费者的服务是把客户采用提供的开发语言和工具(例如Java,python, .Net等)开发的 云计算SPI关系图 云计算SPI关系图 或收购的应用程序部署到供应商的云计算基础设施上去。客户不需要管理或控制底层的云基础设施,包括网络、服务器、操作系统、存储等,但客户能控制部署的应用程序,也可能控制运行应用程序的托管环境配置;

3. IaaS:

提供给消费者的服务是对所有计算基础设施的利用,包括处理CPU、内存、存储、网络和其它基本的计算资源,用户能够部署和运行任意软件,包括操作系统和应用程序。消费者不管理或控制任何云计算基础设施,但能控制操作系统的选择、存储空间、部署的应用,也有可能获得有限制的网络组件(例如路由器、,防火墙,、负载均衡器等)的控制。

4.CaaS

CaaS是Communications-as-a-Service缩写,意思是通讯即服务。CaaS是将传统电信的能力如消息、语音、视频、会议、通信协同等封装成API(Application Programming Interface,应用软件编程接口)或者SDK(Software Development Kit,软件开发工具包)通过互联网对外开放,提供给第三方(企业、SME、垂直行业、CP/SP以及个人开发者等等)使用,将电信能力真正作为服务对外提供。

 

Docker 1.5

docker出现并不是为了取代某个iaas provider。

docker容器里面nmon和物理机上nmon采集数据都是基于物理机。

loadrunner 50vu都压不上去,Send-Q排队比较严重。

docker的cpushare是基于物理机的cpu权重,和KVM的资源限制其实有很大差异。

如何明确限定docker的资源?

 

OpenStack和CloudStack的对比研究报告.pdf

http://www.hengtianyun.com/download-show-id-8.html

http://dl.iteye.com/topics/download/729ffda8-25d7-3f0e-a88f-524b27da1243

 

OpenStack 私有云系统目前用于jira等各种内部云应用

CloundStack 公有云 SIT环境基于KVM

CloundStack 公有云 PRD环境基于VMware

 

3)平台整体比较

    OpenStack和CloudStack的功能对比如表1所示,我们从授权协议、支持的底层技术和用户群等不同方面对两者进行了比较。

 

OpenStack

CloudStack

授权协议

Apache 2.0,可以免费商用

Apache 2.0,可以免费商用

虚拟化技术

XenServer/XCP,KVM,QEMU
LXC,VMware ESXi/vCenter,Hyper-V Baremetal,Docker,Xen/Libvirt

XenServer,KVM,QEMU,
VMware vCenter ,LXC

网络服务

VLAN,Flat,FlatDHCP
Quantum
虚拟化网络

VLAN,Flat,OpenFlow

存储支持

iSCSI,Ceph,NFS,LVM,Swift,Sheepdog

NFS,LVM,Ceph,Swift

调度策略

模型全面,易扩展

模型简单,可扩展

用户界面

功能完善,界面简单

功能完善,界面友好

数据库

PostgreSQL,MySQL,SQLite

MySQL

虚拟机模板

支持

支持

组件

Nova,Glance,Keystone,
Horizon,Swift,Cinder,
Quantum,Heat,Ceilometer

Console Proxy VM,
Second Storage VM,
Virtual Router VM,
Host Agent,Management Server

开发主导

开源社区

Citrix公司

开发语言

Python

Java

官方文档

非常详细

详细

版本问题

存在版本兼容性问题

不存在版本兼容性问题

用户群

160家左右,包括NASA、
RedHat、Rackspace、HP、
网易、UnitedStack等

不到60家,包括诺基亚、
日本电话电报公司、Zynga、
阿尔卡特、迪斯尼等

表1、OpenStack与CloudStack 比较

 

OpenStack

http://www.oschina.net/p/openstack

OpenStack 是一个旨在为公共及私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人都将OpenStack作为基础设施即服务(简称IaaS)资源的通用前端。OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家利用OpenStack前端来设置及管理自己的公共云或私有云。

OpenStack 源码在 Git@OSC 上的镜像:http://git.oschina.net/openstack

OpenStack是IaaS(基础设施即服务)组件,让任何人都可以自行建立和提供云端运算服务。

project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack_第1张图片

project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack_第2张图片

 

 

 

 

 

CloundStack

http://www.oschina.net/p/cloudstack

 

CloudStack是一个开源云计算解决方案。可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。使用CloudStack作为基础,数据中心操作者可以快速方便的通过现存基础架构创建云服务。

project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack_第3张图片

 

 

SaltStack

http://runpanda.iteye.com/blog/2159841

【基本介绍】 
这里介绍saltstack的作用与定位。 

【简单介绍】 
saltstack是什么? 
它是用python写的,对设备轻量级,通讯层使用0MQ(http://www.zeromq.org ),并且是开源的,遵守Apache2(http://www.apache.org/licenses/LICENSE-2.0 )开源协议,拥有开源社区。 

saltstack能用来做什么? 
1.远程执行 2.指令配置存储 
当你有数十台,甚至上百台服务器的时候,需要对每一台服务器修改同一个配置文件的时候,我们该如何抉择呢,一台一台登入修改,还是一下针对所有做修改。效率明显不同。salt远程执行就可以实现对服务器集群的同步操作。 
相同的操作可以以配置文件的形式保存下来,这样以后对其他服务器就可以执行相同的指令。 

 

自动化运维工具SaltStack详细部署

http://sofar.blog.51cto.com/353572/1596960/

==========================================================================================
一、基础介绍
==========================================================================================
1、简介
SaltStack是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,一般可以理解为简化版的puppet和加强版的func。SaltStack基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack和PyYAML等)构建。

 

通过部署SaltStack环境,我们可以在成千上万台服务器上做到批量执行命令,根据不同业务特性进行配置集中化管理、分发文件、采集服务器数据、操作系统基础及软件包管理等,SaltStack是运维人员提高工作效率、规范业务配置与操作的利器。

 

2、特性
(1)、部署简单、方便;
(2)、支持大部分UNIX/Linux及Windows环境;
(3)、主从集中化管理;
(4)、配置简单、功能强大、扩展性强;
(5)、主控端(master)和被控端(minion)基于证书认证,安全可靠;

(6)、支持API及自定义模块,可通过Python轻松扩展。

project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack_第4张图片

 

3、Master与Minion认证
(1)、minion在第一次启动时,会在/etc/salt/pki/minion/(该路径在/etc/salt/minion里面设置)下自动生成minion.pem(private key)和 minion.pub(public key),然后将 minion.pub发送给master。

(2)、master在接收到minion的public key后,通过salt-key命令accept minion public key,这样在master的/etc/salt/pki/master/minions下的将会存放以minion id命名的 public key,然后master就能对minion发送指令了。

 

4、Master与Minion的连接
(1)、SaltStack master启动后默认监听4505和4506两个端口。4505(publish_port)为saltstack的消息发布系统,4506(ret_port)为saltstack客户端与服务端通信的端口。如果使用lsof 查看4505端口,会发现所有的minion在4505端口持续保持在ESTABLISHED状态。

wKioL1Sf0JHwhBhaAAEsYS9e6HE690.jpg

 

(2)、minion与master之间的通信模式如下:

project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack_第5张图片

 

5、本次测试环境

IP地址

角色

系统环境

10.133.33.85

master

CentOS 6.3

10.130.87.151

minion

CentOS 6.3

 

==========================================================================================
二、SaltStack基础安装与配置
==========================================================================================
1、依赖组件说明
http://docs.saltstack.com/en/latest/topics/installation/index.html

project OpenStack / CloundStack / Iaas / Paas / Saas / CaaS / XaaS / SaltStack_第6张图片

SaltStack的通信模式总共分为2种模式:ZeroMQ、REAT,鉴于REAT目前还不是太稳定,我们选择ZeroMQ模式,本次安装采用源码安装的方式。

 

 

 

end

你可能感兴趣的:(openstack)