# DevOps_6.3-6.5_GA升级手册
# 目标
为使用普元DevOps_6.3GA产品且需要升级到DevOps_6.5GA的用户提供参考。
# 范围
仅限使用普元DevOps_6.3GA版本且没有进行过二次开发的平台升级至DevOps_6.5GA版本。
# 升级说明
# 应用版本
应用软件/中间件 | 升级项 | 版本变更 | 说明 |
---|---|---|---|
DevOps | 版本,数据 | 6.3GA-6.5GA | 前后端应用升级到6.5GA版本,数据库sql升级 |
# 升级包
DevOps平台提供了升级介质:DevOps_6.3-6.5GA_Update.tar.gz。
目录结构如下
-- devops
---- devops-web.zip
---- devops.war
---- devops_update6.3-6.5GA.sql
# 升级方案
DevOps
- 更新DevOps前端,使用前后端分离部署时需更新。(devops-web.zip)
- 更新DevOps后端。(devops.war)
- 更新DevOps数据库。(devops_update6.3-6.5GA.sql)
# 操作说明
# DevOps升级
# 备份
# 应用备份
停止应用
# 切换到进程对应的用户 su - userapp cd /opt/idc/apps/tomcat # 执行停止脚本 ./stopServer.sh
备份目录
cd /opt/idc/apps/ mv tomcat tomcat.bk
# 数据库备份
备份devops数据库
#备份整个devops数据库 mysqldump -udevopsadmin -pDevops,admin000 devops > devops-bk.sql
# 升级
# 应用升级
部署war包
su - userapp cd /opt/idc/apps/tomcat mkdir webapps/ROOT unzip devops.war -d webapps/ROOT/
修改数据库连接配置
vi webapps/ROOT/WEB-INF/_srv/config/user-config.xml
# 根据实际mysql配置信息修改 <configValue key="C3p0-Url">jdbc:mysql://10.16.16.16:3306/devops</configValue> <configValue key="C3p0-UserName">user</configValue> <configValue key="C3p0-Password">password</configValue>
拷贝license文件。
# 将原有的6.0版本的license拷贝到应用中。 cp ../tomcat.bk60/apps_config/ROOT/license/primetonlicense.xml webapps/ROOT/WEB-INF/_srv/
暂不启动应用,待数据库更新完成后再启动应用。
# 数据库SQL升级
登录数据库
mysql -uuser -ppassword
切换到devops数据库
use devops;
执行数据库sql
source devops_update6.3-6.5GA.sql;
启动devops服务
su - userapp cd /opt/idc/apps/tomcat nohup ./startServer.sh &
# 不兼容说明
# 报表:
6.5版本更新了报表的实现,原报表的数据和新报表数据不同步并且再更新过sql后关闭原报表统计逻辑(通过平台参数Lm.StartMonitor控制原报表逻辑的启停),界面中不再查询原报表接口与原报表数据,但是原报表数据并不会删除清空,可以通过数据库查询。
新报表服务通过平台管理》高级》定时中的定时任务启停:
报表定时任务每日凌晨0:05统计前一天工作项,代码库,构建定义和发布定义数据。
实时报表定时任务以每小时为间隔,统计实时报表数据。
重新统计历史数据
新报表通过平台参数Report.ReportStatisticsSinceYesterday来决定统计范围,默认值为true,每日统计昨天的数据。
- 如果需要重新统计历史数据,请在更新服务时修改如下配置!
将平台中的Report.ReportStatisticsSinceYesterday参数置为false(该操作将影响所有未更新过该参数的项目统计逻辑),或者将需要统计历史数据的特定项目中的项目参数Report.ReportStatisticsSinceYesterday置为false(只影响对应项目统计逻辑)。
修改过参数后,服务会在下一个统计触发时,统计历史数据(请保证数据库里该项目中的历史报表数据已经被清空,否则会以上一次数据库执行到的最新日期作为开始时间统计!推荐执行sql后的当天修改配置,因为此时的数据库刚被初始化,不会有历史数据)。
# 服务集成:
平台管理》平台配置》服务集成
6.5版本更新了服务集成类型列表的来源获取,历史版本展示所有的服务集成类型,更新版本后服务集成类型通过业务字典(系统默认服务集成类型 DPS_PCM_SYSTEM_DEFAULT_SYSCONF_TYPE)配置服务集成类型的展示与隐藏。
默认展示如下服务集成类型,如果需要展示其他的服务集成类型,请根据服务集成类型列表自行添加字典。
服务集成类型字典列表
字典项代码 | 字典项名称 | 是否默认展示 |
---|---|---|
artifact-server | 介质服务器 | 是 |
ci-engine | 构建引擎 | 是 |
cd-engine | 部署引擎 | 是 |
email-server | 邮件服务器 | 是 |
quality-analysis-server | 质量分析服务器 | 是 |
container-cloud-server | 容器云服务器 | 是 |
image-server | 镜像服务器 | 是 |
code-server | 代码服务器 | 是 |
ldap-server | LDAP服务器 | 是 |
remote-devops-server | 远程DevOps服务器 | 是 |
external-servers | 外部服务 | 是 |
project-management-server | 项目管理服务器 | 否 |
test-server | 测试服务器 | 否 |
single-sign-on-server | 单点登录服务器 | 否 |
cmdb-server | CMDB服务器 | 否 |
deploy-server | 部署服务器 | 否 |
# 前置构建:
发布定义中前置构建的实现策略变更,原前置构建添加控件被隐藏了,取而代之的是在发布定义的流水线部署编排中,添加构建执行原子任务,来达到执行前置构建定义的效果。
- 在升级版本后会隐藏前置构建控件,但不会去除前置构建关联,请自行在执行版本升级前去除所有的前置构建,否则会在发布时受到限制!
# 新版本添加前置构建与前置发布
新版本构建定义和发布定义都可以通过原子任务的编排来实现前置构建或前置发布。
前置构建可以选择构建执行原子任务
参数说明:
属性 | 配置说明 |
---|---|
构建定义 | 选择一个已有的构建定义 |
构建参数 | 如果所选构建定义配置了传入参数,则可自动带入,在这里进行参数传递 |
等待构建完成 | 勾选后则调用的构建执行完毕后再开始执行下一个任务 |
回填全局数据区 | 构建执行中调用的构建任务中的全局变量可以回填到全局数据区 |
指定回填变量 | 可以仅指定某个变量回填到全局数据区 |
前置发布可以选择发布定义启动原子任务
参数说明:
属性 | 配置说明 |
---|---|
发布定义 | 选择一个已有的发布定义 |
发布号 | 发布号,如果为空,则使用配置规则 |
发布参数 | Map格式的Json串 |
等待发布完成 | 勾选后则调用的发布执行完毕后再开始执行下一个任务 |
回填全局数据区 | 发布执行中调用的发布任务中的全局变量可以回填到全局数据区 |
指定回填变量 | 可以仅指定某个变量回填到全局数据区 |