newptone
深入理解Orchestration

Updated a year ago

Orchestration(编排)其实并算不上是一个新话题,早在运维工程师开始在服务器上维护应用的年代,编排就已经成为他们工作的一部分,一些崇尚解放自己的工程师们通过配置管理工具,通过脚本语言,通过虚拟化或容器技术,逐渐地将裸机管理,交换机配置,操作系统安装,应用配置,版本升级和回滚变成脚本化,自动化,流程化,然而多数工程师并没有意识到自己正在参与其中。在全云化数据中心的趋势来临,编排已经从专业的运维工程师手中独立出来,它正在演变成为一个面向开发工程师的产品/服务。

那么在云时代中,编排为什么可以成为一个服务?

若用最简洁的语言来概括的话,那就是:统一。

在云中,所有的物理资源通过云管理平台统一抽象为虚拟的资源池,并为使用人员提供统一的API接口。一个开发工程师可以通过统一的编排服务,创建出满足自己需要的计算,网络和存储资源,而无需关心底层硬件的实现,随后编排服务会按照给定的指令完成服务的安装和配置,而整个过程竟然没有运维工程师的参与!

不过,从目前来看,虽然各大云服务厂商和开源云软件都提供编排服务或者项目,但是对于广大群众喜闻乐见的一键部署,一键扩容等各种刚需来说,还是有一定差距的。本书的目的就是从最简单的Bash脚本实现简单的应用上线开始,到使用多种流行自动化运维工具来实现复杂的硬件和软件栈的编排工作,并探讨云计算环境下的编排服务所需要具备的能力和特性。

最后,也希望这个序是一个美好痛苦的开始。