k8s专题[10.使用Spinnaker持续发布应用]
本节介绍如何使用spinnaker的持续发布k8s的应用
1.首先使用spinnaker创建一个nginxdemo 的应用,再在nginxdemo应用里面创建 Pipeline。进入nginxdemo 详情页面,点击 “PIPELINES”,目前是没有任何信息的,点击 “+ Create”,弹框中选择类型为 Pipeline,输入流程名称,这里我命名为 nginxdemo-pipe。因为第一次创建,下边 “Copy From” 选择没出来,后续在创建时,我们也可以通过 “Copy From” 方式选择已存在的 Pipeline,非常方便就复制了一个一样配置的流程。创建完毕后,就会出现详细配置 Pipeline State 的页面了
2.配置 Configuration 项
刚开始这里只有一个 Configuration 选项,可以配置 Automated Triggers、Parameters、Notifications 等,这里说下 Automated Triggers 和 Parameters 这两个非常有用,我们可以将此视为 Pipeline 启动前的一些初始化配置,比如启动需要的参数配置、自动触发配置等,为后续各阶段提供必要的信息。
Automated Triggers 自动触发,它提供 7 种类型的触发方式:
- CRON:调度触发,可以执行一个 cron 调度任务来定时任务触发该流程。
- Git:当执行 Git push 操作时,触发该流程
- Jenkins:监听 Jenkins 的某一个 Job
- Travis:监听 Travis 的某一个 Job
- Pipeline:监听另一个 Pipeline 执行
- Pub/Sub:当接受到 pubsub 消息时触发
- Docker Registry:当 image 更新时触发。
基本能满足我们日常持续集成或交付的需求,当然每一个类型都需要配置相应的参数,比如 Cron 类型,需要配置执行频率、启动时间等。下图我们选择Docker Registry作为触发类型