VxRail环境vCenter证书更新实战:从RENEW到RESET全流程解析
2026/9/24 12:35:50 网站建设 项目流程

1. VxRail环境下的vCenter证书更新,到底难在哪

先说个真实场景。前阵子同事大早上给我打电话,说vCenter登录页面弹出来的不是正常登录框,而是一大段英文报错,大意是证书已过期,连接不安全。我第一反应就是问了一句:你那个环境是不是VxRail?对方愣了一下,说你怎么知道。因为VxRail环境里的vCenter证书到期,往往比普通vCenter环境暴露得更快、症状也更隐蔽,很多刚接手VxRail的运维同事,第一次遇到这个问题时都会有点懵。

VxRail是Dell EMC的超融合一体机,出厂时vCenter就预装好了,vCenter的部署形态、域名、SSO配置、甚至是vCenter下挂的用户账户和密码,都被VxRail Manager统一纳管。普通vCenter证书过期,你只需要处理vCenter本身,大不了用SSH进去重置一下证书。但VxRail环境不一样,vCenter的证书过期之后,VxRail Manager与vCenter之间的通信也会跟着出问题,VxRail插件可能直接报“vCenter连接失败”,集群健康状态变红,甚至影响后续的节点扩展、固件升级、故障替换等操作。也就是说,你处理的不只是vCenter的证书问题,还要同时保证VxRail Manager能重新信任vCenter的新证书。这也是“VxRail-vCenter证书更新”这类问题在社区里反复被问到的根本原因。

这篇文章针对的就是这个场景。我会从VxRail和vCenter的信任关系讲起,梳理证书更新前要做的检查,再把两种核心更新方案——RENEW(续期)和RESET(重置)——的操作步骤、适用条件和踩坑点逐一铺开,最后整理一份常见问题排查手册。适合的人包括:VxRail环境的一线运维工程师、VMware平台管理员、虚拟化项目的实施交付人员,以及那些刚接手VxRail、对vCenter证书体系还不太熟悉的新手朋友。

2. 为什么VxRail的vCenter证书过期不是小事

2.1 VxRail与普通vCenter环境的管理差异

VxRail本质上是VMware vSphere + vSAN + vCenter的软硬一体集成方案,但有一个非常关键的管理特性:vCenter在VxRail环境中不是“独立的”,它的生命周期由VxRail Manager主导。VxRail Manager部署在管理域里,通过调用vCenter的API来执行集群的日常运维操作,例如主机加域、集群扩展、版本升级、健康检查,而这些API调用全部需要基于有效的证书信任关系。

如果你只是在一台普通服务器上装了VCSA,那么证书到期后,影响范围通常是你自己这台vCenter的管理面。但在VxRail环境里,vCenter证书是VxRail Manager与vCenter之间的“握手凭证”。证书一旦失效,VxRail Manager调用vCenter API时,就会因为无法验证对端身份而直接被拒绝。表现出来,就是你登录VxRail Manager后能看到vCenter连接状态变成红色,或者提示证书验证失败。

还有一个隐含问题:VxRail环境里的vCenter主机名通常不是默认的“vcenter”,而是像“xxx-vc”这样的专用FQDN,证书里写的主机名、IP地址,都和使用场景强绑定。如果你在更新过程中不小心生成了不匹配的证书,VxRail Manager那边即使能连上vCenter,也会在后续操作中抛出“certificate verify failed”之类的错误。这也是为什么VxRail环境里的证书更新必须比普通环境更谨慎。

2.2 证书过期后会产生哪些连锁反应

vCenter的证书体系,表面上只是HTTPS访问的那张证书,实际上分为好几层:VMCA根证书、机器SSL证书、SSO签名证书、解决方案用户证书等。其中最容易被忽略、但影响面最大的是SSO签名证书。vCenter的SSO服务负责整个平台的用户认证和令牌签发,而SSO服务本身就是用证书做签名的。证书过期后,SSO签发的令牌全部失效,用户登录vCenter时就会提示“无法从SSO服务器获取令牌”或直接显示“503 Service Unavailable”。

连锁反应通常是这样蔓延的:

  1. vSphere Client打不开,登录页直接报错或者提示证书无效。
  2. 即使强行跳过证书告警,也无法完成登录,因为SSO签名失效。
  3. vpxd服务异常,所有依赖vCenter API的操作全部失败。
  4. VxRail Manager连接vCenter失败,集群健康状态变红。
  5. 如果浏览器或监控系统配置了证书告警,运维会提前收到提示;如果没配,直接等用户报障。

