记一次系统版本重大升级流程(wblogic、redis、oracle1)
系统最新版虽然已经使用了ansible+k8s实现自动化部署,实施运维都方便了不少。但那些老的独立部署版本依旧要正常维护和版本跟新,手上30多家独立部署单位都搭在内网,日常运营维护要么VPN要么单位提供远程。近期要将手上的单位进行大升级,一家一家重复总觉得很自己很傻,记录一下自己升级的过程
1. 升级说明
系统使用weblogic发布web项目,redis作为缓存应用,oracle提供数据储存服务,现在要加一个minio小文件系统,数据库升级脚本是统一的,我们大概需要做的就是测试新版本(各个省份有一些专属需求嘛),备份数据库、修改添加配置文件,更新数据库、替换项目包最后在进行正式环境的测试,感觉不是很多,加上一些流程审批,还是非常的麻烦,还尽可能要放在下班时间,极其的痛苦
2. 根据升级文档写个升级脚本
首先去ftp服务器上拿到新版本的项目包,以及升级说明,研究完后在测试环境进行模拟升级,难度不打,但很繁琐,第一时间想到能不能写个脚本把大多数步骤自动实现,有想法就开始行动,按照自己模拟的思路写了个脚本,调试了大概一周基本框架实现了,我发现一个非常严肃的问题,那就是实施的时候很多人没有按照规范进行,各种软件的安装位置、配置文件位置都不统一,完蛋只有把各种情况写进去,项目包大家也都放在奇怪的位置,项目包的自动备份又变得麻烦了起来,又优化了大概一周,把能想到的可能都尽量写了进去,中途执行失败也做了处理。
3.测试环境升级
完成升级脚本后,就在测试环境进行升级了,又根据升级过程中遇到的问题对脚本进行了修改,最后项目也是正常启动了,噢又要开始填功能测试文档,差不多又弄了两周,在提交工单准备正式环境升级了。
4.数据备份,正式升级
停止服务后用先对数据库进行了一个备份,数据量不大20来个G,第一次在生产环境中使用,怕脚本本运行中出问题,又手动备份了一下项目,接下来就是正常升级了,过程还是比较流畅,基本没出现撒问题升级完成。
5、升级完成
升级完成,基本功能使用正常,系统恢复正常使用,又要开始填升级报告,唉和文档过不去了,一想着自己还需要对几十家单位进行同样的操作,突然觉得自己像个傻子,不知道能不能想办法解决掉这些重复冗余的工作,解放我的双手学点新知识也好。
分类:
系统升级
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了