Flow 提供了 Kubernetes 镜像升级任务,支持用户对集群中的已有应用进行镜像升级。
前提条件
请确保已经在阿里云的ACK集群或者自定义K8s集群上部署了应用镜像服务,有关在流水线上部署ACK集群镜像应用,可以参见Node.js 应用构建并部署到 ACK 集群。
添加镜像升级任务
在流水线Flow 控制台,选择目标流水线,添加Kubernetes 镜像升级任务。
镜像升级任务部署配置
在目标流水线任务步骤中,配置Kubernetes 镜像升级任务。
参数
说明
步骤名称
自定义步骤名称。
集群连接
使用集群连接,连接到自定义Kubernetes或者阿里云容器服务集群,如果第一次使用可以新建连接,详情可参见Kubernetes 服务连接。
Kubectl版本
Kubectl 版本为当前步骤中使用的kubectl客户端版本。请选择与集群适配的Kubectl版本,详情可参见Kubernetes版本概览及机制。
命名空间
选择Kubernetes集群中目标自定义命名空间或者默认命名空间,详情可参见管理命名空间与配额。
Workloads 类型
选择您要升级的Workloads(工作负载)类型。它是Kubernetes集群中的资源对象类型,详情可参见工作负载类型。
Workloads 名称
选择您要升级的Workloads(工作负载)名称。就是上一个参数选择的资源对象类型目标资源对象自定义名称。
容器名称
Kubernetes中一个Pod可能包含多个容器,这里需要指定升级的容器名称,详情可参见管理容器组(Pod)。
镜像
选择上游任务步骤中镜像构建仓库地址,详情可参见ACR个人版实例。
说明注意事项:
kubectl版本建议不低于服务端版本。
k8s的命名空间确保正确。
Workloads类型默认为Deployment,如果是其他类型如StatefulSet,记得修改。
Workloads的名称和容器名称必须与实际运行的一致。
镜像有两种方式输入:1. 从前序构建产物中选择;2. 直接输入镜像地址。注意:如果选择不到镜像,请检查前序是否有镜像构建并上传的步骤;另外需注意镜像地址可能有多个,如公网地址和VPC地址,请确保k8s能拉取到对应的地址。
保存并运行流水线。
查看日志和发布单详细信息。
查看应用镜像升级前后的POD容器输出日志结果。
升级前
升级之后