前情提要
PVE在使用vncproxy接口时发现其最大接入100个端口,在实际场景可能造成瓶颈。
绕过方案
利用PVE qemu的配置args: -vnc ip:port
参数,可以为虚拟机添加一个专用的vnc端口。
如果合理利用这个配置,每一个虚拟机都可以有一个独立的端口而不收到API接口的限制。
但是其无法被web端识别,所以需要使用websockify进一步封装。
|
|
以上述方法运行websockify可以对虚拟机的vnc端口进行代理,从而使得novnc识别vnc的tcp socket。
同时,需要对--token-source
参数进行封装,%s
是websockify请求代理源地址的token参数,这个API地址需要范围一个json,例如:
|
|