Google cloud platform 斯卡弗德vs斯宾纳克

Google cloud platform 斯卡弗德vs斯宾纳克,google-cloud-platform,continuous-delivery,spinnaker,skaffold,Google Cloud Platform,Continuous Delivery,Spinnaker,Skaffold,我已经了解了在GCP中实现连续交付管道的两种方法(可能更多): 斯卡弗德 Spinnaker+容器生成器 我在基克拉布斯和他们都有过一点合作。如果有人对两者都有实际的经验,你能分享一下他们的优缺点吗?你为什么选择一个而不是另一个 使用Skafold的管道(来自文档): 检测源代码更改 构建工件 测试工件 标记工件 呈现清单 部署清单 尾日志和转发端口 清理图像和资源 使用Spinnaker+Cloud Builder的管道: 开发商: 更改代码 创建git标记并推送到repo 集装

我已经了解了在GCP中实现连续交付管道的两种方法(可能更多):

  • 斯卡弗德
  • Spinnaker+容器生成器
我在基克拉布斯和他们都有过一点合作。如果有人对两者都有实际的经验,你能分享一下他们的优缺点吗?你为什么选择一个而不是另一个

使用Skafold的管道(来自文档):

  • 检测源代码更改
  • 构建工件
  • 测试工件
  • 标记工件
  • 呈现清单
  • 部署清单
  • 尾日志和转发端口
  • 清理图像和资源
使用Spinnaker+Cloud Builder的管道:

  • 开发商:
    • 更改代码
    • 创建git标记并推送到repo
  • 集装箱建造商:
    • 检测新的git标记
    • 建立码头工人形象
    • 运行单元测试
    • 推送Docker映像
  • Spinnaker(来自文档):
    • 检测新图像
    • 部署金丝雀
    • 切换手动批准
    • 部署产品(蓝色/绿色)
    • 拆金丝雀
    • 销毁旧产品

我不是这两种产品的真正超级用户,但我的理解是

  • Skaffold非常适合开发环境和开发人员(构建、测试、部署、调试、循环)
  • Spinnaker更加面向自动化平台的持续开发(CI/CD),这就是为什么您可以执行金丝雀和蓝色/绿色部署之类的东西,对开发阶段毫无用处

与Spinnaker相比,Skafold也面向Kubernetes环境,Spinnaker更不可知,可以部署到其他地方。

我不是这两种环境的真正超级用户,但我的理解是

  • Skaffold非常适合开发环境和开发人员(构建、测试、部署、调试、循环)
  • Spinnaker更加面向自动化平台的持续开发(CI/CD),这就是为什么您可以执行金丝雀和蓝色/绿色部署之类的东西,对开发阶段毫无用处

与Spinnaker相比,Skaffold还面向Kubernetes环境,Spinnaker更不可知,可以部署到其他地方。

Skaffold用于快速本地Kubernetes开发。Skaffold处理构建、推送和部署应用程序的工作流
这与spinnaker不同,spinnaker更倾向于CI/CD和完整的生产环境

Skaffold用于快速本地Kubernetes开发。Skaffold处理构建、推送和部署应用程序的工作流
这与spinnaker不同,spinnaker更倾向于CI/CD和完整的生产环境

这两个方面我都做过,根据我的经验,skaffold只适合本地开发测试,但是如果我们想扩展到生产、预生产用例,最好使用spinnaker管道。它(spinnaker)提供了比skaffold as先进的优势

  • 复杂/复杂的部署策略:您可以定义部署 在服务2之前部署服务1等策略
  • 多群集部署:轻松的基于UI的部署可以配置为多个群集
  • 可视化:它提供了一个丰富的UI,可显示跨集群、区域、命名空间和云提供商的任何部署或pod的状态

根据我的经验,skaffold仅适用于本地开发测试,但如果我们想扩展到生产、预生产用例,最好使用spinnaker管道。它(spinnaker)提供了比skaffold as先进的优势

  • 复杂/复杂的部署策略:您可以定义部署 在服务2之前部署服务1等策略
  • 多群集部署:轻松的基于UI的部署可以配置为多个群集
  • 可视化:它提供了一个丰富的UI,可显示跨集群、区域、命名空间和云提供商的任何部署或pod的状态