如何处理集群内部OBS证书过期
用户问题
用户在MRS集群中访问OBS服务过程中出现证书过期问题。
问题现象
MRS集群产生“ALM-12054 证书文件失效”或“ALM-12055 证书文件即将过期”告警,且告警详情中触发告警的证书为OBS证书。
原因分析
OBS系统生成的证书有有效期限制,到达有效期后,证书文件失效,因此产生告警。
处理步骤
- 查询MRS集群上的OBS证书信息。
使用root用户登录MRS集群的主OMS节点,执行以下命令查询是否存在OBS相关证书。
keytool -v -list -keystore ${JAVA_HOME}/jre/lib/security/cacerts -protected 2> /dev/null|grep -E "Alias name*|Valid from*" | grep obs
如下示例表示存在OBS证书:
Alias name: obs.example.com
- 若不存在证书,则无需进行后续操作,等待告警恢复。
- 若存在证书,则执行2。
- ${java_home}为集群JDK目录,MRS 3.x版本中,替换为“/opt/Bigdata/common/runtime0/jdk1.8*”,MRS 3.x之前版本中,替换为“/opt/Bigdata/jdk”。
- MRS 3.x版本集群若按照该指导执行后依然出现证书过期告警,请将${JAVA_HOME}替换为“客户端安装目录/JDK/jdk”,再次执行该指导。
- 删除OBS证书。
在主OMS节点中,执行以下命令删除1中查询到的OBS证书。
obs_url=$(keytool -v -list -keystore ${JAVA_HOME}/jre/lib/security/cacerts -protected 2> /dev/null|grep -E "Alias name*|Valid from*" | grep obs | cut -d ':' -f 2 | awk '$1=$1')
jdk_cacert="${JAVA_HOME}/jre/lib/security/cacerts"
keytool -delete -alias ${obs_url} -keystore ${jdk_cacert} -storepass changeit
- 执行以下命令,确认OBS证书已不存在,若仍存在,则继续执行2。
keytool -v -list -keystore ${JAVA_HOME}/jre/lib/security/cacerts -protected 2> /dev/null|grep -E "Alias name*|Valid from*" | grep obs