全部产品
云市场

部署 Swarm 集群应用(镜像)

更新时间:2019-09-16 15:47:51

在 EDAS 中,Swarm 集群应用是特指在 Swarm 集群内创建的应用。Swarm 集群支持 Docker 镜像、WAR包或 JAR 包部署的应用。一个 ECS 可以部署多个运行在不同的 Docker 容器中的应用。发布 Swarm 集群应用是指在 ECS 实例上的 Docker 中安装 EDAS container,然后将应用通过 WAR 包、JAR 包或镜像部署到 EDAS container 中。

本文档将指导您在 EDAS 控制台来创建并用镜像来部署更新和查看管理一个 Swarm 集群应用。

通过此文档,将了解如何:

  • 创建 Swarm 集群应用
  • 部署 Swarm 集群应用
  • 更新应用
  • 验证已发布应用
  • 管理应用

前提准备

完成本教程中的步骤需要完成以下前提任务:

  1. 开通 EDAS 服务
  2. 创建 VPC
  3. 创建 ECS 实例
  4. 创建命名空间
  5. 已有 Swarm 集群
  6. 创建镜像
  7. 同步 SLB 到 EDAS:仅当你需要配置负载均衡时需完成该配置。

创建 Swarm 集群应用

  1. 登录 EDAS 控制台

  2. 在左侧导航栏中单击应用管理,进入应用列表页面。

  3. 在应用列表页面选择地域(Region)和命名空间(可选),然后在右上角单击创建应用

  4. 应用基本信息页面中设置应用的基本信息和参数,然后单击下一步:应用配置

    说明:设置完应用基本信息后,您也可以单击创建空应用,然后进入应用管理页面通过应用扩容添加实例部署应用进行发布。

    创建 Docker 应用-基本信息

    • 命名空间:在左侧下拉选择框选择地域;在右侧下拉选择框选择命名空间,如果不做选择命名空间则设置为默认
    • 集群类型:在左侧下拉列表中选择集群类型为 Swarm 集群,在右侧下拉列表选择一个具体的 Swarm 集群。
    • 应用名称:输入应用名称。
    • 应用部署方式:选择 Swarm 集群后,您可以选择镜像WAR 包部署JAR 包部署。此处选择镜像
    • 应用运行环境:选择应用运行环境,例如 EDAS-Container 3.5.1 [支持FatJar部署]
    • Java 环境:选择 Open JDK 8Open JDK 7
    • CPU 规格:设置 CPU 规格。如果您的 Swarm 集群设置了 CPU 共享比例为 1:2 或 1:4,则此处规则默认为共享模式;如果创建时未设置 CPU 共享比例 或设置 CPU 共享比例为 1:1,则此处您可以手动设置 CPU 规格。
    • 规格:设置内存规格。
    • 应用描述:填写应用的基本情况,输入的描述信息不超过 128 个字符。
  5. 应用配置页面,添加实例个数选定实例列表,按照页面指示进行配置。完成设置后单击确认创建

    • 请选择实例个数:在右侧微调输入框内设置实例个数,实例个数由您所选择集群内的实例数决定。
      • 如果没有设置实例个数(默认为 0),单击创建空应用,可以创建一个空应用。后续再通过应用扩容进行实例的添加,通过部署应用完成应用部署。
      • 如果设置了大于 0 的实例个数,未对应用进行部署即单击确认创建,可以创建一个包含实例的空应用。之后可通过部署应用完成应用部署。
    • 选定实例列表:在选择好实例个数后,此处会自动选定好实例。

    • 是否立即部署:选择实例后才可点击打开。点击打开后按照界面进行配置。

      docker-image-develop

    • 配置镜像:选择镜像仓库,然后在镜像仓库右侧的下拉列表中选择具体镜像,选择完成后会在配置镜像右侧显示您所选择的镜像。

    • 应用健康检查(可选):设置应用健康检查的 URL。应用的健康会在容器启动后/运行时检查应用的状态是否正常,会根据应用的健康检查结果来执行服务路由。设置参考示例为 http://127.0.0.1:8080/_etc.html

    • 环境变量(可选):展开环境变量。配置变量名变量值。单击添加,可以设置多个环境变量。

    说明:如果未勾选是否立即部署,在应用创建完成后,在应用详情页单击部署应用,也可以完成应用的部署。

  6. 应用创建可能需要几分钟,请您耐心等待。创建完成后可以前往应用详情页查看应用的基本信息和实例部署信息,在应用详情页中实例部署信息页签查看实例的运行状态,如果运行状态/时间为正常运行,说明应用发布成功。

