ZStack是下一代开源的云计算IaaS(基础架构即服务)软件。它主要面向未来的智能数据中心,通过提供灵活完善的APIs来管理包括计算、存储和网络在内的数据中心资源。用户可以利用ZStack快速构建自己的智能云数据中心,也可以在稳定的ZStack之上搭建灵活的云应用场景,例如VDI(虚拟桌面基础架构)、PaaS(平台即服务)、SaaS(软件即服务)等。
上期5分钟和大家分享了ZStack的核心架构设计特点,本期重点介绍:ZStack 核心架构设计特点之可拓展性秘密武器2—无状态的服务。
前言
每一个ZStack服务都是无状态的,简单的开启一个富余的服务实例然后使之负载均衡,就能实现服务的高可用和可横向拓展;此外,ZStack把所有服务封装进一个称为管理节点的进程中,使得部署和管理服务变得尤其简单。
动机
在“ZStack的可拓展性秘密武器1:全异步架构”中,我们论述了异步的架构使得单一的ZStack管理节点足以承担大多数云的负载量;然而当用户想要去创建一个高可用的生产环境或处理非常大的并发工作负载,一个管理节点是不够的。解决方案是建立一个负载均衡的分布式系统,这种通过添加新节点来拓展整个系统的能力的方法被称为横向拓展。
问题
设计一个分布式系统不是一件简单的事情。一个分布式系统,特别是一个有状态的系统,必须处理一致性(consiste