【ArchSummit架构师峰会】基于大模型的基础框架、中台、应用层等专题全覆盖 >>> 了解详情
写点什么

Netflix 开源持续交付平台 Spinnaker

  • 2015-11-18
  • 本文字数:1008 字

    阅读完需:约 3 分钟

日前,Netflix 开源了他们的持续交付平台 Spinnaker 。Spinnaker 是一个持续交付平台,它定位于将产品快速且持续的部署到多种云平台上。

6 年前,Netflix 率先将服务部署到了 AWS 上,为此,他们开发了一系列工具,其中一个基于 AWS 的自动部署平台: Asgard 。1 年前,Netflix 开始了 Spinnaker,以实现内部的端到端持续交付。作为 Asgard 的替代,该项目期望重建一个持续交付平台,能够实现

  • 通过灵活和可配置的管道实现可重复的自动部署
  • 提供一个所有环境的全局视图,一个应用程序可以看见自己的在所属管道中的状态
  • 通过一致且可靠的 API,提供可编程配置
  • 易于配置、维护和扩展
  • 兼容 Asgard 特性

同时,Spinnaker 作为云平台部署工具,Spinnaker 团队和 Google 、微软、Pivotal 等公司合作,致力于提供在多种平台上实现开箱即用的集群管理和部署功能。目前,Spinnaker 可以部署管理 AWS 和 Google 云平台(GCP),针对 Azure 等平台的支持也在进行中。

重要通知:接下来 InfoQ 将会选择性地将部分优秀内容首发在微信公众号中,欢迎关注 InfoQ 微信公众号第一时间阅读精品内容。

Spinnaker 主要包含 2 块内容,集群管理和部署管理。

集群管理功能,主要用于管理云上的资源。集群管理将云上资源做了逻辑划分:

  • 机器组:机器组是 Spinnaker 管理资源的单位。机器组标识了机器实例,并且关联了一个负载均衡器和安全组。每个机器组都拥有独立的配置信息(如机器帐号等);
  • 安全组:安全组定义了网络访问权限,也就是一般意义上的一组防火墙规则;
  • 负载均衡器:负载均衡器用于将网络流量重定向到机器组中的机器实例,负载均衡器还可以指定一系列规则,用于对机器组中的机器实例做健康检查;
  • 集群:集群是由用户定义的,对机器组的逻辑分组;

部署管理功能用于创建一个持续交付流程。部署管理的核心是管道,在 Spinnaker 的定义中,管道由一系列的阶段(stages)组成。管道可以由 Jenkins、定时器、其他管道或者人工触发。同时,管道可以配置参数和通知,可以在管道一些节点上发出消息。Spinnaker 已经内置了一些阶段,如执行自定义脚本、触发 Jenkins 任务等。

Spinnaker 的源码可以在 GitHub 上查看,参照文档即可从源码开始进行部署和试用。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-11-18 18:005488

评论

发布
暂无评论
发现更多内容

深入react源码看setState究竟做了什么?

flyzz177

React

深度讲解React Props

夏天的味道123

React

vue实战中的一些小技巧

yyds2026

Vue

数据中台的终点是DataOps还是DaaS?

雨果

数据中台 DataOps DaaS

华为云从入门到实战 | 云关系数据库备份、恢复及存储容灾服务

TiAmo

华为 华为云 11月月更

vue—render函数

格斗家不爱在外太空沉思

vue.js Vue 11月月更

vue的几个提效技巧

yyds2026

Vue

一文彻底读懂webpack常用配置

Geek_02d948

webpack

JS继承有哪些,你能否手写其中一两种呢?

helloworld1024fd

JavaScript

深度探讨react-hooks实现原理

xiaofeng

React

Laravel-文件上传下载

格斗家不爱在外太空沉思

php laravel 11月月更

vue实战-深入响应式数据原理

yyds2026

Vue

Vue-组件详解

格斗家不爱在外太空沉思

vue.js 组件化 11月月更

超级App们有一个共同的技术特点

Onegun

小程序容器 超级app 小程序化

一文读懂加密资产板块的盈利潜力与投资机会

西柚子

细说react源码中的合成事件

flyzz177

React

js函数柯里化-面试手写版

helloworld1024fd

JavaScript

深入分析React-Scheduler原理

xiaofeng

React

从源码角度看React-Hydrate原理

flyzz177

React

前端经常遇到的手写js题

helloworld1024fd

JavaScript

决策树-交叉验证

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

腾讯WeTest七年路,中国“质”造向未来

Geek_2d6073

Mac部署hadoop3(伪分布式)

程序员欣宸

大数据 hadoop 11月月更

经常被问到的react-router实现原理详解

夏天的味道123

React

敏捷开发模式下如何快速提升产品质量

敏捷开发

敏捷 敏捷开发 软件测试

百度前端二面常考手写面试题总结

helloworld1024fd

JavaScript

详细解读 React useCallback & useMemo

夏天的味道123

React

深度剖析React懒加载原理

xiaofeng

React

【C语言】auto 关键字

謓泽

11月月更

你需要知道的webpack高频面试题

Geek_02d948

webpack

webpack高级配置

Geek_02d948

webpack

Netflix开源持续交付平台Spinnaker_语言 & 开发_金灵杰_InfoQ精选文章