概要描述
CA 证书于 2025/12/7 号过期,需要及时进行证书的更新防止 TOS 集群不可用。
TDC版本为TDC 2.X/TDC3.X时,需要使用该手册进行证书续签。
详细说明
- 确认 TDC 版本符合当前方案要求
- 执行更新 CA 证书
2.1 获取更新脚本
2.2 续签 TDC 的 CA 证书
2.3 续签 TDC 上各个 子产品 的 CA 证书 - 续签后检查
- 后续运维注意事项
2.1 获取更新脚本
点击下载X86架构CA证书更新工具 ca-renewal-v11.tar.gz
点击下载ARM64架构CA证书更新工具 ca-renewal-v11-arm64.tar.gz
根据即将执行脚本的 TOS Master 节点的架构,选择对应的脚本工具。
tos maste 节点是 X86 架构,就上传 ca-renewal-v11.tar.gz,
tos maste 节点是 ARM 架构,就上传 ca-renewal-v11-arm64.tar.gz
2.2 续签集群ca证书,TDC2.5.1<=TDC 版本<=TDC3.4.1
2.2.1 填写集群节点信息
1、上传更新脚本到子集群任意一个tos master节点上,解压安装包
$ tar -zxvf ca-renewal-v11.tar.gz
2、生成集群节点信息
$ cd ca-renewal/
$ bash gen-hosts.sh
## 执行此脚本会在 ca-renewal 目录下生成 hosts.txt,里面仅包含集群节点的 hostname、ip 及 tos角色
执行上述脚本后,需要手动检查 hosts.txt
第 4 列补充节点的 ssh 端口,
第 5 列对应 ssh 的用户名,
第 6 列对应 ssh 密码
如果节点间使用 root 免密的话 ,hosts.txt 中的 用户名、密码 无需填写。
标准的hosts文件参考
$ cat ca-renewal/hosts.txt
node01 172.18.120.115 master 22 test Warp@1234
node02 172.18.120.113 master 22 test Warp@1234
node03 172.18.120.114 master 22 test Warp@1234
node04 172.18.120.112 worker 22 test Warp@1234
注意:
如果使用非 root 用户执行脚本,在执行 tos 续签脚本前,需要给该用户在对应节点上添加 sudo 权限,比如用 visudo 命令编辑 sudo 文件
$ visudo
# 在文件最后一行添加对应用户的sudo权限并保存修改
_test-name245 ALL=(ALL) NOPASSWD: ALL
2.2.2 更新 bootstrap.kubeconfig
$ bash 13-update-bootstrap.sh
正常执行结果:

2.2.3 续签 TDC license ca (from 丁俞瑞)
1、 执行 update_licence_ca.sh 脚本,进行 license server ca 证书续签。
进入脚本执行目录
$ cd ca-renewal/tdc-licence-renew/licence-server/

执行续签脚本(该脚本必须在上述的脚本执行目录执行):
$ bash update_licence_ca.sh
正常执行结果:

2、执行 update-eco-jks.sh 脚本,进行 eco 组件 license client 证书续签
进入脚本执行目录
$ cd ca-renewal/tdc-licence-renew/tdc-eco/
执行续签脚本(该脚本必须在上述的脚本执行目录执行):
$ bash update-eco-jks.sh
正常执行结果:

以上代表执行完了 TDC 平台的 CA 证书。
下面还需要对 TDC 上各租户下的 子产品惊醒 CA 证书续签。
2.2.4 续签子产品license ca
TDC平台已经完成根证书续签后,TDH需要使用 ca_upgrade_tool 工具,对会读取 license 的服务完成子产品镜像中的证书更新。
如果无法判断哪些子产品镜像需要更新证书,可以联系研发。
-
需要在TDC Master节点上执行 ca_upgrade_tool 工具
-
更新已部署服务镜像里的证书
1.1 进入服务镜像里,查看证书是否需要更新
1.2 如果对应的证书MD5值是37f583184632e8cbc867cb34c7fbfae0,表示已经更新过,不需要再次更新。
1.3 假设要更新 tdc-registry:5000/transwarp/comA:6.1-final 镜像,先 retag 备份该镜像
1.4 下载ca_upgrade_tool.zip,解压到目录A。进入目录A,执行
./apply.sh -i tdc-registry:5000/transwarp/comA:6.1-final1.5 执行成功后,把更新证书后的镜像 retag 成
tdc-registry:5000/transwarp/comA:6.1-final,推送到 TDC registry 中1.6 在合适的时间,重启对应子产品服务即可
-
TDC平台上的子产品要打补丁,对应的补丁不会更新镜像中的根证书
PS:(2025-12-7后的补丁,会自动更新证书,不需要再执行下面的步骤)2.1 下载 ca_upgrade_tool.zip,解压到目录 A
2.2 下载子产品补丁包,解压到目录 B
2.3 进入到目录 A 下,执行 ./apply.sh -d 目录B全路径
2.4 执行成功后,进入目录 B 下继续正常的补丁操作即可
sophon 相关子产品license ca 续签(from 刘森)
TDS相关子产品license ca 无需续签(from 丁晓东)
KUNDB相关子产品license ca 无需续签(from 张春蕾 )
续签后检查
续签完成后,可以通过巡检工具2.2.3进行检查,确认是否所有子产品均完成续期操作(巡检工具对所有租户下的正常运行的pod 都进行了检查),可根据巡检报告中告警的内容进行处理:
KB:使用新版本巡检工具获取集群信息(https://kb.transwarp.cn/posts/10159)
CA续期告警规则说明:
使用300、302、303、304、305指标编号对CA续期操作完整度进行检查,其中是300是汇总指标,302-305指标分别判断节点证书续期、metainfo配置版本、bootstrap.config文件和配置模版是否操作成功,如某一项未成功,则触发300告警,报告中也会详细输出对应告警的内容,现场续期后可以运行工具进行检查和核对。
详细内容可以登录 COS系统后,通过元数据管理->告警规则管理 模块进行查看
3 后期运维注意点
3.1 集群做节点扩容
集群做节点扩容前,需要手工更新 tcos-package、tcos-installer包中的bootstrap.kubeconfig文件。
更新方法:
1、获取所需的bootstrap.kubeconfig文件的内容
方法1:获取当前集群的worker节点的/srv/kubernetes/bootstrap.kubeconfig文件的内容
方法2:获取ca-renewal/gencerts/tdc-bootstrap.kubeconfig文件的内容
2、分别更新到 tcos-package、tcos-installer包中的bootstrap.kubeconfig文件
tcos-package包中bootstrap.kubeconfig文件位置:tcos-package/roles/kubernetes/node/templates/bootstrap.kubeconfig
tcos-installer包中bootstrap.kubeconfig文件位置: tcos-installer/roles/kubernetes/node/templates/bootstrap.kubeconfig