文档首页 > > 快速入门> 快速体验 ServiceStage

快速体验 ServiceStage

分享
更新时间:2020/07/15 GMT+08:00

概述

ServiceStage新应用模型提供了环境管理功能,把相同VPC下的基础资源(如CCE集群、ECS等)加上可选资源(如ELB、RDS、DCS等)实例组合为一个环境,部署应用时选择环境会自动加载包含的资源。

应用是一个功能相对完备的业务系统,由一个或多个特性相关的组件组成。应用组件是组成应用的某个业务特性实现,以代码或者软件包为载体,可独立部署运行。

持续交付提供构建、代码检查等模块,用户可以简单快速创建流水线,用于自动完成归档,多个环境的部署/升级。

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

本例基于ServiceComb(SpringMVC)框架,快速创建微服务应用,供用户体验ServiceStage新应用模型功能。

前提条件

  1. 注册华为云账号,并登录成功。
  2. 创建一个虚拟私有网络VPC,请参考创建虚拟私有云和子网
  3. 创建一个CCE集群,集群中至少包含一个ECS节点(为方便后续步骤的操作,节点规格最好选择4U8G)并且绑定弹性IP,集群需要绑定弹性IP,请参考创建混合集群
  4. 本例基于ServiceStage绑定GitHub源码仓库,实现源码构建、归档、应用创建,需要先到GitHub官网注册账号。
  5. 在ServiceStage创建仓库授权,授权访问Github仓库,请参考仓库授权

创建环境

  1. 登录ServiceStage,选择“环境管理”,单击“创建环境”。
  2. 设置环境信息。

    1. “环境名称”输入:test-env。
    2. 选择已有虚拟私有网络VPC。
    3. 选择该VPC下的基础资源,本例使用CCE集群。
    4. 选择该VPC下可选资源,本例使用专业版微服务引擎。

    选定VPC后,会加载该VPC下的基础资源和可选资源供选择,不在该VPC下的资源无法选择。

    图1 创建环境

  3. 单击“立即创建”,完成环境创建。

新建应用

  1. 登录ServiceStage,选择“应用管理 > 应用列表”,单击“创建应用”。
  2. 设置应用基本信息。

    1. “应用名称”建议填写servicecomb。
    2. “企业项目”使用默认default(开通企业项目后才显示该参数)。
    图2 新建应用

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

新增组件

  1. 登录ServiceStage,选择“应用管理 > 应用列表”,单击servicecomb应用操作栏新增组件,如下图所示。

    图3 新增组件

  2. 组件类型选择“微服务”,单击“创建组件”。
  3. 设置组件基本信息

    1. “组件名称”建议填写java-test。
    2. “框架”选择:Java chassis。
    3. “运行时”选择:Java8。
    4. “源码/软件包”选择“模板”。
    5. “框架”选择:ServiceComb(SpringMVC)。
    6. “模板代码归档”选择GitHub。
    7. 设置授权信息,选择用户名,“仓库名称”选择mydemo。
    图4 组件基本信息

  4. 单击“立即创建”,创建静态组件。

部署组件

  1. 登录ServiceStage,选择“应用管理 > 应用列表”,选择已经创建的servicecomb应用,单击应用名称,进入应用详情页。
  2. 在组件列表选择已经创建的组件java-test,然后单击操作栏“部署”。

    图5 部署组件

  3. 设置基本配置

    1. 选择已经创建的环境test-env。
    2. 部署版本:1.0.0。
    3. 使用环境test-env中的CCE资源(自动加载)。
    4. 实例数量:2。
    5. 资源配置使用默认。
    图6 基本配置

  4. 单击“下一步”,进行组件配置。

    1. “镜像”:会加载已经配置的组件静态信息。
    2. 使用专业版微服务引擎。
    3. 其他参数使用默认配置。
    图7 组件配置

  5. 单击“下一步”,确认规格无误后,单击“部署”。

