IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    阿里云rds mysql更新证书的逻辑

    Jimmy He发表于 2023-11-22 08:40:22
    love 0

    证书更换的逻辑:
    1. 只读节点是高可用版本的情况下(不适合只读节点是basic的版本), 先对只读节点的slave进行更新证书。
    1.1 更新证书的过程,先把证书路径下的证书文件进行删除或者重命名。因为如果生成新证书时,在同一路径下存在同名文件,则创建失败。(证书路径是数据库中 show variables like ‘%ssl%’中的参数显示的路径)
    1.2. 用mysql_ssl_rsa_setup创建证书,证书期限是一年,证书产生在原来老证书路径,由于老证书之前进行了删除或者重命名,不存在同一路径下同时有2张证书的情况。

    2. 证书更新后的生效,需要重启mysql实例,通过HA切换来实现。
    2.1 只读节点的主从互换,其实并不是的主从互换,而是一个读写主实例,基于mysql原生主从,做了2个只读实例。一主拖两从部署。
    2.2 HA切换,是重启了只读节点的slave节点上实例,并且将只读节点的终端链接指向,(可能是通过修改dns指向),指向这个实例。
    2.3 在只读节点的原master节点(现在为slave节点)上,生成新证书,重启只读节点原master节点。

    在2023-11-01之前,存在一个bug,是在证书更换的第1阶段, 没有正确生成新证书。这可能是老证书没有重命名或删除,导致同名新证书无法生成;可能是创建新证书时mysql_ssl_rsa_setup执行失败。 —— 这就导致,在阿里云控制台的界面上看,更新证书是成功的。但是实际应用ssl连接到从库,是报错的。
    在2023-11-01之后修复。



沪ICP备19023445号-2号
友情链接