国内公有云对比

经过比较,不难发现目前国内的公有云厂商分成两个路线,分别是IaaS和PaaS。IaaS以AWS为标杆,PaaS以GAE为标杆。新浪、百度目 前以PaaS为主,腾讯、阿里、青云目前以IaaS为主。从长线来看,除了青云之外,其他所有厂商都会走向IaaS+PaaS的混合模式

 

下面,我就对IaaS和PaaS领域内的公有云进行横向对比。同时,我也将AWS、GAE和Windows Azure加入对比。AWS、GAE和 Windows Azure中在短期内只有Windows Azure会进入国内。因为IBM也宣布了落地国内的计划,有人可能会问IBM的公有云是什么样,其实IBM的公有云有好几套方案,一个是现有IBM Smarter Cloud的公有云方案,由TSAM和Websphere Pure application这种厚重的企业软件构成,一个是上一篇介绍过的HSLT,还有一个…

详细内容

OpenStack Keystone Havana版本的新变化

在Grizzly中,Keystone有这些数据结构:users, groups, projects/tenants, roles, role assignments, domains
1,在Havana中,Keystone允许将projects, roles, role assignments数据存储在DB,而将users, groups数据分开存储到LDAP(使用Assignment Driver=keystone.assignment.backends.ldap.Assignment)。相关配置如下:
[identity]
driver = keystone.identity.backends.sql.Identity
[assignment]
driver = keystone.assignment.backends.sql.Assignment
2,同样,Havana也…

详细内容

OpenStack IPSec VPNaaS

今天想review一下社区IPSec VNPaaS Driver的代码,所以系统看了一下这背后的知识。笔记如下:

什么是VPN

VPN可以通过在L2或L3层建立一条逻辑链路让广域网上多个内网能够相互访问(我的理解,VPN除了让广域网的内网互通,还需要不同的用户tenant之间可用相同的内网地址,技术都是相通的,这样实际上它也就类似于Linux上的命名空间了在路由器上为每个用户有单独的路由)。有基于租用专用物理线路实现的(如帧中继和ATM,因为是专用线路,贵啊,但QoS好,对语音等对延迟敏感的数据流至关重要,可运行上层的IP,IPX, AppleTalk,IP多播多种协议);也有基于以太网的虚连接的实现方式(不是专用线路,灵活,数据通道不安全要结合如IPSec来保证).分类如下:

  • ATM和帧中继都是L2层VPN
  • GRE,L2TP,MPLS和IPSec属于L3层VPN技术

详细内容

Neutron 网络之负载均衡

负载均衡在G版落户Neutron以来经历了几次大的变化。G版中实现了API模型和一个Haproxy的参考实现,H版增加 了多个agent的调度和以服务的方式重构了代码。当然,由于服务链还没有在Neutron中完全实现,所以暂时还不能看到负载均衡作为一个网络服务如何 能动态地插入到虚拟机的网络路径中去。本博客试图展示Neutron负载均衡当前功能的使用过程以及少许介绍一下背后的原理。

网络规划

在“Neutron网络入门”中我们谈到过使用Neutron我们需要进行一些网络规划。这里我们讨论几种网络图:


OpenStack_Neutron

如上图所示,我们设计三种网络,负载均衡器网络中部署各种负载均衡设备,服务器网络中部署后台服器。访问者则在办公室网路中。 我们限制服务器只能被负载均衡器访问。在办公室网络中的用户只能通过负载均衡器访问服务器提供的服务。这里我们在服务器上安装的是tomcat, 监听在8080端口…

详细内容

小试iSCSI多路径

iscsi用于提供块存储,它也是c/s结构的程序,服务端叫target, 客户端叫initator。
服务端:
1,安装, sudo yum install scsi-target-utils
2,模拟一块块设备,注意,直接使用裸设备即可,不需要使用文件系统对其格式化
$ dd if=/dev/zero of=/bak/images/cinder-volume.img bs=1M count=2048
$ sudo losetup -f –show /bak/images/cinder-volume.img
/dev/loop0
3, 配置, iqn(iSCSI Qualified Name)格式是:“iqn”+“年月”+“.”+“域名的颠倒”+“:”+“设备的具体名称”
vi /etc/tgt/targets.conf
<target iqn.2013-10.c…

详细内容

使用Gentoo定制Linux

