研发的一天最佳实践
云效,新型企业级一站式协同研发平台,源于阿里巴巴多年先进的管理理念和工程实践,在研发全流程(包括需求、编码、测试、发布、运维)中提供端到端的协同服务和研发工具支撑。云效将战略规划、敏捷研发、持续集成、持续交付、DevOps等理念引入银行、保险、民航等大型企业和互联网初创企业,助力企业产品快速创新迭代和研发效能升级。本最佳实践基于云效,将研发同学一天中常遇到的场景进行分解及处理,提升研发同学日常工作的便利性。
前提条件
本实践适用企业版V3.12及以上版本。
主要涉及阿里云云效、应用实时监控服务ARMS、企业级分布式应用服务EDAS等产品。
背景信息
最佳实践概述:
本次实践面向研发的日常,从开发到测试最后到上线及监控一整条流水线。
本次最佳实践将基于阿里云云效及中间件产品,功能覆盖产品研发全生命周期,在研发全流程(包括需求、编码、测试、发布、运维)各阶段都有高效工具支撑效率提升,并与中间件、容器服务等产品无缝结合,联合打造一站式DevOps服务平台。
实践步骤
打开云效登录页面,输入用户名密码。
登录云效控制台。
配置阶段:创建项目集。
单击左侧导航栏敏捷研发,进入项目列表页,单击新建项目集系统跳转至项目集创建页面。完成相关信息填写后,单击确定即可,例:项目集demo。


立项阶段:创建项目。
在项目列表页单击新建项目,系统跳转至项目创建页面。完成相关信息填写后,单击确定即可,例:项目demo。创建成功后,系统跳转至项目demo概况页面。


准备阶段。
代码管理。
新建代码库:在云效>持续交付>代码管理页面,打开Codeup页面,单击添加代码库>新建代码库。


在新建代码库详情页,有克隆仓库、已有文件夹或仓库、导入代码库三种方式的命令行指令,可直接复制操作。

云效部署环境同VPC下创建K8s容器集群。

EDAS环境同步K8s集群。

连通EDAS和云效平台.
在数据订正中将测试环境中的创建的环境与EDAS中规划的环境类型进行关联。
在数据订正中单击新建基础环境。

选择EDAS Pass SDK。

填写信息。

字段信息。
页面字段名
说明
值
user id
当前登录账号id(子账号登录即为子账号id,主账号登录即为主账号id)
userTools接口返回值中的edasid(具体获取请查看下文v)
primary user id
主账号id
userTools接口返回值中的edasid(具体获取请查看下文v)
文件服务器ip
packageswitch的ip
127.0.0.1(默认填写此内容)
文件服务器port
packageswitch的port
8080(默认填写此内容)
域名
edas控制台登录地址
userTools接口中请求域名
EDAS地域
edas账号所在的区域
根据实际情况填写
命名空间
edas上命名空间
根据实际情况填写
集群
根据实际情况填写
环境类型
aton即为发布环境类型
aenv为环境所对应的id
根据实际情况填写
如何获取user id,即userTools接口edasID(在EDSA页面F12)。选择Network,搜索user,查看Preview,其中红色标注即为edasid。

云效操作。
创建仓库权限。
操作:单击持续交付>配置管理>权限管理>仓库权限。

说明权限类型选择账号密码;账号和密码为登录云效平台的账号密码。
注册应用。
操作:单击持续交付>配置管理>应用>应用管理。


按照需求填写,其中代码路径为Codeup上主干代码的路径,下为示例:

选择EDAS部署方式、K8s应用类型。

创建项目。
在项目列表页单击新建项目,系统跳转至项目创建页面。完成相关信息填写后,单击确定即可,例:项目demo。创建成功后,系统跳转至项目demo概况页面。


新建开发项目。
操作:单击持续交付>配置管理>开发项目。

拉取项目分支。
操作:单击开发项目>申请变更。

选择在上述创建的开发项目。

完成创建。

测试环境机器申请。
操作:单击持续交付>环境管理,进行公共环境申请,对每个应用进行对应环境的机器申请。

流水线创建。
操作:单击持续交付>流水线>选择步骤iv中创建的开发项目。
会弹出流水线组选择页面,环境中已经内置好流水线组;如需修改,可在持续交付>流水线>模板管理下进行编辑;

以上完成云效操作,在流水线页面启动流水线,完成人工验证,自动部署到EDAS环境中。

ARMS监控。
开启高级监控。
EDAS页面应用详情页面,单击高级监控,可开启高级应用监控。

查看监控。
登录Apsara Uni-manager运营控制台,在页面顶部的菜单栏中,单击产品>监控运维>应用实时监控服务ARMS。

查看ARMS监控。

ARMS监控指标:
选定时间内的总请求量、平均响应时间、错误数、实时实例数、Full GC次数、慢SQL次数、异常次数和慢调用次数,以及这些指标和上周、上一天的同比升降幅度。
应用提供服务:因用户访问该应用而产生的数据,例如用户在浏览器中访问该应用。其包含应用提供服务的请求量和平均响应时间两个指标。
应用依赖服务:因该应用访问其他服务而产生的数据,例如该应用访问数据库。其包含应用依赖服务的请求量、平均响应和应用实例数三个指标。
系统信息:CPU、MEM和负载的时序曲线。
统计分析:接口慢调用分析和异常类型分析。
监控概览:

应用拓扑:

JVM监控:

主机监控:

SQL调用分析:



































