介绍
Spinnaker 是一个开源,多云持续交付平台,可帮助您快速而稳定地发布软件更改。Spinnaker 提供了两组核心的功能: 应用管理与应用程序部署。Spinnaker 应用程序对此概念进行了建模。应用程序、集群和服务器组是 Spinnaker 用来描述服务的关键概念。负载均衡器和防火墙描述了服务如何向用户公开。
Spinnaker 11 个微服务
- Desk: 前端web页面 端口9000
- Gate: API 网关,所有程序通过 gate 与 spinnaker 通信; 端口8084
- Orca: 编排引擎, 定义管道或任务,并管理阶段和任务,协调其他Spinnaker服务,端口8083
- Clouddriver: 云厂商适配器,负责对云厂商的变更资源调用, 端口7002
- 适配阿里、亚马逊、微软、华为、K8s
- Front50: 用于保存应用程序、管道、项目和通知的元数据,端口8080
- Rosco: 为各种运营供应商生成不可变的VM镜像, 端口8087
- Igor: 持续集成、系统集成,触发管道,端口8088
- Echo: 消息通知,负责发送通知,端口8089
- Fiat: 认证授权服务,端口7003
- Kayenta: 自动化的金丝雀分析,端口8090
- Halyard: Spinnaker 生命周期配置管理工具,端口8064
部署
比较复杂,参考:
https://github.com/zeyangli/spinnaker-cd-install
流水线配置部署
继承 Jenkins
1 | hal config ci jenkins enable # 开启CI |