我见过一个比较极端的案例:客户环境的vCenter证书已经过期三天,期间没人登录,所以一直没发现。结果第四天要扩容节点,VxRail Manager连不上vCenter,扩容任务一直卡在“Precheck”阶段,打电话找官方支持,最后走RESET流程才恢复。整个过程其实不算复杂,但因为没有提前做证书监控,愣是把一个“二十分钟能解决”的事情拖成了“半天维护窗口”。

2.3 为什么默认证书两年就要续一次

VMware自签发的VMCA证书默认有效期是两年,这个时间窗口是VMware故意设置的。VxRail出厂时,vCenter使用的是VMCA根证书签发的默认证书,也就是说,你拿到一套新VxRail的时候,证书的有效期就已经开始倒计时了。很多运维同事容易忽略这一点,因为设备刚交付时没人关心证书,过了两年正好碰上其他变更,才发现证书已经到期或即将到期。

我个人的习惯是,VxRail环境交付时就在监控系统里设置证书有效期告警,阈值设为剩余90天。这样即使后面没人主动去翻证书状态,监控也会提前通知。否则等到vCenter登录页直接报“证书过期”,再想走UI方式优雅地更新,往往已经晚了一步。

3. 证书更新前必须要做好的准备工作

3.1 确认当前版本和环境信息

动手之前,先把版本信息搞清楚。vCenter的证书管理工具在不同版本里选项编号和界面布局会有差异,VxRail Manager的版本也会影响你后续验证的方式。我在实际项目里,一般先通过SSH登录vCenter,执行几组命令确认环境。

# 查看vCenter版本(适用于vCenter Server Appliance) vami -v # 查看vpxd版本 /usr/lib/vmware-vpx/vpxd -v # 查看vCenter服务的整体运行状态 service-control --status --all

如果是VxRail环境,还需要登录VxRail Manager,确认VxRail Manager的版本和vCenter的对应关系:

# VxRail Manager命令行查看版本 pcs --version

这一步很关键,因为不同版本的VxRail Manager对证书更新的处理机制不同。有些版本在vCenter证书更新后,VxRail Manager会自动重连;有些版本则需要你手动刷新证书缓存,否则即使vCenter这边一切正常,VxRail Manager那边依然显示“Connection Lost”。提前知道版本,后面遇到问题能少走很多弯路。

3.2 备份VCSA和VxRail Manager配置

证书更新的过程中,最坏的情况是操作到一半,SSO配置损坏,vCenter服务起不来。虽然这种情况不常见,但一旦碰到,没有备份就想哭。vCenter Server Appliance自带的“备份与还原”功能,可以生成一个包含所有配置的备份文件。操作路径是:vSphere Client(如果还能登录)→ “备份与还原” → “配置备份”。如果vCenter已经登录不进去,也可以用SSH登录后执行:

# 基于文件备份的VCSA命令(7.0及以上版本) /usr/lib/applmgmt/backup/restore/backupManager

这个命令的使用方式比较繁琐,具体参数可以看帮助信息。我更推荐在环境健康的时候,定期把VCSA的备份任务交给vSphere Replication或者其他备份平台处理。至少在做证书更新这种操作前,确保有一份最近的可用备份。

VxRail Manager这边,虽然证书更新主要影响的是vCenter,但VxRail Manager自身的配置也建议备份一份。具体方法是登录VxRail Manager的Web界面,在“Settings”→“Support”→“Export”里可以导出配置包,或者通过VxRail的API接口执行备份。备份的粒度不需要太细,重点是记下vCenter的SSO域名、VxRail域管理员账户(通常是madmin@vsphere.local)、以及VxRail Manager的登录凭据。

3.3 检查时间同步

证书验证的核心逻辑就是判断“当前时间”是否在“证书有效期”范围内。如果vCenter或ESXi宿主的时间不同步,那么即使你刚更新完证书,系统内部校验时仍然可能认为证书无效。我遇到过一次很有意思的翻车现场:证书明明更新成功了,浏览器端也显示新证书的有效期到两年后,但vSphere Client还是提示“证书不可信”,排查了半天,最后发现是vCenter的NTP配置丢了,系统时间慢了两天。

