vapi-endpoint 服务启动失败导致 vCenter Web Client 无法登录

vapi-endpoint 服务启动失败导致 vCenter Web Client 无法登录

再次记录,今天遇到的一个非常严重的认证问题,就是突然vCenter Web Client 无法登录,提示 “An error occurred while fetching identity providers. Please try again later. If problem persists, contact your administrator.”。查了一下 竟然找到KB,VMware KB 375109,原来这是由于 vapi-endpoint 服务无法启动,且解决方案用户证书无效导致的。

故障现象还原

1. 登录失败

在 vCenter Web Client 中尝试登录时,会收到以下错误信息:

An error occurred while fetching identity providers. Please try again later. If problem persists, contact your administrator.

2. 服务状态

# 检查 vapi-endpoint 服务状态
service-control --status vapi-endpoint

输出可能显示服务未运行。

3. 证书状态

# 检查所有证书的状态
for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo STORE $i; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $i --text | egrep "Alias|Not After"; done

输出可能显示多个证书已过期:

STORE MACHINE_SSL_CERT
Alias : __MACHINE_CERT
            Not After : Expired date
STORE TRUSTED_ROOTS
Alias : 97cadaa2a7f732e1c93a9d53fbd325b24a105f53
            Not After : Expired date
...

4. STS 日志

/var/log/vmware/sso/vmware-identity-sts.log 文件中,会看到以下错误:

Solution user cert is not valid.

核心原因分析

根据 KB 375109 的解释,问题的根本原因是:

解决方案用户证书无效或过期

虽然某些证书(如 machine_ssl 和 STS 证书)可能显示为有效,但解决方案用户证书可能已过期或无效,导致 vapi-endpoint 服务无法启动。

解决方法

1. 使用 vSphere Certificate Manager(推荐)

# 连接到 vCenter Server Appliance via SSH
ssh root@

 

# 进入 bash 模式(如果需要)
shell

 

# 启动 vSphere Certificate Manager
/usr/lib/vmware-vmca/bin/certificate-manager

#### 选择选项 6

在 vSphere Certificate Manager 菜单中,选择 选项 6:Replace Solution user certificates with VMCA certificates

#### 填写模板

按照提示填写必要的信息,包括:

  • 管理员密码
  • 组织和组织单位信息
  • 密钥大小和有效期
  • 其他必填字段

#### 等待证书替换过程完成

系统将重新生成并替换解决方案用户证书。

2. 使用 vCert 脚本(备选方案)

如果更倾向于使用脚本化方法,可以参考 KB 文章中提到的 vCert 脚本:”KB vCert – Scripted vCenter expired certificate replacement”。

3. 验证解决方案

# 检查证书状态
for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do echo STORE $i; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $i --text | egrep "Alias|Not After"; done

 

# 检查服务状态
service-control --status --all

 

# 检查 vapi-endpoint 服务是否已启动
service-control --status vapi-endpoint

 

# 验证登录
# 使用 Web Client 或 PowerCLI 进行测试
Connect-VIServer -Server  -User  -Password 

预防措施

1. 定期检查证书状态

# 创建一个定期检查证书状态的脚本
cat > check_certs.sh << 'EOF'
#!/bin/bash
for i in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list); do
    echo "=== STORE: $i ==="
    /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $i --text | grep -E "Alias|Not After"
    echo "-------------------"
done
EOF

 

# 使其可执行
chmod +x check_certs.sh

 

# 运行脚本
./check_certs.sh

2. 设置证书过期警报

# 使用 cron 定期运行证书检查脚本
crontab -e
0 0 1 * * /root/check_certs.sh > /var/log/cert_check.log 2>&1

3. 使用 VMCA 管理证书

# 配置 VMCA 自动更新证书(如果支持)
esxcli system settings advanced list | grep -i vmca

 

# 检查 VMCA 配置
/usr/lib/vmware-vmca/bin/vmcacli --help

故障排查

1. 证书替换过程中遇到问题

# 检查日志文件
tail -f /var/log/vmware/applmgmt/applmgmt.log
tail -f /var/log/vmware/vmca/vmca.log

2. 服务仍然无法启动

# 尝试重启相关服务
service-control --stop --all
service-control --start --all

 

# 检查服务状态
service-control --status --all

Reference: VMware KB 375109

有VM问题需要协助?

免费试用VMware技术助理(已接Deepseek)!即时解答VM难题

→ 🤖VM技术助理

解析和诊断各类vCenter错误,ESXi日志,虚拟机vmware.log

→ 📕VMware日志分析器

图书推介 - 京东自营

24小时热门

还有更多VMware问题?

免费试下我们的VMware技术助理(已接Deepseek)!即时解答VM难题 → 🤖VM技术助理

试试 📕VMware日志分析器 免费诊断各类vCenter错误,ESXi日志,虚拟机vmware.log等等

########

扫码加入VM资源共享交流微信群(请备注加群

需要协助?或者只是想技术交流一下,直接联系我们!

推荐更多

使用 Host Profile 重置 ESXi 主机 root 密码
运维必备

使用 Host Profile 重置 ESXi 主机 root 密码

使用 Host Profile 重置 ESXi 主机 root 密码。ESXi 主机 root 密码忘记了?无法登录?本文介绍如何使用 Host Profile 功能重置 ESXi 主机的 root 密码。 本文针对该问题提供了深度剖析与实测解决方案。

ESXi无法挂载NFS 4.1卷的故障分析与解决方案
运维必备

ESXi无法挂载NFS 4.1卷的故障分析与解决方案

ESXi 无法挂载 NFS 4.1 卷的故障分析与解决方案。ESXi 主机无法挂载 NFS 4.1 卷,操作超时并提示服务器不支持 NFS 4.1 协议。本文分析原因并提供解决方案。 本文针对该问题提供了深度剖析与实测解决方案。

ESXi管理网络vmk0从Access迁移到Trunk的配置
运维必备

ESXi管理网络vmk0从Access迁移到Trunk的配置

ESXi 管理网络 vmk0 从 Access 迁移到 Trunk 配置。将 ESXi 管理网络从 Access 端口迁移到 Trunk 配置时,如何避免网络隔离和 vCenter 连接丢失?本文提供分阶段迁移方案。 本文针对该问题提供了深度剖析与实测解决方案。

SRM警告:SDRS集群中复制VM自动Storage vMotion失败
运维必备

SRM警告:SDRS集群中复制VM自动Storage vMotion失败

SRM 警告:SDRS 集群中复制 VM 自动 Storage vMotion 失败。当 SDRS 集群中的复制 VM 执行自动 Storage vMotion 时,SRM 会发出警告并阻止操作。本文解析警告原因并提供架构优化建议。 本文针对该问题提供了深度剖析与实测解决方案。

//omg10.com/4/9119499