问题现象
顾问恢复了一个测试环境用于测试相关功能。进入到超级管理员进行帐套信息修改。由于顾问以为是测试环境,于是删掉了相关帐套信息。但生产环境崩溃,仔细排查,走测试环境的负载端口,超级管理员登录系统,信息却为生产环境的帐套信息。紧急恢复环境后,排查相关原因。
问题分析
环境为老同事搭建的为Npart的集群。
通过代理端口访问,发现相关的帐套信息为生产的。
为了测试下,单独访问了master、default-1
单独访问default-1发现,系统管理显示的是生产环境的数据库的信息。
读取的帐套也是生产的信息
单独访问master发现是自己新配置的数据源信息
帐套也是测试环境的信息
这就是为什么登录测试环境会把生产环境的帐套删除。通过负载的端口,直接把请求转到相关服务上了。
Sysconfig数据源只有自己,只有唯一数据源。未配置生产环境信息。
Npart主配置也是新的数据源。都没有配置生产环境的信息。
看着状态,像是测试环境的服务和生产环境的master进行了匹配。
于是在测试环境中全文搜索了生产环境的master的IP地址。
在ierp/bin/servicedeploy/dedicateserver.properties 文件中找到了相关信息。
这个文件配置的是正式环境的 master 导致服务远程调用时走正式环境的master服务,导致报错,以及这些风险行为。
解决方案
清理ierp/bin/servicedeploy/dedicateserver.properties文件内容。