Search
Varnish Enterprise

Installation

The Varnish Enterprise offering has Varnish Enterprise in its core, and most other components interact with it in one way or another. It is recommended that you install this first, but some other components (like the Varnish Administration Console) can be installed independently of Varnish Cache plus.

When you sign up for Varnish Enterprise you will get a welcome letter with the necessary information to install Varnish Enterprise. The letter will include a token that will be unique to your account, so it will be represented as TOKEN in this guide.

Installing Varnish Enterprise is basically a two step process:

  1. Configure the repository for your Linux distribution
  2. Install the software using the built in package manager

Customers who cannot locate their user name and password should contact support@varnish-software.com.

Supported platforms

Varnish Enterprise is distributed in prepackaged form for the most common Linux operating system distributions.

The list of supported distributions are:

  • RedHat Enterprise Linux 7
  • RedHat Enterprise Linux 8
  • Ubuntu Linux 16.04 LTS (xenial)
  • Ubuntu Linux 18.04 LTS (bionic)
  • Ubuntu Linux 20.04 LTS (focal)
  • Debian 9.0 (stretch)
  • Debian 10.0 (buster)

Legacy versions have different sets of supported platforms.

Varnish Enterprise is supported on 64bit systems with Intel or AMD processors (x64).

Repository configuration Varnish Enterprise

RedHat Enterprise Linux and derivatives

To use our Varnish Enterprise repositories, put the following in /etc/yum.repos.d/varnish-enterprise-6.0.repo:

[varnish-enterprise-60]
name=varnish-enterprise-60
baseurl=https://TOKEN:@packagecloud.io/varnishplus/60/el/$releasever/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://TOKEN:@packagecloud.io/varnishplus/60/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

On RHEL/CentOS 8 only, you need to disable the varnish dnf module

dnf -y module disable varnish

You can then enable the epel-release repository providing some required dependencies before installing the varnish-plus package:

RHEL 7:

subscription-manager repos --enable rhel-*-optional-rpms \
                           --enable rhel-*-extras-rpms \
                           --enable rhel-ha-for-rhel-*-server-rpms
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install -y varnish-plus

Other:

yum install -y epel-release
yum install -y varnish-plus

Ubuntu / Debian

Packages in our repositories are signed and distributed via HTTPS. You need to enable HTTPS support in the package manager and install our public key first:

apt-get install -y apt-transport-https
curl -L https://TOKEN:@packagecloud.io/varnishplus/60/gpgkey | apt-key add -

To use our Varnish Enterprise repositories, put the following in /etc/apt/sources.list.d/varnish-enterprise-6.0.list:

# be sure to replace "DIST" with "ubuntu" or "debian", and "RELEASE" with
# "xenial", "bionic" or "stretch" depending on your exact platform

# Varnish Enterprise 6.0 and VMODs
deb https://TOKEN:@packagecloud.io/varnishplus/60/DIST/ RELEASE main

If you are using Debian 9.0 (stretch) put the following in /etc/apt/sources.list.d/sources.list:

deb http://deb.debian.org/debian stretch-backports main

Finish by updating the apt database and installing the varnish-plus package:

apt-get update
apt-get install -y varnish-plus

Installation Notes

Transparent Huge Pages (THP)

Transparent Huge Pages is a Linux kernel feature to improve performance by more efficiently using a processors’ memory mapping hardware. This is a feature that is enabled by default on most recent Linux distributions.

Varnish does not perform well with this option enabled. As such, Transparent Huge Pages should be set to either madvice or never on any system where Varnish is operating.

The procedure to disable THP will vary based on the distribution being used. Please consult with the manual for your distribution for the correct steps to take.

For example, on RHEL 7 and later to disable THP add or modify the transparent_hugepage=never kernel parameter in /etc/default/grub.

The shared memory log

The shared memory log contains file which are used for communicating logs and counters to log consumers like varnishncsa and varnishlog. In some circumstances, having these files on a physical medium can create performance problems. For this reason it is strongly recommended to mount the /var/lib/varnish/ directory as a tmpfs file system.

If you choose to limit the size of the tmpfs file system, a reasonable size is three times the varnishd parameter vsl_space.

Installing Varnish modules

In 6.0 many Varnish modules (VMODs) are embedded in the varnish-plus package, and no extra installation is required.

Modules with third-party package dependencies (libcurl, libmemcached) are available in a separate package called varnish-plus-vmods-extra. This package is not installed by default.

The source code for some of these VMODs are available at https://github.com/varnish/varnish-modules/.