consul (WIP)

Deploys HashiCorp Consul servers and clients.

This role bootstraps a cluster just fine, but I need to dig into the other features like Consul Connect and Snapshots

Dependencies

hashicorp-repo

Role Variables

Name Default Value Comment
consul_state present
consul_version "" By default, we just insure that Consul is installed
consul_servers_group consul_servers Ansible inventory group containing the server node(s)
consul_configure_firewalld true
consul_force_bootstrap false Force the reinitialization of the cluster
consul_common_configuration {}
consul_server_configuration {} See below
consul_client_configuration {}

The consul_*_configuration variables are merged with their respective consul_*_configuration_defaults variable found in the vars/ directory. You should structure these exactly as you would the resulting JSON config file. See the official docs for available options.

Example Playbook

- hosts: consul_cluster
  roles:
    - role: consul
      vars:
        consul_version: 1.11.2
        consul_server_configuration:
          ui_config:
            enabled: true