本文以云效的示例代码源为例,介绍如何使用云效以JAR或WAR包的方式部署应用至EDAS的ECS集群。
前提条件
部署流程
- 如果您的应用已经部署在EDAS上,则无需创建新的应用。如果您是第一次部署应用到EDAS,则需要在EDAS控制台创建应用,以便云效将业务代码推送到该应用中。
- 在EDAS创建应用完成后,在云效上创建企业并进入流水线FLOW。
- 根据EDAS应用类型配置应用集成发布的流水线信息。
- 流水线配置完成后,运行流水线完成EDAS应用部署。
步骤一:在EDAS控制台创建应用
如果您未使用过EDAS创建应用,则需要预先在EDAS上创建应用,本文以在ECS集群中创建一个使用JAR包部署的Spring Cloud应用为例。相关操作,请参见在ECS集群中创建并部署应用。
重要 在EDAS控制台创建应用时使用的部署方式(JAR或WAR),必须与在云效的流水线设置保持一致。例如:在EDAS上使用JAR方式部署应用,那么在云效设置流水线时,构建环节必须是构建和上传JAR包相关的设置。
步骤二:在云效创建企业
如果您是第一次使用云效Flow,则需要在云效上创建您的企业。
- 登录云效Flow。
- 设置企业、组织或团队名称并选择使用规模,单击完成创建。
步骤三:在云效创建流水线
- 登录云效Flow。
- 在左侧导航栏,单击我的流水线,然后单击右上角的新建流水线。
- 在选择流水线模板对话框,选择其他 · 空模板,单击创建。
创建完成后,会跳转到添加流水线源的页面。
步骤四:配置流水线
- 在创建的流水线的阶段1区域单击空任务,在编辑面板,配置任务名称、构建集群、下载流水线源并添加任务步骤。
添加任务说明如下:
- 在任务步骤区域下,单击添加步骤,在下拉列表中选择 ,并配置该步骤参数。
参数 描述 步骤名称 输入您自定义的步骤名称。 JDK版本 在下拉列表中选择需要的Java版本。 Maven版本 在下拉列表中选择需要的Maven版本。 构建命令 自定义的构建命令。 - 单击添加步骤,在下拉列表中选择 ,并配置该步骤参数。
参数 描述 步骤名称 输入您自定义的步骤名称,不修改则显示为默认名称。 制品名称 自定义产出物名称,例如default,用于区分多次构建产生的不同产出物,定义后在部署任务中使用。 上传文件 设置项目文件所在的路径。
- 在任务步骤区域下,单击添加步骤,在下拉列表中选择 ,并配置该步骤参数。
- 在新阶段区域单击新的任务,在选择任务组面板的左侧导航栏单击部署,然后选择EDAS ECS 应用发布。
- 在编辑面板,配置任务信息。
配置的任务信息说明如下表所示。
参数名 说明 任务名称 自定义的任务名称。 构建集群 可为任务选择不同的构建集群。 下载流水线源 可为任务选择是否下载流水线源。开启下载流水线源后,您配置流水线源的源文件将会被下载至对应的工作目录下。 选择服务连接 选择任务连接的服务。如果没有服务连接,单击添加服务连接,根据界面提示,添加您需要的连接。选择任务的服务授权,使云效能在EDAS上部署应用。 说明 如果您从未授权过,新建服务连接时,请先在 服务授权/证书输入框后,单击 新建,根据跳转完成阿里云RAM授权后再进行相应配置。地域 请参见步骤一:在EDAS控制台创建应用,选择该步骤所创建应用所在的地域。 命名空间 选择所创建应用所在的命名空间。 应用 请参见步骤一:在EDAS控制台创建应用,选择该步骤所创建的应用。 软件包 选择步骤四:配置流水线中步骤1中构建物上传(EDAS/SAE使用)步骤所创建的产出物名称。 发布批次 选择批次数量来表示发布分批的数量。 分批等待时间 相邻发布批次之间的等待时间。 分批方式 可选择手动确认或自动确认。例如,如果您需在完成第一批发布时先观察发布结果再决定后续操作,则可选择手动确认。 (可选)任务插件 您可以根据需要配置任务插件来发送流水线通知。 - 钉钉机器人通知插件
- webhook地址:配置钉钉机器人的webhook地址,钉钉机器人的创建步骤请参见钉钉机器人配置。
- 运行时机:您可以选择任务插件发送通知的时机。
- 邮件通知
- 邮件地址:配置需要发送通知的邮件地址。
- 运行时机:您可以选择任务插件发送通知的时机。
- Webhook通知插件
- webhook地址:配置需要发送通知的webhook地址,地址必须公网可访问。
- 运行时机:您可以选择任务插件发送通知的时机。
- 钉钉机器人通知插件
- 配置完成后在页面右上角单击仅保存或保存并运行。
步骤五:在云效部署应用至EDAS
- 配置完流水线后,在流水线页面右上角单击保存并运行,然后在运行配置对话框中选择代码分支后单击运行。
本操作示例中创建的应用拥有2个实例,并在流水线中配置了分批发布和手动确认。故在 构建任务运行成功后,在 新阶段的发布任务中您可执行以下操作:
- 单击发布单详情:可跳转到EDAS控制台查看变更详情。
- 单击继续发布:可继续下一批的发布。
- 选择 :可终止本次流水线的运行。
- 选择 :可查看流水线的运行日志。
- 选择 :可取消本次任务运行。
- 单击继续发布,等待流水线执行完毕。
结果验证
云效显示部署成功后,登录EDAS控制台查看应用的变更记录,查看是否有与云效相关的部署应用的变更记录,如果有并显示执行成功则代表部署成功。
常见问题
- 如何使用云效以镜像方式部署应用至EDAS?
您可使用云效以镜像方式部署应用至EDAS的K8s集群,详情请参见使用云效2020进行持续集成和部署(K8s)。
- 除Java应用外,其他编程语言能否通过云效部署至EDAS?可以使用哪些部署方式部署?
除Java外的其他编程语言可以使用镜像部署方式,通过云效部署至EDAS。使用镜像部署时,请确保您应用代码中有包含应用的Dockerfile文件,操作部署请参见使用云效2020进行持续集成和部署(K8s)。
EDAS容器服务K8s和Serverless K8s交流群
如果您在EDAS中使用容器服务K8s集群和Serverless K8s集群过程中有任何疑问或建议,请使用钉钉搜索钉钉群号23197114加入钉钉群进行反馈。