You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VMware HTML Console SDK WebSocket连接失败技术求助

排查VMware WMKS WebSocket连接失败问题

问题背景

通过Python调用AcquireMksTicket()获取了虚拟机的MKS连接信息,但使用WMKS的WebSocket连接时失败,错误提示:

WebSocket connection to 'wss://[IP]:[Port]/ticket/[Ticket-ID]' failed

获取MKS Ticket的Python代码

try:
    ticket = vm.AcquireMksTicket()
    print("VNC connection information for {}:".format(vm_name))
    print("Host: {}".format(ticket.host))
    print("Port: {}".format(ticket.port))
    print("Ticket: {}".format(ticket.ticket))
    print("SSL thumbprint: {}".format(ticket.sslThumbprint))
except vmodl.MethodFault as e:
    print("Failed to get VNC connection information: {}".format(e.msg))
    exit(1)

获取到的连接信息

VNC connection information for dev-test - 10.xxxxxxxxxxxx:
Host: ch1-dev-esxi1.lab.local
Port: 902
Ticket: 52xxxxxxxxxxxxxxxxxxxxxxxx
SSL thumbprint: [Thumbprint]

前端连接代码片段

<!DOCTYPE html>
... [Rest of the HTML code] ...
<script>
var wmks = WMKS.createWMKS("wmksContainer",{})
  .register(WMKS.CONST.Events.CONNECTION_STATE_CHANGE, function(event, data){
    if(data.state == WMKS.CONST.ConnectionState.CONNECTED){
      console.log("connection state change: connected");
    }
  });
wmks.connect("wss://ch1-dev-esxi1.lab.local:902/ticket/52dxxxxxxxxxxxxxxx");
</script>
</body>
</html>

已确认前置条件:

  • 虚拟机运行正常
  • VMware Tools为最新版本(12288,12.0.0)且运行正常

故障排查方向

1. 网络连通性验证

  • 检查前端设备能否解析并ping通ch1-dev-esxi1.lab.local,若解析有问题,直接替换为ESXi主机IP尝试连接
  • 用telnet ch1-dev-esxi1.lab.local 902或nc -zv ch1-dev-esxi1.lab.local 902测试端口是否开放,排除防火墙/安全组拦截
  • 确认ESXi主机防火墙规则中,已允许"VMware Remote Console (MKS)"的902端口流量

2. SSL证书与Thumbprint配置

  • WMKS的WSS连接需信任ESXi的SSL证书,若前端设备未信任该证书,会直接导致连接失败
  • 在connect方法中传入SSL thumbprint参数(注意去掉空格、统一大小写,格式匹配获取到的thumbprint):
    wmks.connect("wss://ch1-dev-esxi1.lab.local:902/ticket/52dxxxxxxxxxxxxxxx", {
      sslThumbprint: "[你的SSL thumbprint]"
    });
    

3. Ticket有效性检查

  • MKS Ticket有有效期(默认约10分钟),重新获取新Ticket后再尝试连接
  • 核对前端代码中的Ticket与Python输出的内容,确保无截断、拼写错误

4. ESXi主机与虚拟机配置

  • 检查ESXi主机的"VMware Remote Console (MKS)"服务是否正常运行
  • 确认虚拟机的"Remote Display"设置中,已启用MKS访问,且未限制连接IP

5. WMKS版本兼容性

  • 确保使用的WMKS库版本与ESXi/vCenter版本匹配,不同版本的WMKS在连接协议、参数要求上可能存在差异

内容的提问来源于stack exchange,提问作者Usman Rafiq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 08:33:41