访问应用

  1. 登录ServiceStage,选择“应用管理 > 应用列表”,选择已经创建的servicecomb应用,单击应用名称,进入应用详情页。
  2. 在组件列表选择已经创建的组件java-test,单击组件名称,进入组件概览页,在对应环境卡片可以查看组件版本。

    图8 组件版本

  3. 状态为“运行中”的组件,单击“设置”,进入访问方式页,单击“添加服务”。

    1. 服务名称使用默认。
    2. 访问方式选择“公网访问”。
    3. 访问类型选择“弹性IP”。
    4. 容器端口输入8080。
    5. 访问端口使用“自动生成”。
    6. 单击“确定”。
    图9 添加服务

  4. 单击访问地址,访问应用。

    图10 访问地址
    返回如下结果:
    {"message":"Not Found"}

  5. 增加访问参数,再次访问:{访问地址}/rest/helloworld?name=ServiceStage,可以得到返回结果。

    "ServiceStage"

持续交付

业务代码有更新时,可以使用流水线一键完成拉取代码、构建、归档、部署升级等操作。

  1. 在servicecomb应用下创建另外一个组件(名称为java-pro),“源码/软件包”设置如下。

    “源码/软件包”选择“源码仓库”,设置GitHub授权、用户名/组织。

    “仓库名称”选择“mydemo”。

    “分支”选择“master“。

    图11 组件设置

  2. 部署组件,设置请参考部署组件,组件版本如下图所示。

    图12 java-pro版本

  3. 修改业务代码。

    进入GitHub mydemo源码仓库,修改业务代码。

    1. mydemo/src/main/java/com/huawei/servicecomb/controller/ServicecombspringmvcDelegate.java中打印一句“Welcome”。
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      package com.huawei.servicecomb.controller;
      
      import org.springframework.stereotype.Component;
      
      
      @Component
      public class MydemoDelegate {
      
          public String helloworld(String name){
      
              // Do Some Magic Here!
              return "Welcome, " + name;
          }
      }
      
    2. mydemo/src/test/java/com/huawei/servicecomb/controller/TestServicecombspringmvc.java中,将参数值设置为"Welcome hello"使参数值与刚才修改文件的返回值相等,测试微服务是否可用
       1
       2
       3
       4
       5
       6
       7
       8
       9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      package com.huawei.servicecomb.controller;
      
      
      
      import static org.junit.Assert.*;
      import org.junit.Before;
      import org.junit.Test;
      
      public class TestMydemo {
      
              MydemoDelegate mydemoDelegate = new MydemoDelegate();
      
      
          @Test
          public void testhelloworld(){
      
              String expactReturnValue = "Welcome hello"; // You should put the expect String type value here.
      
              String returnValue = mydemoDelegate.helloworld("hello");
      
              assertEquals(expactReturnValue, returnValue);
          }
      
      }
      
    3. 提交修改。

  4. 创建流水线。

    1. 登录ServiceStage,选择“应用管理 > 应用列表”,选择已经创建的servicecomb应用,单击应用名称,进入应用详情页。
    2. 在组件列表选择已经创建的组件java-pro,单击组件名称,进入组件概览页,单击“流水线”,进入流水线页。
    3. 单击“创建流水线”,加载该组件已有构建任务和部署环境,单击“创建并执行”。
      图13 流水线
    4. 可以进入到“构建”,查看构建详情。
      图14 构建

  5. 等待流水线执行成功,进入组件概览页,在对应环境卡片可以查看组件版本。

    图15 流水线状态

  6. 请参考3重新设置访问方式,重新访问应用,在浏览器地址栏输入:{访问地址}/rest/helloworld?name=ServiceStage,可以得到返回结果。修改的业务代码已经生效。

    图16 升级后版本
    "Welcome, ServiceStage"

应用运维

  1. 登录ServiceStage,选择“应用管理 > 应用列表”,选择已经创建的servicecomb应用,单击应用名称,进入应用详情页。
  2. 在组件列表选择已经创建的组件java-pro,单击组件名称,进入组件概览页,在对应环境卡片可以查看组件版本。

    图17 组件版本

  3. 单击版本名称,进入组件版本详情页,可以进行运维操作(启停,升级、回退、伸缩、查看日志、查看事件、设置访问方式、设置阈值告警等)。

    图18 版本详情页

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问