Horizon 7 for Linux must meet certain operating system, Horizon 7, and vSphere platform requirements.

Supported Linux Versions for Horizon Agent

The following table lists the Linux operating systems that are supported on virtual machines in a desktop pool.

Table 1. Supported Linux Operating Systems for View Agent
Linux Distribution Architecture
Ubuntu 14.04
Note: Disable Compiz to avoid poor performance. See http://kb.vmware.com/kb/2114809 for more information.
Ubuntu 12.04 x64
RHEL 6.6 and 7.1 x64
CentOS 6.6 and 7.1 x64
NeoKylin 6 Update 1 x64
SLED 11 SP3/SP4 x64
SLED 12 is supported for installation and connections only. x64
Note: Linux agent has dependency packages on some Linux distribution. See Install Dependency Packages for Horizon Agent for more information.

Required Platform and Horizon 7 Software Versions

To install and use Horizon 7 for Linux, your deployment must meet certain vSphere platform, Horizon 7, and client requirements.

Table 2. Required platform and Horizon 7 software versions
Platform and Software Supported Versions
vSphere platform version vSphere 5.5 U3, vSphere 6.0 U2 or a later release.
Horizon environment Horizon 6 version 6.2.1 or Horizon 7 version 7.0.0.
Horizon client software
  • Horizon Client 4.0.0 for Windows
  • Horizon Client 4.0.0 for Linux
  • Horizon Client 4.0.0 for Mac OS X
  • HTML Access 4.0.0 on Chrome
  • Zero clients and mobile clients are not supported
Note: HTML Access does not support Audio Out.

TCP Ports Used by Linux Virtual Machines

View Agent and Horizon Clients use TCP ports for network access between each other and various View server components.

Table 3. TCP ports used by Linux virtual machines
Source Port Target Port Protocol Description
Horizon Client * Linux Agent 22443 TCP Blast if Blast Security Gateway is not used
Security Server, View Connection Server, or Access Point appliance * Linux Agent 22443 TCP Blast if Blast Security Gateway is used
View Agent * View Connection Server 4001, 4002 TCP JMS SSL traffic.
Note: For more information on TCP and UDP ports used by clients, see TCP and UDP Ports Used by Clients and View Agent in the Horizon Client and View Agent Security in View document.

Verify the Linux Account Used by Linux Virtual Machines

The following table lists the account name and account type used by Linux virtual machines.

Table 4. Account Name and Account Type
Account Name Account Type Used By
root Linux OS built-in Java Standalone Agent, mksvchanserver, shell scripts
vmwblast created by Linux Agent installer VMwareBlastServer
<current login user> Linux OS built-in or AD user or LDAP user python script

Recommended Video Memory (vRAM) Settings

When you create a Linux virtual machine in vSphere Client, configure the vRAM size as shown in Table 5. Set the vRAM size that is recommended for the number and resolution of the monitors that you configure for the virtual machine.

These vRAM size recommendations apply only to virtual machines that are configured to use 2D or vSGA graphics, which use the VMware driver. vDGA and NVIDIA GRID vGPU use NVIDIA drivers. The vRAM size set in vSphere Client has no affect on vDGA or NVIDIA GRID vGPU machines.

These vRAM sizes are the minimum recommendations. If more resources are available on the virtual machine, set the vRAM to larger values for improved video performance.

10 MB is the minimum vRAM size recommendation for a machine that is configured with a single monitor at the lowest resolution.

If a Linux virtual machine is configured with a smaller vRAM size than is recommended, the following issues might occur:

  • Desktop sessions might be disconnected right after the initial connection is made.
  • Autofit might fail to work. The desktop is then displayed in a small area of the screen.
Caution: Horizon 7 does not automatically configure the vRAM settings on Linux virtual machines, as happens on Windows virtual machines. You must configure the vRAM settings manually in vSphere Client.
Table 5. Recommended vRAM Settings for 2D or vSGA Graphics
vRAM Size Number of Monitors Maximum Resolution
10 MB 1 1600x1200 or 1680x1050
12 MB 1 1920x1440
32 MB 1 2560x1600
48 MB 2 2048x1536
80 MB 2 2560x1600
128 MB 3 2560x1600
128 MB 4 2560x1600

RHEL and CentOS only support this configuration on vSphere 5.5.

To support this configuration on Ubuntu, you must recompile the kernel and disable 3D. For information about how to disable 3D, see http://kb.vmware.com/kb/2114809 .

For NeoKylin, this configuration is not supported.

To connect to a RHEL 6.6, CentOS 6.6, or SLED 11 Sp3 or Sp4 desktops with multiple monitors, you must set the number of displays and the amount of video memory as described in Create a Virtual Machine and Install Linux. In addition, with the virtual machine (VM) powered off, you must edit the vmx file and set svga.maxWidth and svga.maxHeight according to the number and orientation (horizontal or vertical) of the displays. You also must set svga.autodetect to false. Then power on the VM. The general rule is that the svga.maxWidth and svga.maxHeight values must be large enough to support all the displays. To support 4 displays at the maximum resolution of 2560x1600, Edit Virtual Machine Settings > Options > General > Configuration > Parameters > Add Row to add the following parameters. You do not need to modify the parameter svga.vramSize.
If you have multiple monitors, you must set these parameters. Otherwise, you might encounter one or more of the following problems:
  • Only one monitor displays correctly. The other monitors might be black or mirror another monitor.
  • A keystroke is displayed multiple times.
  • The desktop becomes very slow.
If you encounter an autofit issue with the recommended settings, you can specify a larger vRAM size. vSphere Client permits a maximum vRAM size of 128 MB. If your specified size exceeds 128 MB, you must modify the vmx file manually. The following example specifies a vRAM size of 256 MB:
svga.vramSize = "268435456"
Note: To configure four monitors for a RHEL 7.1 machine that uses 2D rendering or 3D rendering with vSGA, set a maximum resolution of 2048x1536 for each monitor. To configure a RHEL 7.1 machine to use up to three monitors, set a maximum resolution of 2560x1600 for each monitor.

To improve performance for a RHEL 7.1 machine in a vSGA multiple-monitor environment, set the 3D Memory setting for the virtual machine to 1 GB or larger, and configure 4 vCPUs for the machine. If you configure four monitors at 2048x1536 resolution on a RHEL 7.1 machine, set Memory to 4 GB, and configure 4 vCPUs for the machine.

Recommended vCPU and Shared Memory Settings to Support Multiple Monitors

To improve desktop performance with multiple monitors, configure at least two vCPUs for a Linux virtual machine.

Also make sure that the virtual machine has adequate shared memory to support multiple monitors. Determine the current maximum shared memory size ( shmmax) with the following command:
sysctl -a | grep shm
If shared memory is small, increase the maximum size with the following command:
sysctl -w "kernel.shmmax=65536000"

Recommended vCPU Settings for Video Playback

For a Linux virtual machine that is not using vDGA graphics, video playback on high-resolution monitors might be uneven if too few vCPUs are configured. Configure additional vCPUs, such as four vCPUs, to improve the performance of video playback.

Monitor Resolution Supported by vDGA and NVIDIA GRID vGPU

A virtual machine that is configured to use vDGA or NVIDIA GRID vGPU can support up to 4 monitors with a maximum resolution of 2560x1600.