通过 HTML 控制台 SDK 连接到 VMware VNC 控制台访问时遇到错误

通过 HTML 控制台 SDK 连接到 VMware VNC 控制台访问时遇到错误

我在通过 VMware 的 HTML 控制台 SDK 访问 VNC 控制台时遇到了挑战,非常希望得到一些指导。以下是我所做的工作以及遇到的问题的概述:

采取的步骤:

  1. 配置:我使用了 VMware 的 HTML 控制台 SDK,它涉及将 WebMKS 脚本加载到 HTML 页面中。此设置需要 jQuery、jQueryUI、访问 vCenter Server 和 ESXi 主机、本地 HTTP 服务器以及上述库。
  2. 遵循的程序
  • 下载并解压 HTML 控制台 SDK。
  • 为控制台显示创建了一个 HTML 页面。
  • 管理 vCenter Server 和 ESXi 主机的安全证书。
  • 已获得 WebMKS 票证。
  • 在函数中输入了 ESXi 主机 IP 和 VM 的 WebMKS 票证wmks.connect
  • 使用提供的 JavaScript 示例代码作为远程 HTML 控制台。
  1. 票证生成:我使用 Python 脚本连接到 vSphere 服务器、定位虚拟机并生成 MKS 票证。

当前设置和问题

  • 票证生成和VM控制台连接代码托管在服务器上(IP:xx.xxx.xxx.100)。
  • 我正在尝试连接到位于 ESXi 主机(IP:xx.xxx.xxx.80)上并由 vSphere Client(IP:xx.xxx.xxx.81)管理的虚拟机(IP:xx.xxx.xxx.83)。

问题:我收到失败的 WebSocket 连接,错误为:“Web 套接字连接 wss://xx.xxx.xxx.80:902/ticket/tickerID 失败。” 也尝试了 443 端口

任何建议或指示都将不胜感激!另外,还有其他人遇到过类似的问题吗?

答案1

问题现已解决。该问题与我的 Python 脚本中以下行创建的票据有关

ticket = vm.AcquireMksTicket()

我用下面这行替换了上面这行。

 ticket = vm.AcquireTicket(ticketType='webmks')

AcquireMksTicket 仅适用于非常旧的 vSphere 版本。

相关内容