所以在开始证书更新前,先做两件事:

  1. 在所有ESXi宿主机和vCenter上执行date命令,确认时间一致。
  2. 确认NTP配置正确,ESXi宿主和vCenter的NTP服务器指向同一个时间源。

如果发现时间不同步,先修正NTP,等待时间同步后再进行证书更新。千万不要带着时间偏差直接做证书操作,否则后面排查问题会非常痛苦。

3.4 提前申请维护窗口

证书更新过程中,vCenter的相关服务会多次重启,vCenter的管理面会短暂不可用。但要注意,VM本身不受影响,虚拟机上的业务可以正常对外提供服务,受影响的只是vCenter的管理功能。如果有同事正在使用vCenter做虚拟机迁移、模板部署、资源调整等操作,这些操作会全部中断。因此,在做证书更新前,一定要提前通知相关人员,申请一个独立的维护窗口。

维护窗口的大小,根据你选择的更新方案而定。RENEW通常比较快,操作时间大概在10到20分钟,加上验证时间,建议预留半小时到一个小时。RESET稍慢,但通常也不会超过一小时。如果是在VxRail环境里碰上“vCenter已经完全无法登录”的情况,预留时间要更宽松一些,因为中间可能要处理VxRail Manager的重新连接问题。

4. 实操核心:RENEW(续期)操作全流程

4.1 RENEW和RESET到底怎么选

先说结论:如果你的vCenter还能登录,或者vpxd服务还能正常启动,优先选择RENEW;如果证书已经失效,vCenter服务起不来,或者SSO服务已经无法完成认证,那就直接RESET。

RENEW的含义是,在现有VMCA根证书不变的前提下,重新为所有组件签发新的服务证书和SSO证书。它不会动VMCA根证书本身,所以整个信任链是连续的,VxRail Manager和vCenter之间的信任关系也不需要额外调整,更新完成后等待服务重启,就能恢复正常。这是VMware官方推荐的常规操作。

RESET的含义是,把vCenter的证书体系重置回初始状态,由VMCA重新生成根证书,并基于新的根证书签发所有组件证书。这个操作会把之前可能损坏或过期的整条信任链推倒重来,副作用是SSO的机器证书也会被替换,VxRail Manager那边的证书缓存需要重新同步。

还有一个容易混淆的操作叫Replace,含义是替换证书签发方,通常是把VMCA签发的证书替换为企业CA签发的证书。我在VxRail环境里不太建议做Replace,原因下文会详细说。

4.2 通过vSphere Client界面执行RENEW

如果你的vCenter还能正常登录,最直观的方式就是用vSphere Client界面操作。适用于vCenter 7.0及以上版本,8.0同样适用。

具体步骤如下:

  1. 使用administrator@vsphere.local登录vSphere Client。
  2. 进入“管理”→“证书”页面,系统会列出当前所有证书的状态和有效期。
  3. 点击“更新”按钮,输入vCenter的root密码。
  4. 系统会提示“此操作将重新生成所有证书,并重启vCenter相关服务”,确认后开始执行。
  5. 等待更新完成,页面会重新加载,然后重新登录vSphere Client即可。

这个操作背后的逻辑很简单:vCenter会调用VMCA,为各个组件重新生成RSA密钥对,并通过现有VMCA根证书签发新证书,最后把新证书部署到对应的服务上。整个过程不需要你手动编辑证书文件,也不涉及复杂的命令操作,适合初次接触证书更新的朋友。

需要注意的是,vSphere Client界面里的证书管理入口,只有在你能够正常登录vCenter时才可用。如果你已经登录不进去了,那就老老实实走CLI方式。

4.3 通过证书管理CLI执行RENEW

CLI方式是最通用、也是排障时最常使用的方案。即使vCenter页面打不开,只要还能SSH登录vCenter,一般都能通过这个工具完成证书更新。

登录vCenter的SSH后,执行:

/usr/lib/vmware-vmca/bin/certificate-manager

这时会进入交互式菜单,不同版本的选项编号略有差异,以实际界面为准。在vCenter 7.0和8.0环境里,常见的选项包括:

  • Option 1:Replace a machine SSL certificate with a custom certificate
  • Option 2:Replace a solution user certificate with a custom certificate
  • Option 3:Replace a VMCA root certificate with a custom CA
  • Option 4:Renew a VMCA signed certificate
  • Option 5:Regenerate a VMCA root certificate
  • Option 6:Replace the Machine SSL certificate with a VMCA Certificate
  • Option 7:Replace the solution user certificates with a VMCA Certificate
  • Option 8:Reset all Certificates
  • Option 9:Regenerate the vCenter SSO certificates

