更新时间:2024-09-25 18:29:16

1 场景介绍

适用于Proton Runtime 2.10.0-2.11.0版本

2 准备工作

3 修改数据库密码

注意:此处以内置数据库为例,若使用外置数据库,请自行登录外置数据库修改密码

登录MariaDB,修改数据库密码

  • 修改root密码,执行:ALTER USER 'root'@'%' IDENTIFIED BY '新密码';
  • 修改普通用户密码(例如:anyshare用户),执行:ALTER USER 'anyshare'@'%' IDENTIFIED BY '新密码';

修改数据库密码.png

4 修改数据库配置

通过proton-cli更新配置中的MariaDB密码

4.1 获取当前集群配置

执行:kubectl get secret -n proton proton-cli-config -o jsonpath= ' {.data.ClusterConfiguration} ' | base64 -d > proton-cli-config.yaml

获取集群配置示例.png

4.2 编辑配置文件

将mariadb配置中密码变更为新修改的密码,执行:vim proton-cli-config.yaml
如图所示:

编辑配置文件.png

编辑配置文件2.png

使用base64将配置文件进行编码,执行:base64 proton-cli-config.yaml -w0

base64编码2.png

编辑secret,将其中的data.ClusterConfiguration替换为第3步编码后的内容,执行:kubectl edit secret -n proton proton-cli-config -o yaml
替换data.ClusterConfiguration内容后,保存退出

编辑secret.png

4.3 重启服务使生效

4.3.1 重启部署服务

  1. 原地更新DeploymentStudio,执行:deploy_tools,选择“1”

更新示例1.png

  1. 依次选择“2”确认命名空间选择“1”选择或输入服务包,执行更新

更新示例2.png

  1. 重启deploy-service服务,执行:kubectl -n anyshare delete pod <deploy-service-xxx>

重启服务.png

4.3.2 重启各模块化服务

  1. 更新AnyShare主模块及其他模块化服务,执行:
    c_svc=$(kubectl get svc deploy-service -nanyshare -ojsonpath= '{.spec.clusterIP}:{.spec.ports[0].port}');
    curl ${c_svc}/api/deploy-manager/v1/ upgradation/modular-service/<模块名称> -XPUT

更新主模块及其它服务模块.png

注意:图中示例为更新AnyShare主模块,其他模块化服务更新方式相同,只需将主模块名称更换为对应模块化服务名称即可

  1. 查看deploy-service日志,等待更新完成

等待服务更新完成.png

服务更新完成.png

  1. 重启所有业务pod,执行:kubectl -nanyshare delete po --all

  2. 等待服务重启完成

服务重启完成示例.png

5 检查更新后业务状态

  1. 检查依赖MariaDB的服务中MariaDB密码是否更新成功
    例如:hydra服务,执行:helm3 get values hydra -n anyshare

检查密码是否更新成功.png

  1. 检查服务状态是否正常

检查服务是否正常.png

  1. 验证上层业务是否正常,例如:用户管理、上传下载等功能