定制Linux有两种方法,一种是一切头从开始,准备工具链,准备根文件系统,chroot到这个根文件系统之后,再使用工具链在目标系统上安装软件包,最后再定制initrd和内核;还有一种方法是使用发行版的Linux,由于发行版的Linux已经是预安装了很多软件包的,我们可能并不需要这些软件包,或者对于一些新的架构的CPU,都会有定制Linux的需求。

于是,Gentoo腾空出世,正好满足这些需求,Gentoo也是一个发行版的Linux,但它没有为你安装任何软件包,只是一个最小系统,你想安装什么软件自己决定,所以也称Gentoo为Linux的元发行版,同时也省去了你准备工具链的麻烦。在安装软件包方面,它提供了一种广受美誉的ports系统Portage包管理系统在使用源码安装软件包时帮你解决依赖与简化工具链两大难题。所谓依赖,你可以把它想象成yum, yum是二进制文件分发的包管理系统,在安…

详细内容

Best localrc for devstack

I simply collected all my localrc files, Feel free to grab the parts that interest you.

1, my env variables

export OS_USERNAME=admin
export OS_PASSWORD=password
export OS_TENANT_NAME=demo
export OS_AUTH_URL=http://172.16.1.122:5000/v2.0
export OS_AUTH_STRATEGY=keystone

2, localrc file

# Common
DEST=/opt/stack
#OFFLINE=true
## the ip of ovs bridge br-phy is 172.16.1.122
HOST_IP=…

详细内容

如何学习OpenStack与精通OpenStack好书推荐

OpenStack的官方文档在开源世界里应该说做得还是很不错的,如果你只是想随便跑一下运行一下的话, 看看这些文档应该足够了。
但是如果它出问题了呢?由于还未真正懂OpenStack,可能你会感到:
一是解这个问题会很累;
二是经常性的没有思路,不知道如何下手;
三是花费的时间成本也不会少,会成十上百倍的大增;
四是下次遇到类似的问题可能依然不清楚,依然耽误时间;
五是由于未理解把不是问题的问题当成问题;
六是由于未理解也容易出方向性问题得不偿失;
七是一直看不到系统的全貌与本质始终在一个局部打转转,长时间处于恶性循环中;
八是同样没有真正理解给别人讲的时候也讲不明白,问个问题别人都不知道你在问什么耽误大家时间;

这样,无论对于公司还是对于你自己来说都是损失,不会有好效果,对于此类问题,笔者给出的药方就是系统性学习,没有捷径。
可能有人以为,系统性学习看起来在内功…

详细内容

OpenStack高可用 — 本地文件系统规划,Raid与LVM

OpenStack使用本地文件系统时的一种规划方案,对每一个计算节点来说:

1,硬盘1与硬盘2做一个Raid1,在上面划boot,root, swap分区。

2,硬盘3与硬盘4再做一个Raid1, 将它做为LVM的一个物理分区PP。

当然,究竟做什么级别的Raid需考虑实际硬盘个数情况和应用需求。

想到一个问题,用PXE的一些裸机工具自动安装操作时能自动创建Raid吗? 经google是可以做的,像dell的比如crowbar,具有:BIOS配置,RAID配置,网络搜寻,状态监控,性能数据收集,和报警. crowbar是开源了但不包括RAID配置功能,见:http://hi.baidu.com/chenshake/item/2343244d6cb66beea5c066f4, 不过,xCAT是支持的,见:http://sourceforge.net/apps/medi…

详细内容

DRBD块镜像 + Pacemaker心跳机制实现Active/Passive模式的高可用mysql集群

这个属于HA(高可用)的范畴。

对于高可用,一般得将应用区分为有状态和无状态:

1)对于无状态的服务,如nova-api, nova-conductor, glance-api, keystone-api, neutron-api, nova-schduler,这个简单了,因为无状态,在多个计算节点多启动几个这样的服务,然后前端在通过LB (such as HAProxy)加入VIP就行了。

2)对于有状态的服务,像horizon, db, mq之类。根据情况可以有Active/Passive和Active/Active的模式。

Active/Passive,一般作为standby的从节点的服务是不启动的,使用DRBD在主从节点之间做镜像然后再结合心跳heartbeat用pacemaker作切换。

Active/Active, 可用Galera,可同时对主从节…

详细内容