文档首页/ 应用管理与运维平台 ServiceStage/ 快速入门/ 使用ServiceStage托管微服务应用
更新时间:2024-12-16 GMT+08:00

使用ServiceStage托管微服务应用

应用管理与运维平台(ServiceStage)是面向企业的应用管理与运维平台,提供应用发布、部署、监控与运维等一站式解决方案。支持Java、Php、Python、Node.js、Docker、Tomcat技术栈。支持Apache ServiceComb Java Chassis(Java Chassis)、Spring Cloud等微服务应用,让企业应用上云更简单。

ServiceStage提供了环境管理功能,把相同VPC下的计算资源(如云容器引擎CCE、弹性云服务器ECS等)、网络资源(如弹性负载均衡ELB、弹性IP等)和中间件(如分布式缓存DCS、云数据库RDS、微服务引擎CSE等)组合为一个环境,部署应用时选择环境会自动加载包含的资源。

应用是一个功能相对完备的业务系统,由一个或多个特性相关的组件组成。

组件是组成应用的某个业务特性的实现,以代码或者软件包为载体,可独立部署运行。

针对组件,ServiceStage提供了启停、升级、回退、伸缩、查看日志、查看事件、设置访问方式、设置阈值告警等运维操作。

本例基于ServiceComb(SpringMVC)框架,基于源码快速创建微服务应用,供您体验ServiceStage的功能。

ServiceStage基于GitHub提供了一些不同语言的demo。体验特定语言demo在ServiceStage中的源码部署功能,请参考如何体验ServiceStage的源码部署功能?

使用流程

使用ServiceStage的托管微服务应用的流程及说明,请参考图1

图1 ServiceStage使用流程

前提条件

  1. 注册华为账号并开通华为云
  2. 当前登录账号拥有使用ServiceStage服务的权限。账号权限授权与绑定,请参考创建用户并授权使用ServiceStage
  1. 创建一个虚拟私有云VPC,请参考创建虚拟私有云和子网
  2. 创建一个CCE集群,请参考购买集群
    • CCE集群所在VPC为3所创建的VPC。
    • 集群中至少包含一个ECS节点(为方便后续步骤的操作,节点规格最好选择4vCPUs、8GB内存)并且绑定弹性IP。为CCE集群添加节点,请参考创建节点
    • CCE集群不能被其他环境绑定。

注册GitHub账号并复刻Demo源码

  1. 注册GitHub账号
  2. 登录GitHub
  3. 导航到Demo源码仓库
  4. 复刻Demo源码仓库到个人账号下,请参考复刻仓库

创建仓库授权

  1. 使用已注册的华为云账号登录ServiceStage控制台
  2. 在区域列表选择您准备使用ServiceStage的区域(例如:亚太-新加坡)。

    图2 登录ServiceStage控制台

  3. 选择持续交付 > 仓库授权
  4. 单击“新建授权”,进入创建仓库授权页面。
  5. “授权名称”保持默认。
  6. 设置“仓库授权”

    1. 选择“GitHub”仓库。
    2. “授权方式”选择“OAuth”
    3. 单击“使用OAuth授权”
    4. 阅读了解服务声明后,勾选“我已知晓本服务的源码构建功能收集上述信息,并同意授权对其的收集、使用行为。”
    5. 单击“确定”
    6. 输入您的GitHub账号及密码登录GitHub完成身份认证,等待授权完成。

  7. 单击“确认”,在仓库授权列表可以查看到已经创建完成的授权。

    图3 仓库授权

创建组织

  1. 选择“部署源管理 > 组织管理”。
  2. 单击“创建组织”,在弹出的页面中填写“组织名称”(例如:ss-org)。
  3. 单击“确定”。

创建微服务引擎专享版

如果引擎创建账号的权限为创建引擎的最小权限,如CSE细粒度权限依赖说明中的“cse:engine:create”所示。则需要由主账号为其预置VPC默认安全组cse-engine-default-sg,请参考创建微服务引擎

  1. 选择微服务引擎 > 引擎实例
  2. 单击“购买微服务引擎”,参考下表设置引擎配置参数。

    参数

    参数说明

    计费模式

    选择“按需计费”

    企业项目

    默认选择default。

    企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。

    开通企业项目后可以使用。

    规格

    保持默认。

    引擎类型

    选择“集群”

    微服务引擎名称

    设置微服务引擎名称(例如:cse-test)。

    可用区

    为微服务引擎选择1个可用区。

    网络

    为微服务引擎选择前提条件中已经创建的虚拟私有云及其子网,可以为您的引擎构建隔离的、自主配置和管理的虚拟网络环境。

    安全认证

    选择“关闭安全认证”

  3. 单击“立即购买”
  4. 确认引擎配置无误后,单击“提交”

    微服务引擎创建完成,大约需要31分钟。微服务引擎创建成功后,“状态”为“可用”。

    图4 创建微服务引擎