对于证书即将过期、但仍然有效的环境,选择Option 4“Renew a VMCA signed certificate”,系统会让你输入root密码,然后提示vpxd服务需要停止。确认后,工具会依次为vCenter的各个组件重新生成证书,并在最后提示重启vCenter服务。

这个操作最容易被忽略的点是:输入root密码之前,先检查root密码是否快要过期。如果系统提示你密码将在N天内过期,或者密码已经过期,那么证书更新过程中,很多调用root身份完成的操作会直接失败,报错五花八门,比如“Permission denied”或“Unexpected error”。我在项目里遇到过一次,当时排查了半天,最后发现就是root密码过期导致的。

4.4 RENEW完成后的服务检查

RENEW完成后,不要急着收工。vCenter输出的提示可能会有“The vpxd service will be restarted automatically”或“The vCenter Server is being restarted”。在vCenter 8.0之前的版本,RENEW完成之后vpxd服务会自动重启,但别的服务不一定。所以完成证书更新后,我一般会再执行一次全量服务状态检查:

service-control --status --all

查看哪些服务处于STOPPED状态,如果有异常,可以用下面的命令启动:

service-control --start --all

另外,在浏览器里访问vCenter的HTTPS地址,查看证书信息,确认新的证书有效期已经刷新。如果你用的是Chrome或Edge,可以直接点击地址栏旁边的小锁图标,查看证书的“有效期至”字段。如果显示的还是旧证书,很可能是浏览器缓存了旧SSL状态,清缓存或用无痕窗口再试一次。

5. 关键时刻:RESET(重置)操作的正确打开方式

5.1 vCenter完全无法登录时,只能RESET

证书已经过期、vCenter服务直接起不来的情况下,你的选择很受限。RENEW需要vpxd处于可运行状态,因为证书更新过程中要重启vpxd服务、调用SSO完成一系列校验。如果vpxd已经因为证书问题彻底起不来,RENEW执行到一半会卡死。这时候最有效的自救手段就是RESET。

RESET的操作步骤和RENEW类似,同样是进入证书管理CLI,但这次选择Option 8“Reset All Certificates”。系统会提示你输入root密码并确认操作。执行过程中,VMCA会重新生成一套全新的根证书和所有组件证书,vCenter的信任链等于重置到出厂状态。

这里有一个很重要的细节:RESET会把SSO的机器证书也一并替换。vCenter里的解决方案用户,例如vgfwd、vsphere-webclient等,它们的证书也会重新生成并重新映射。这意味着,原来那些基于旧证书建立的集成关系,全部会被打断。在VxRail环境里,最直接的影响就是VxRail Manager侧的证书缓存失效。

5.2 VxRail Manager如何重新信任新证书

RESET完成后,VxRail Manager大概率会显示“vCenter连接失败”。因为我们刚刚换掉了vCenter的整套证书,VxRail Manager那边还缓存着旧证书的指纹信息。此时有两种处理方式:

第一种,登录VxRail Manager的Web界面,进入“Settings”→“Credentials”,重新输入vCenter的SSO管理员账号和密码,保存后VxRail Manager会重新做一次证书校验和建立信任。这种方式最直观,适合第一次接触的运维朋友。

第二种,如果VxRail Manager界面也提示异常,可以SSH登录VxRail Manager,重启相关服务,让它强制重新解析vCenter的证书信息。命令大致是:

pcs --restart

注意,pcs命令在不同版本的VxRail Manager里的参数不完全一样。建议先执行pcs --help看看具体用法。如果重启服务后仍然无法连接,再走Web界面重新配置凭据。

5.3 RESET后是否需要再做一次RENEW

RESET完成之后,VMCA会重新生成根证书,所以vCenter的证书状态其实是“最新的”,不需要再做一次RENEW。如果你RESET完之后再跑一次RENEW,也不会出问题,只是浪费几分钟时间。但要注意,如果RESET之后VxRail Manager和vCenter的连接一直不正常,先不要盲目重复RESET,优先排查VxRail Manager侧的证书缓存和凭据同步问题。

6. 证书更新过程中的常见问题与排查实录

6.1 问题速查表

我把实际运维中经常遇到的证书问题整理成了表格,方便你对照排查。

