企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 卡系统迁移【海兰州】 ## 1.准备阶段 ### **php环境:** 1、检查php版本:7.3 是否确认? 2、php扩展:seaslog、PDO、OCI 是否确认? 3、开机启动:是否设置? 4、session共享:是否测试? 具体配置内容如下: ``` session.save_handler = redis session.save_path = "tcp://10.1.1.71:7379?auth=leStZqHD&prefix=redis_session_card" ``` 4、php.ini: 生产测试期间错误模式是否开启?生产环境是否关闭? 5、启动 **root用户:** 启动命令:systemctl start php-fpm.service 关闭 systemctl stop php-fpm.service 重启命令 systemctl restart php-fpm.service **业务账号:** ``` 启动 /usr/local/php/sbin/php-fpm --fpm-config /usr/local/php/etc/php-fpm.conf 重启 kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` 关掉 kill -INT `cat /usr/local/php/var/run/php-fpm.pid` ``` 6、安装目录: /usr/local/php ### **nginx环境:** 1、配置 开机项启动项: 是或否默认启动? 日志权限:是否正常写入? nginx错误日志和nginx访问日志,日志的目录权限问题。 端口开启: 443 80 是否开启? 性能关键参数: 待整理 2、启动 ROOT账号: 启动:systemctl start nginx.service 关闭:systemctl stop nginx.service 重启:systemctl restart nginx.service 业务账号: 启动命令:/usr/local/nginx/sbin/nginx 关闭命令:/usr/local/nginx/sbin/nginx -s stop 重启命令:/usr/local/nginx/sbin/nginx -s reload 注意事项:nginx日志按照天进行切割?避免出现大文件日志,配置文件按照约定规范进行配置 ## **oracle/mysql数据库:** 1、迁移时间:数据同步的需要多长时间?数据库连通性测试 2、数据库信息:houst、port、用户名、密码、实例名 3、启动配置:开启启动项设置 (**时间评估**) 注意事项:序列回复是否正确、内网端口修改(禁用默认1521端口) ## **redis配置:** 1、主备切换验证: 没有自动切换 只是备份,现阶段只用主服务器,从服务器做备份使用,数据同步。接下来可以把从服务器作为读服务器 2、密码正确性,防火墙设置是否允许指定端口访问,最大内存分配,持久化aof和rdb的配置情况,开机启动项设置,防止一块区域存放太多数据? 注意事项:已经修改默认端口 ## **F5配置:** 1、vip: 两个VIP地址? 2、内网IP:4台虚拟机IP地址? 注意事项:内网IP如出现故障,F5是否具备流量切换 ## **其他准备:** 1、文件服务器:迁移最新的线上的图片文件,设置好共享文件服务器 (**时间评估**) 2、日志服务器:日志可以集中备份,然后生成新的日志文件 3、定时任务明细: 也或者如守护进程之类的 ``` nohup php cli.php home/Daemon/refresh & >/dev/null 2>&1 nohup php cli.php /Daemon/alignmentGiveTongBao & >/dev/null 2>&1 nohup php cli.php home/Daemon/alignmentGiveBalance & >/dev/null 2>&1 nohup php cli.php home/Daemon/alignmentReduceTongBao & >/dev/null 2>&1 nohup php cli.php home/Daemon/alignmentReduceBalance & >/dev/null 2>&1 ``` 4、其他::虚拟机的防火墙、ip地址设置 运维默认配置 注意事项:在做迁移之前做好所有应备份数据 ## 2.迁移阶段 * 打包最新的线上的代码,部署到生产服务器,注意日志的文件不需要迁移【但需要做好备份】,图片等其他静态资源需要迁移,如遇到到大文件,可以将核心源码迁移在进行其他文件迁移 * 修改配置:修改配置文件中数据库和redis配置,并测试是否可用 * 设置权限:设置public和rutime的读写权限和软连到共享服务器。 * 任务:开启脚步任务和定时任务 * 核心业务测试:注册、充值、消费、结算、退款(含部分退款) * 简单性能测试:如果同样的sql【通宝相关报表】,在新老换进行测试结果对比 * 检查:检查准备阶段文件是否正常写入 注意事项:日志文件如果被删除,是否能正常生成文件 ## 3.验证阶段 * 每个服务器的单独访问的正确性。通过访问后台地址,查询nginx日志,php日志,应用系统日志 * 通过内网ip或vip访问后台地址是否正确,查询nginx日志,php日志,应用系统日志 * 通过外网ip地址访问验证 * 通过域名访问验证系统正确性, * 其他业务系统对接的验证,pos机刷卡,通宝+,结算中心、一家app 相关测试,验证正确性【具体什么业务?】。 ## 4.自动化部署设置 * 评估是否需要使用重新建立gitlab 同步最新的代码 * jenkins配置,便于后期代码上传 ## 5.资源清单 **亿恩机房** 内网ip:10.1.1.35 10.1.1.36 10.1.1.45 php目录 /home/zzcard/zzcard 共享服务器: 1. 图片资源:/home/zzcard/images/IMAGES 2. 日志及其他静态资源:/home/zzcard/images/Public 数据库. ip:192.168.10.64 name:jycard 用户名 jycard 密码 jycard\_2018 端口 1521 Redis : 10.1.1.42 port 1989 pwd:Redisjyzz123 域名:[https://zz.9617777.com](https://zz.9617777.com) 内网地址: 外网地址:106.3.45.145 **景安机房** 内网服务器ip地址:10.1.1.33 10.1.1.34 10.1.1.35 内网ip地址:10.1.1.101 10.1.1.201 外网地址:122.114.33.72 1.198.7.132 代码部署地址:/home/jyzz/wwwroot/zzcard 域名:[https://zz.9617777.com](https://zz.9617777.com) 数据库:10.1.1.39 name:jycard 用户名 jycard 密码 **jycard\_2018** 端口: redis:10.1.1.71 端口 7379 密码 leStZqHD 域名:[https://zz.9617777.com](https://zz.9617777.com/) 【阿里云进行全局流量负载,经测试任何一线路出现故障,5分钟左右报警,10分钟左右进行切换恢复正常】