部署应用和更新应用

如果在创建应用时只创建了一个空应用,则可以在应用详情页单击部署应用进行发布,如果在创建应用时已完成部署,则可通过部署应用来更新应用。

  1. 登录 EDAS 控制台

  2. 在左侧导航栏中单击应用管理,在应用列表页面单击具体应用名称,进入基本信息页面。

  3. 单击部署应用,根据界面指示配置部署参数并单击发布。如果已部署过该应用,则文件上传方式可选方式由第一次部署的方法决定。(下面以镜像部署应用示例说明。)

    docker-image-develop-edas console

    • 应用部署方式
      • 全新部署的应用:您可选择镜像WAR 包部署JAR 包部署历史版本来进行部署。
      • 部署升级的应用:部署方式会根据您第一次部署的方式决定,选择您想重新部署的方式。
    • Docker 镜像地址:此处会生成一个默认 Docker 镜像地址,不可设置。
    • 请填写版本:设置版本(如:1.2.0),建议不用时间戳作为版本号。
    • 分组:选择分组。
    • 镜像所属地域:选择镜像所存在的地域。
    • 镜像:在右侧下拉框内选择镜像仓库和用来部署的镜像。
    • 镜像版本:选择镜像的版本。
    • 批次:设置批次,如果选择2次以上的批次,需要设置分批时间
    • 分批方式:选择自动。
    • 应用描述(可选):描述可以为空,描述此次发布的目的。限制在128字符以内。
    • 环境变量(可选):参考如何设置环境变量进行设置。
  4. 应用在重新部署后,会跳转到变更详情页面,查看部署流程和执行日志。部署流程执行完成后,执行状态变为执行成功则表示部署成功。

验证应用发布结果

应用发布后,你可以通过查看实例运行状态或登录负载均衡配置网址来验证应用已成功发布。

查看应用实例运行状态

在应用详情页中实例部署信息页签查看实例的运行状态。如果运行状态/时间为运行正常,说明应用发布成功。

配置公网负载均衡并访问应用

由于是在专有网络内创建发布的应用,如果没有特别配置,该应用没有公网 IP 地址。如果您的应用部署在多个 ECS 实例上,并且希望将您的应用对外开放,建议您配置公网负载均衡,以便将应用的访问流量根据转发策略分发到 ECS 实例中,增强应用的服务能力,提升应用的可用性。

  1. 在基本信息页面的应用设置区域,点击负载均衡(公网)右侧的添加

  2. 添加 SLB 与应用的绑定对话框中,设置负载均衡参数,然后点击配置负载均衡完成配置。

    配置负载均衡

    • 负载均衡(公网):在右侧的下拉菜单中,根据实际需求,选择内网或公网的 SLB 地址。
    • 使用虚拟服务器组:虚拟服务器组是一组处理负载均衡分发的前端请求的 ECS 实例。不同的监听可以关联不同的虚拟服务器组,实现监听维度的请求转发。如果您勾选了使用虚拟服务器组,则需要配置虚拟服务器组参数。
    • 虚拟服务器组名称:如果您选择了新建虚拟服务器组,则需要在此处输入虚拟服务器组名称。系统会按照您输入的名称为您创建虚拟服务器组。
    • 监听(外网):负载均衡服务监听规定了如何将请求转发给后端服务器。一个负载均衡实例至少添加一个监听。您可以在监听右侧的下拉菜单中选择已创建的监听端口。如果您没有创建监听,单击创建新监听。请勿在服务均衡管理控制台上删除该监听,否则将影响应用访问。
    • SLB 前端协议:默认为 TCP,不可配置。
    • SLB 前端端口:输入 SLB 的前端端口,可自行设置端口数值。
    • 应用端口:默认为 8080,不可配置。
  3. 复制配置的 SLB IP 及端口,如 118.31.159.169:81,在浏览器的地址中粘贴并回车,即可进入应用的欢迎页面。

    应用欢迎页面

管理 Swarm 集群应用

  1. 登录 EDAS 控制台

  2. 在左侧导航栏中单击应用管理,在应用列表页面单击具体 Swarm 集群应用名称,进入基本信息页面。

  3. 在该页面可以执行基本的管理任务,例如浏览、设置、停止、启动、扩容、回滚和删除。

    管理 Docker 应用