网站首页 > 开源技术 正文
今天我给大家介绍的一款用于软件持续部署的产品,也是我工作经常使用的,
它由Netflix开发并在2015年开源,面向企业的多云持续交付系统, 它结合了一个强大而灵活的管道管理系统,并集成了主要的云提供商(AWS、 Google Cloud Platform、 Kubernetes),它旨在帮助开发团队更快速、更可靠地交付软件,并在Google的大力支持下继续发展。
下面介绍如何使用Spinnaker来部署一个java应用程序
第一步 创建应用
- 在Spinnaker 页面上点击 Create Application 按钮
- 在弹出来的窗口填写应用的信息
- 填好后点击 Create 按钮,将会看到下面的界面
想要修改刚刚创建的应用配置信息和删除应用,可以点击左侧导航 CONFIG 按钮进行操作即可。
第二步 创建并配置流水线
Spinnaker 中是以流水线的方式来描述和执行软件交付的流程和执行步骤,流水线(pipeline)是由一系列阶段(stage)组成的,每个阶段代表了一个特定的操作或任务,例如构建、测试、部署等。通过定义和配置流水线,可以实现自动化的持续部署流程。另外Spinnaker还提供直观的可视化界面,以通过拖拽、配置等方式轻松地定义和配置流水线。使用者可以在界面上添加、删除、调整各个阶段,以构建符合实际需求的持续部署流程。
- 创建流水线,在spinnaker中创建流水线非常简单,点击 Configure a new pipeline 即可创建
- 创建新的pipeline后就可以来配置流水线,一般情况一个服务对应创建一条pipeline,每一条pipeline都有若干个stage(阶段)组成,每个阶段Spinnaker都提供了页面来配置其行为,Spinnaker 内置了若干多常用的stage,使用的时候根据部署的需要进行简单的配置即可使用,下面创建一条简单的java服务的流水线:
- Configuration Stage:这个阶段主要是对pipeline 的配置,比如:参数配置、触发配置、消息通知配置等。
- Bake Stage: 点击 Add stage 按钮 ,进入页面后选择 type 为 Bake(Manifest),我在这里面用helm 来制作部署清单文件
- Deploy Stage : 点击 Add stage 按钮 ,进入页面后选择 type 为 Deploy(Manifest),在这个阶段会把上面 Bake 好的构建进行部署
第三步、执行流水线,进行部署操作
一旦在Spinnaker中创建了一条pipeline后,有两种方式触发pipeline的执行:
- 手动执行 : 直接点击 Start Manual Execution 按钮执行部署
在弹出来的窗口选择需要部署的Jenkins 构建,这里 Spinnaker 会列出Jenkins上所有构建成功的都会显示出来,然后点击 Run 按钮即可。
- 自动执行: 是通过 Jenkins,shell、webhook或者设置为其他的pipleline(执行之前后)后自动执行。在上面例子 Configuration Stage阶段中已经配置了Jenkins,Spinnaker会监听Jenkins,在Jenkins Job构建完成后,自动执行。
需要注意下,当Pipeline 是自动执行的时候,会显示 Trigger:enabled
当Pipeline 禁止自动执行的时候,会显示 Trigger:enabled
执行部署成功后,Spinnaker会显示本次部署的状态(成功、失败),以及部署的耗时情况
Spinnaker 中是通过流水线来配置软件交付的行为,除了基本的流水线配置外,还提供了丰富的高级功能,如:
- 并行阶段:可以同时进行多个任务,加速整个部署流程。
- 部署策略:支持滚动部署(Rolling Deployment)、蓝绿部署(Blue/Green Deployment)、金丝雀部署(Canary Deployment)。
- 人工审核:可以在流水线中引入人工干预,例如在关键步骤需要人工确认时,暂停流水线的执行等待审核人员进行操作。
- 定时触发:可以根据预定的时间或周期性地触发流水线的执行,实现定时发布等需求。
- 通知和报警:可以配置流水线在关键事件发生时发送通知或触发报警,比如部署失败或者部署成功后通知相关团队成员。
- 参数化配置:可以在流水线中定义和使用参数,以实现更灵活的流水线配置和执行
更多关于Spinnaker的使用方面的问题可以留言和私信我。
猜你喜欢
- 2024-10-18 血与泪的总结,使用Helm安装spinnaker到k8s集群
- 2024-10-18 管理需要大规模部署的微服务:您需要Spinnaker
- 2024-10-18 8. 玩转树莓派——使用Helm安装Spinnaker
- 2024-10-18 Spinnaker Support收购多布勒咨询公司
- 2024-10-18 澳洲拼写比赛9岁华裔女童夺冠:爱读小说勤练习
- 2024-10-18 85岁老太拒绝平凡退休生活,她尝试各种极限运动
- 2024-10-18 英老太拒绝平凡退休生活,丈夫死后1年,她尝试各种极限运动
- 2024-07-11 潜水表里的王者——青铜款(潜水表是什么)
- 2024-07-11 Spinnaker强化Kubernetes自动化部署,不再需要操作复杂Manifests
- 2024-07-11 Sipcam Agro在美国推出新款甜菜杀菌剂Miramar(甲基硫菌灵)和Spinnaker
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)