关于vCenter 503报错

现象:

打开我们的服务器界面(虚拟机)报错:

503      服务器问题       当前服务不可用。web服务器不能处理HTTP请求,可能是临时超载或者是服务器进行停机维护。

错误提示是由 VMware vCenter Server(vCenter Servoer)引起的,表明 vCenter Server Web 服务无法连接到指定的管道端点。这可能会导致 Web 界面无法访问或出现问题。

原因:

可能问题:服务未启动、配置错误、网络问题

网络:

这里由于有返回码,表明服务器是可以通信的,并且会做出503的回应。进而判断你网络没有出现问题

服务器繁忙(这是503常发生的原因一般公网环境,但私网一般不会有这种情况):

但由于出现的是503可能表明:现在服务器繁忙,可以等几分钟换一台客户端再尝试登录。

检查vCenter依赖的服务是否全部启动:

确保 vCenter Server 和任何外部 Platform Services Controller (PSC) 设备上所有必需的服务均已启动、正在运行且正常运行。

可以使用Xshell连接到服务器使用 :   service-control --list  查看有些什么服务启动了

其中有三个核心服务必须启动:
 

   - `vmware-vpxd`:vCenter Server 的核心服务,负责整个管理平台。
   - `vmware-updatemgr`:用于管理和执行虚拟机和 ESXi 主机的更新。
   - `vmware-sps`:用于管理和配置 vSphere 存储策略。

这里启动服务失败可能和配置  资源   证书有关:

1. 确保 vCenter Server 所依赖的数据库服务(例如 VMware Postgres)已经正常启动。
2. 检查 vCenter Server 的配置文件是否正确,特别是与数据库连接、证书等相关的配置。
3. 检查 vCenter Server 所使用的证书是否有效并未过期。
4. 确保 vCenter Server 所在的主机或虚拟机有足够的系统资源(CPU、内存、磁盘空间等)。
5. 确保网络连接正常,vCenter Server 能够与其他必需的组件进行通信。
 

这里之前都是正常使用的,突然之间不能用了 优先考虑资源和证书:

通过查看日志文件(使用指令 shell 进入linux 系统) 在日志文件 /var/log/vmware/vpxd/vpxd.log查看vCenter Server 运行时的详细信息

 

 这里的sso facade 创建失败 可能就是前面的证书过期导致的。

sso facade(sso令牌):安全令牌服务(SSO)在 vCenter Server 环境中起着关键的作用,用于管理用户的身份验证和权限。如果 SSO 遇到问题,可能会影响整个 vSphere 环境的功能。因此,在处理 503 错误时,除了检查 vCenter Server 本身的状态外,还应该考虑与 SSO 相关的问题。

资源使用情况可以在vCenter上直接查看

STS证书过期解决方案:

KB(VMware Knowledge Baseicon-default.png?t=N7T8https://kb.vmware.com/s/article/76719)上下载 fixsts.sh  :验证是否STS是否过期 

使用以下代码确定具体那些证书过期了

for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list | grep -v TRUSTED_ROOT_CRLS); do echo "[*] Store :" $store; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $store --text | grep -ie "Alias" -ie "Not After";done;

root@photon-machine [ /opt ]# for store in $(/usr/lib/vmware-vmafd/bin/vecs-cli store list | grep -v TRUSTED_ROOT_CRLS); do echo "[*] Store :" $store; /usr/lib/vmware-vmafd/bin/vecs-cli entry list --store $store --text | grep -ie "Alias" -ie "Not After";done;
[*] Store : MACHINE_SSL_CERT
Alias : __MACHINE_CERT
            Not After : Aug  2 16:19:13 2023 GMT
[*] Store : TRUSTED_ROOTS
Alias : dd4002d6f8cf9ead591ada2c4cdc6e0dddace919
            Not After : Jul 28 04:18:42 2031 GMT
[*] Store : machine
Alias : machine
            Not After : Aug  2 04:10:52 2023 GMT
[*] Store : vsphere-webclient
Alias : vsphere-webclient
            Not After : Aug  2 04:11:03 2023 GMT
[*] Store : vpxd
Alias : vpxd
            Not After : Aug  2 04:11:13 2023 GMT
[*] Store : vpxd-extension
Alias : vpxd-extension
            Not After : Aug  2 04:11:24 2023 GMT
[*] Store : SMS
Alias : sms_self_signed
            Not After : Aug  2 04:30:22 2031 GMT

这里遍历每个证书存储的别名和到期时间
标红为过期的展示

确定是STS过期之后: KB(VMware Knowledge Baseicon-default.png?t=N7T8https://kb.vmware.com/s/article/76719) 下载修复脚本    fixsts.sh

先做一下快照

执行脚本fixsts.sh

重启所有服务

使用证书管理工具(certificate-manager)选择8来全部更新证书   这里需要SSO账户和密码 

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

这里选项都可以默认 对于后面必填值直接使用PSC的IP即可

若SSO账户和密码忘记可以重置(密码管理工具为vdcadmintool)

/usr/lib/vmware-vmdir/bin/vdcadmintool

 更新证书又报错:

这里搜索到表示所用6.5版本过低,存在漏洞 可以升级到u3

对于数据加密证书过期

How to replace an expired data-encipherment certificate on vCenter Server (88548) (vmware.com)

运行后脚本更新数据加密证书

如果更新之后证书还是显示过期

官网下载脚本删除掉原有过期的证书

VMware Knowledge Base

方案2 VCIP因为证书过期无法访问

如果已经过期了无法设置 那么可以先将系统的时间设置到过期之前进行更新后再改回来

https://VCSAIP:5480

date -s 12/4/2023(时间)

hwclock -w

service-control --start --all

登录https://VCSAIP

续订证书

STS证书更新需要使用脚本在终端中运行

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值