An open API service indexing awesome lists of open source software.

https://github.com/devops-works/ansible-varnish

Ansible Role that installs Varnish Debian/Ubuntu Linux. Stripped down version from geerlingguy
https://github.com/devops-works/ansible-varnish

ansible-role varnish

Last synced: about 1 year ago
JSON representation

Ansible Role that installs Varnish Debian/Ubuntu Linux. Stripped down version from geerlingguy

Awesome Lists containing this project

README

          

# Ansible Role: Varnish

An Ansible Role that installs Varnish 5 on Debian/Ubuntu Linux.

Stripped down version from [geerlingguy](https://github.com/geerlingguy/ansible-role-varnish).

## Role Variables

Available variables are listed below, along with default values (see
`defaults/main.yml`):

varnish_config_path: /etc/varnish

The path in which Varnish configuration files will be stored.

varnish_use_default_vcl: true

Whether to use the included (simplistic) default Varnish VCL, using the
backend host/port defined with the next two variables. Set this to
`false` and copy your own `default.vcl` file into the
`varnish_config_path` if you'd like to use a more complicated setup. If
this variable is set to `true`, all other configuration will be taken
from Varnish's own [default
VCL](https://www.varnish-cache.org/trac/browser/bin/varnishd/default.vcl?rev=3.0).

varnish_default_vcl_template_path: default.vcl.j2

The default VCL file to be copied (if `varnish_use_default_vcl` is
`true`). Defaults the the simple template inside
`templates/default.vcl.j2`. This path should be relative to the
directory from which you run your playbook.

varnish_default_backend_host: "127.0.0.1"
varnish_default_backend_port: "8080"

Some settings for the default "default.vcl" template that will be copied
to the `varnish_config_path` folder. The default backend host/port could
be Apache or Nginx (or some other HTTP server) running on the same host
or some other host (in which case, you might use port 80 instead).

varnish_listen_port: "80"

The port on which Varnish will listen (typically port 80).

varnish_secret: false

The secret/key to be used for connecting to Varnish's admin backend (for
purge requests, etc.). Must be redefined (hint: use uuidgen).

varnish_admin_listen_host: "127.0.0.1"
varnish_admin_listen_port: "6082"

The host and port through which Varnish will accept admin requests (like
purge and status requests).

varnish_storage: "file,/var/lib/varnish/varnish_storage.bin,256M"

How Varnish stores cache entries (this is passed in as the argument for
`-s`). If you want to use in-memory storage, change to something like
`malloc,256M`. Please read Varnish's [Getting Started
guide](https://www.varnish-software.com/static/book/Getting_started.html)
for more information.

## Dependencies

None.

## Example Playbook

- hosts: webservers
vars_files:
- vars/main.yml
roles:
- { role: leucos.ansible-varnish }

*Inside `vars/main.yml`*:

varnish_secret: "[secret generated by uuidgen]"
varnish_default_backend_host: 81
... etc ...

## License

MIT / BSD

## Author Information

This role was created in 2014 by [Jeff
Geerling](http://jeffgeerling.com/), author of [Ansible for
DevOps](http://ansiblefordevops.com/) and trimmed down here by
[leucos](https://github.com/leucos).