Enable VNC on VMware Deployments

You can enable VNC on VMware deployments for OpenStack. For VNC console to work, the Platform9 appliance, the ESXi hosts, and the browser where the VNC is being accessed must have IP connectivity to each other.

VMware has provided a vSphere Installation Bundle (VIB) which can be used to open the required firewall ports on ESXi hosts for VNC. The VIB can be found on GitHub.

Follow the steps given below to enable VNC on VMware.

  1. Run the following command to change the ESXi host acceptance level to CommunitySupported.
      esxcli software acceptance set --level=CommunitySupported
  2. Download openstackvncfirewall.zip and upload it to a datastore that is accessible from the ESXi hosts.
  3. Install the VIB by running the following command.
      esxcli software vib install -d "/vmfs/volumes/datastore1/patch-directory/openstackvncfirewall.zip
  4. Run the following commands to verify that the firewall rules were applied and the ports are open.
      esxcli network firewall ruleset list | grep vnc
      # vnc true is the output for the above command.
      esxcli network firewall ruleset rule list | grep vnc
      # Details of VNC rule i.e. port range, protocol, direction are displayed in the output for the above command. For example, vnc Inbound TCP Dst 5900 9999

If you wish to enable VNC console for existing VMs, power off the VM and perform one of the following. This is an optional step.

  • Using vSphere Web Client, go to Edit settings>VM Options tab>Advanced> Edit configuration, and add the settings mentioned below, directly on ESXi Host.
  • Alternatively, edit the VMX file of the corresponding VM and add the following lines.
    RemoteDisplay.vnc.enabled = "TRUE"
    RemoteDisplay.vnc.port = <port number between 5900 and 6199>