现象可能原因处理建议
vCenter登录页提示证书不受信任浏览器缓存了旧证书清浏览器缓存、使用无痕窗口重新访问
vCenter页面打不开,显示503vpxd服务未启动,或证书过期导致SSO无法校验SSH登录执行service-control --status --all,查看vpxd日志
RENEW执行到一半报错root密码过期、时间不同步、SSO token失效检查root密码和NTP,修复后重新执行
证书更新后VxRail Manager显示连接失败VxRail Manager证书缓存未刷新,或SSO凭据过期登录VxRail Manager重新配置vCenter凭据,实在不行重启相关服务
更新完成后浏览器仍显示旧证书本地SSL状态缓存清除浏览器SSL状态,或者使用其他浏览器访问
证书更新后vCenter服务异常部分服务没有自动重启执行service-control --start --all强制拉起所有服务
VxRail Manager插件打开后提示“vCenter connection lost”VxRail Manager与vCenter之间的API token失效重新登录VxRail Manager,刷新vCenter连接状态

6.2 排查思路和日志位置

证书相关的问题,排查的核心逻辑是“顺着信任链找”。先从浏览器端看证书是否有效,再看vCenter服务是否正常,最后看VxRail Manager与vCenter之间的连接状态。

vCenter侧,最关键的日志文件在/var/log/vmware/vpxd/vpxd.log,里面记录了vpxd服务的启动过程和所有证书校验错误。如果你看到类似“Unable to verify certificate”或“Certificate has expired”的报错,那基本可以确认证书问题是罪魁祸首。另外,SSO相关的日志在/var/log/vmware/sso/目录下,如果疑似SSO签名证书有问题,可以去这里翻。

VxRail Manager侧,日志路径根据版本不同有所差异,推荐的做法是直接在Web界面导出诊断日志包,再在本地搜索关键词,比如“certificate”、“verify failed”、“connection lost”等。虽然日志量大,但优点是全面,适合排查隐藏问题。

6.3 一个让我印象深刻的排障案例

有一次给客户做VxRail的证书更新,环境正常时,vCenter和VxRail Manager都显示证书有效期还剩三天。我按计划走RENEW流程,操作很顺利,vCenter的新证书也刷出来了,有效期两年。结果VxRail Manager界面还是显示红色连接状态。我尝试在VxRail Manager后台重启服务,依然不行。最后登录VxRail Manager的数据库查证书指纹,才发现它内部记录的是旧证书的SHA256指纹,而我一直没有在VxRail Manager的Web界面上执行“重新连接”的动作,导致它根本没有机会去重新获取新证书。

后来我总结出一个经验:VxRail环境里做完证书更新,一定要主动去VxRail Manager的“连接状态”页面看一眼,不要等到VxRail Manager自动刷新。该手动触发的手动触发,该重新输入凭据的重新输入,别怕麻烦。这个提醒虽然简单,但对刚接触VxRail的朋友来说,真的能省下大量排查时间。

7. 个人实操心得:证书更新虽然是小事,但别掉以轻心

从普通vCenter环境转到VxRail环境的人,第一次做证书更新时,最容易掉进“不就是更新个证书嘛”的思维定式。但VxRail环境里的证书更新,牵扯到的信任方远比普通环境多。哪怕你只是给vCenter续个证书,也要把VxRail Manager、SSO、vpxd、解决方案用户全部当成“利益相关方”来看待,更新完成后逐个确认状态,才敢宣布操作结束。

另外,千万注意证书有效期监控。VxRail出厂时VMCA签发的证书默认有效期就是两年,很多企业设备多、人员杂,确实容易漏掉这个事。我建议在zabbix、Prometheus或者任意监控平台里,配置对vCenter 443端口的证书有效期探测,阈值设置为剩余90天告警。相比“每年翻一次证书状态”,自动化监控能帮你省下大量救火时间。如果你还没有这套监控,至少也要在日历上创建一个周期为“每22个月”的提醒任务,到时候主动检查证书剩余时间。

最后再说一个小技巧:证书更新前,把vCenter的root密码、SSO管理员账号、VxRail Manager的管理员账号信息,全部备份到一个密码管理器里,或者在本地文档里记录好。这样即使更新过程中出现异常需要远程协助,你也能第一时间把关键信息提供给支持人员,不至于手忙脚乱。证书更新这件事本身不复杂,但准备工作做到位,整个过程就是水到渠成的事。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询