cinder

OpenStack RPC Queues

说明

文本分析的 OpenStack 版本为 Kilo (2015.1.0),不过社区关于 RPC 架构的设计十分经典,在四年多的时间内基本没有变化,所以有必要在此记录。

表格有四列:

  • Exchange: 队列的 Exchange,后缀是 fanout 的 Exchange 为 fanout 类型;标记(topic)的为 topic 类型。
  • Queue: 队列的名字。
  • Routing Key: 队列的 Routing Key,一般和队列名一样。但是 fanout 的 routing key 比较特殊,为去掉 fanout_{uuid} 后的字符串。
  • Service: 申明此队列的服务,一般是
查看详细

OpenStack Todo List

OpenStack 做为开源的 IaaS 服务,从 2010 年到 2015 年,已经走过了 5 个年头,我们看到了开源的力量,全世界各大 IT 巨头加入 OpenStack 生态系统,希望将 OpenStack 打造成云计算的 Linux。

开源意味着开放源码,但是有了源码不意味着有了一切。和任何开源项目一样,如果你想使用 OpenStack,虽有源码,可能还需要解决:二次开发,测试,打包,制定上/下线流程,容量规划,网络设计,部署架构设计,自动化运维……各种问题。… 查看详细

Openstack 市场调查总揽

本文记录了全球范围内OpenStack集群的规模,作为架构师,管理层人员技术分析的参考:

  • 沃尔玛 : 10 万核 (2015-02) link
  • CERN : 7000 个虚拟机(2014-07) link;3000 宿主机(2014-10) link
  • Mirantis: 1500 宿主机 link
  • eNovance:私有云支持超过 1,000 宿主机 link
  • Paylal: 8,500 宿主机link
  • Rackspace: 6 Region, 20,000 + 主机, 2,000+控制节点, Xen (2015)

市场调查结果

openstack 社区每年的峰会都会向各大厂商发布问卷,调查 openstack 的使用情况,包括用途、架构、配置管理、数据库等等。每年的调查数据很好的展现了… 查看详细

OpenStack API 通用扩展方法

OpenStack是开源的IaaS解决方案,完全由python实现,由apache协议发行,被称为云计算界的Linux。

由于需要适应不同企业的需求,一个灵活可扩展的架构尤其重要,其中API扩展性更是重中之重。
OpenStack内组件繁多,架构也各有不同,本文介绍OpenStack项目中通用的API架构,主要参考组件为Nova,Cinder,Glance,并且介绍API的扩展方法。同时本文描述的架构也十分有利于理解其他组件的API实现。… 查看详细

Nova配置高可用RabbitMQ

概述

Havana的nova已经支持使用RabbitMQ的高可用队列。此文章介绍高可用队列的特点,如何配置nova使用高可用队列,及测试结果。

高可用队列

RabbitMQ的高可用首先要用到集群模式(Cluster),在集群中的所有RabbitMQ实例互相感知对方的存在。RabbitMQ的高可用为Active/Active模式,多个RabbitMQ实例相互之间做镜像,即一条消息发给任意一个RabbitMQ实例后,RabbitMQ会负责将此消息同步到集群中的所有节点。如此RabbitMQ的客户端可以有两种使用方式:一种在RabbitMQ前部署Haproxy,向客户端隐藏集群的具体地址。另一种直接由客户端选择任意一个RabbitMQ实例连接,如果发生连接中断则选择另外一个MQ实例。… 查看详细