创建环境

  1. 选择“环境管理 > 创建环境”,参照下表设置必要环境参数,其余参数保持默认。

    参数

    参数说明

    环境名称

    输入环境名称(例如:env-test)。

    企业项目

    默认选择default。

    企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。

    开通企业项目后可以使用。

    环境类型

    选择“Kubernetes”

    高可用环境

    选择“否”

    虚拟私有云(VPC)

    选择前提条件中已准备好的虚拟私有云VPC。

    说明:

    环境创建完成后,不支持修改VPC。

    配置模式

    选择“纳管资源”

    图5 创建环境

  2. 单击“立即创建”,进入环境“概览”页面。
  3. 选择“计算”资源类型下的“云容器引擎 CCE”,单击“立即绑定”
  4. 在弹出的对话框中,选择前提条件中已创建的CCE集群资源,单击“确定”
  5. 选择“中间件”资源类型下的“ServiceComb引擎”,单击“纳管资源”
  6. 在弹出的对话框中,选择创建微服务引擎专享版时创建的ServiceComb引擎资源,单击“确定”

创建应用

  1. 单击左上角,返回“环境管理”页面。

    图6 返回“环境管理”页面

  2. 选择“应用管理 > 创建应用”,参考下表设置应用基本信息,其余参数保持默认。

    参数

    参数说明

    应用名称

    输入应用名称(例如:servicecomb)。

    企业项目

    默认选择default。

    企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。

    开通企业项目后可以使用。

  3. 单击“确定”,完成应用创建。

    图7 创建应用

创建并部署组件

  1. 单击创建应用时创建的应用名称(例如:servicecomb)所在“操作”“新增组件”,进入“创建组件”页面。

    图8 进入“创建组件”页面

  2. “基本信息”区域,参考下表设置必填组件基本信息,其余参数保持默认。

    参数

    说明

    组件名称

    输入组件名称(例如:java-test)。

    组件版本

    输入1.0.0。

    所属应用

    选择创建应用时创建的应用(例如:servicecomb)。

    所属环境

    选择创建环境时创建的环境(例如:env-test)。

    命名空间

    选择default命名空间,用于隔离组件实例。

    图9 设置组件基本信息

  3. “组件包”区域,设置如下组件包必填参数,其余参数保持默认。

    1. “技术栈”选择“Java”
    2. “源码/软件包”选择“源码仓库”
    3. 选择“GitHub”源码仓库。
    4. “授权信息”选择创建仓库授权时创建的仓库授权名称。
    5. “用户名/组织”选择注册GitHub账号并复刻Demo源码时创建的GitHub账号。
    6. “仓库名称”选择注册GitHub账号并复刻Demo源码时复刻的Demo源码仓库名称“ServiceComb-SpringMVC”
    7. “分支”选择“master”
    图10 设置组件来源

  4. “构建”区域,参考下表设置必填构建参数,其余参数保持默认。

    参数

    说明

    组织

    选择创建组织时创建的组织的名称(例如:ss-org)。

    组织用于管理组件构建生成的镜像。

    构建环境

    选择“使用当前环境构建”,使用组件所属的部署环境中的CCE集群进行镜像构建。

    当前环境CCE集群的master节点和node节点的CPU架构必须保持一致,否则会导致组件构建失败。

    命名空间

    选择default命名空间,用于隔离构建数据。

    图11 设置构建参数

  5. 单击“下一步”
  6. “资源”区域,参考下表设置参数。

    参数

    说明

    资源需求

    取消勾选“CPU配额”“内存配额”,表示不限制资源需求。

    实例数

    设置为1。

    图12 设置组件实例“资源”参数

  7. 绑定微服务引擎。

    1. 选择云服务配置 > 微服务引擎
    2. 单击“绑定微服务引擎”
    3. 选择当前环境下已纳管的ServiceComb引擎专享版。
    4. 单击“确定”
    图13 绑定微服务引擎

  8. 单击“创建并部署”,等待组件部署完成。

    图14 组件部署成功

确认部署结果

  1. 单击左上角,返回“组件管理”页面。

    图15 返回“组件管理”页面

  2. 选择微服务引擎 > 微服务目录
  3. 在微服务引擎下拉列表选择创建环境时纳管的微服务引擎。

  4. 在“微服务列表”页签的“全部应用”下拉列表中选择springmvc应用。

    如果存在已部署的servicecombspringmvc微服务,且微服务实例数为1,则表示组件实例成功接入微服务引擎。

    图16 确认部署结果

访问应用

  1. 单击“应用管理”,进入应用列表。
  2. 单击创建应用时创建的应用名称(例如:servicecomb),进入“应用概览”页。
  3. 在“组件列表”区域,单击创建并部署组件时创建的组件名称(例如:java-test),进入组件“概览”页。
  4. 单击“访问方式”。
  5. 单击“TCP/UDP路由配置”区域的“添加服务”,参考下表设置参数。

    参数

    参数说明

    服务名称

    使用默认。

    访问方式

    选择“公网访问”。

    访问类型

    选择“弹性IP”。

    服务亲和

    保持默认。

    端口映射

    1. 协议:选择“TCP”
    2. 容器端口:输入8080。
    3. 访问端口:选择“自动生成”
    图17 添加访问方式

  6. 单击“确定”,生成访问地址。

    图18 生成访问地址

  7. 单击图18所示“访问地址”列下的访问地址,访问应用。

    返回如下结果:
    {"message":"Not Found"}

  8. 在浏览器地址栏输入http://6生成的访问地址/rest/helloworld?name=ServiceStage,再次访问应用。

    可以返回如下结果:

    "ServiceStage"