本文是云帮系列文章的第三篇,前两篇分别介绍了云帮的设计思想和技术架构,您能够点击链接访问先前发布的文档。网络
云帮包含了不少功能组件,本篇文章针对 核心组件 加以介绍。架构
云帮支持2种类型的自动构建:app
源代码构建分布式
Dockerfile构建ide
两种构建方式分别走2套构建流程,其中Dockerfile的构建流程与Docker官方构建镜像的步骤一致。这里再也不赘述,我们重点介绍基于源代码的自动构建。性能
源代码构建背后的理论是:代码即环境 ,什么类型的代码从根本上来讲已经决定了它的环境,好比说 PHP代码,已经决定它的环境是WebServer+PHP,而不该该是Python的环境。代码即环境实际上就是在这个基础之上在代码中添加一些环境的标示而已,当源代码提交到平台后,平台的自动构建程序检测环境描述文件,而后根据需求自动构建环境。ui
应用引擎是好雨自主研发的分布式,多数据中心的应用管理引擎。其主要功能不只衔接各个功能组件,并且还实现了原生高可用、性能分析、业务监控等诸多业界独创功能特性。spa
目前咱们为云帮设计了2套SDN组件,分别是基于Calico的三层网络组件和基于OVS本身研发的一套二层网络组件——GoodNet。他们所实现的目的是同样的:设计
为了隔离租户间的网络路由
保证同租户不一样宿主机之间的网络能够互通。
不一样之处在于网络组件的应用场景:
Calico 适用于私有云
Goodnet适用于公有云
同一租户下的容器经过统一的租户路由器上链到Provider Router,经过Provider Router作外网路由集中转发,而且租户路由器上是在宿主机上虚拟出一个路由器,同一租户下的容器互统统过租户路由器作gre/vxlan封装和转发。
云帮对接私有Git代码仓库