宁盾AM认证系统升级方案-Linux

Posted on Posted in FAQ-宁盾一体化认证平台, FAQ-宁盾一体化认证平台, FAQ-手机令牌, 宁盾认证服务器

1. 背景
由于现有宁盾平台不满足用户需求,宁盾研发工程师在新版本中增加了用户需求项,因此需要对现有平台进行迭代升级。
2. 系统备份
2.1. 整体备份
对于版本迭代较大,升级可能会修改数据库,配置文件等操作,建议备份amhome整个目录。操作如下(默认系统安装路径/opt):
进入宁盾系统安装目录
cd /opt/amhome
查看磁盘空间及文件大小,如磁盘空间不足,需扩充磁盘空间
查看磁盘空间
dh -h
查看目录/文件大小
du -sh *
执行脚本,停止宁盾系统服务
./shutdown.sh
查看服务是否停止,服务停止后,提供服务端口全都关闭:tcp8080/8443/4900/33306,udp1812/1813/50100
netstat -lntup
服务停止后,回到/opt目录,备份系统目录
cd /opt
cp -R amhome amhome.bak
2.2. 部分备份
对于版本跨度较小,升级无需进行多项修改的升级,建议备份amhome目录下的am目录。操作如下(默认系统安装路径/opt):
进入宁盾系统安装目录
cd /opt/amhome
查看磁盘空间及文件大小,如磁盘空间不足,需扩充磁盘空间
查看磁盘空间
dh -h
查看目录/文件大小
du -sh *
执行脚本,停止宁盾系统服务
./shutdown.sh
查看服务是否停止,服务停止后,提供服务端口全都关闭(tcp8080/8443/4900/33306,udp1812/1813/50100)
netstat -lntup
服务停止后,备份am和data目录
cp -R am am.bak
cp -R data data.bak

3. 升级操作
3.1. 常规升级
备份操作完成,认证系统服务停止后,移除amhome目录下的am目录
cd /opt/amhome
mv am /tmp
解压上传的更新文件
unzip am-[*].zip
解压完成后,执行启动服务脚本,系统后台自动进行升级
./startup.sh
检查服务端口是否开启(tcp8080/8443/4900/33306,udp1812/1813/50100

netstat -lntup
检查相关端口都开启后,通过浏览器进行登录管理
3.2. 非常规升级(drop数据库表后升级)
对于用户生产环境中认证平台数据量过大,为了更好更快的进行升级,需要将认证系统平台的部分数据库表drop掉,否则升级过程会占用大量时间,数据量越多,所占用时间越久。
备份操作完成,认证系统服务停止后,启动MySQL数据库服务
/opt/amhome/mysql/startup.sh
检查数据库是否启动,服务端口tcp33306
netstat -lntup
数据库启动后,登录MySQL数据库,密码默认qazwsxedc321
/opt/amhome/mysql/bin/mysql -h127.0.0.1 -P33306 -uroot -p
进入数据库,执行操作
use dkey_am;
drop table am_access_network_flow_delta;
drop table am_access_access_session;
drop table am_mt_system_alert_message;
drop table am_node_file_event_record;
drop table am_stat_enterprise_user_auth_usage;
drop table am_stat_operator_daily_record;
drop table am_stat_operator_lastndays_record;
drop table am_stat_operator_sample_record;
drop table am_stat_strong_auth_session_daily_record;
drop table am_stat_strong_auth_session_monthly_record;
drop table am_stat_strong_auth_session_stat;
drop table am_stat_strong_auth_tenant_daily_record;
drop table am_stat_strong_auth_tenant_monthly_reocrd;
drop table am_stat_strong_auth_user_count_daily_record;
drop table am_stat_strong_auth_user_count_monthly_record;
drop table am_stat_strong_auth_user_daily_record;
drop table am_stat_strong_auth_user_monthly_record;
drop table am_stat_strongauth_session_stat;
drop table am_stat_tenant_daily_record;
drop table am_stat_tenant_lastndays_record;
drop table am_stat_tenant_sample_record;
drop table am_stat_time_token_counts;
drop table am_stat_token_usage;
drop table am_stat_user_all_record;
drop table am_stat_user_daily_record;
drop table am_stat_user_lastndays_record;
drop table am_stat_user_monthly_record;
执行完成后,执行命令退出数据库
exit
数据库操作完成后,执行脚本停止数据库服务
/opt/amhome/mysql/shutdown.sh
检查mysql服务是否停止,服务端口33306是否关闭
netstat -lntup
检查完成后,进入amhome目录下移除am目录
cd /opt/amhome
mv am /tmp
解压上传的更新文件
unzip am-[*].zip
解压完成后,执行启动服务脚本,系统后台自动进行升级
./startup.sh
检查服务端口是否开启(tcp8080/8443/4900/33306,udp1812/1813/50100

netstat -lntup
检查相关端口都开启后,通过浏览器进行登录管理
4. 注意事项
 升级之前仔细阅读升级注意事项
 升级之前需告知用户升级操作造成的影响,经用户同意后再进行升级操作
 系统备份必须服务完全停止后进行
 注意磁盘空间大小
 升级完成后,由于后台数据库进行升级,在检查服务端口时可能出现tcp8080/8443/33306/4900端口开启,udp1812/1813端口未开启状态,此时等待几分钟,待数据库升级完成,相关服务端口即开启。此时可通过top命令查看java/mysql占用CPU、内存状态,通过iotop查看磁盘写入状态
 双机热备升级按照以下顺序:
①主备机服务全都停止,备机启动数据库服务
②正常升级主机
③等待主机数据库与备机数据库同步完成,此时可通过top命令查看java/mysql占用CPU、内存状态,通过iotop查看磁盘写入状态
④数据库同步完成后,停止备机数据库服务,正常升级备机
⑤升级完成后,可通过建立、删除用户方式检查双机热备是否正常
⑥若双机热备失败,建议重新进行热备操作