1 场景介绍
适用于Proton Runtime 2.12.0+版本
2 准备工作
若Proton Runtime为2.16.x版本,请先执行补丁: 【技术工程院】-【Y,2.17.0】【缺陷】- 原地更新deploymentstudio后,上层模块化服务的依赖项(例如rds)丢失(位于Proton 2.16.x及AnyShare 7.0.5.6补丁包发布目录下)
3 修改数据库密码
注意:此处以内置数据库为例,若使用外置数据库,请自行登录外置数据库修改密码
登录MariaDB,修改数据库密码
- 修改root密码,执行:
ALTER USER 'root'@'%' IDENTIFIED BY '新密码';
- 修改普通用户密码(例如:anyshare用户),执行:
ALTER USER 'anyshare'@'%' IDENTIFIED BY '新密码';
4 修改数据库配置
通过proton-cli更新配置中的MariaDB密码
4.1 获取当前集群配置
执行:kubectl get secret -n proton proton-cli-config -o jsonpath= ' {.data.ClusterConfiguration} ' | base64 -d > proton-cli-config.yaml
4.2 编辑配置文件
将mariadb配置中密码变更为新修改的密码,执行:vim proton-cli-config.yaml
如图所示:
使用base64将配置文件进行编码,执行:base64 proton-cli-config.yaml -w0
编辑secret,将其中的data.ClusterConfiguration替换为第3步编码后的内容,执行:kubectl edit secret -n proton proton-cli-config -o yaml
替换data.ClusterConfiguration内容后,保存退出
4.3 重启服务使生效
4.3.1 重启部署服务
- 重启deploy-installer服务,执行:
kubectl -n anyshare delete pod deploy-installer-0
-
重启deploy-service服务,执行:
kubectl -n anyshare delete pod <deploy-service-xxx>
注意:重启DeploymentStudio时,父组件更新阶段会自动更新所有依赖数据库rds组件的上层应用组件,因此DeploymentStudio更新完成后无需再更新其他模块化服务
- 重启DeploymentStudio,进入容器deploy-installer-0,搜索DeploymentStudio,查询到其aid,创建job,更新DeploymentStudio,依次执行:
kubectl -n anyshare exec -it deploy-installer-0 bash
installer app search DeploymenyStudio
installer job create <aid> -j jv.json
installer job set <jobID> -j jv.json
installer job execute <jobID>
-
等待更新完成
4.3.3 重启各模块化服务
重启所有业务pod,执行:kubectl -nanyshare delete po --all
等待服务重启完成
5 检查更新后业务状态
- 检查依赖MariaDB的服务中MariaDB密码是否更新成功
例如:身份认证模块中的hydra服务,执行:helm3 get values hydra -n anyshare
- 检查服务状态是否正常
- 验证上层业务是否正常,例如:用户管理、上传下载等功能