Ansible: Hashicorp Consul
[csit.git] / resources / tools / testbed-setup / ansible / roles / consul / defaults / main.yaml
1 ---
2 # file: roles/consul/defaults/main.yaml
3
4 # Inst - Prerequisites.
5 packages: "{{ packages_base + packages_by_distro[ansible_distribution | lower] + packages_by_arch[ansible_machine] }}"
6
7 packages_base:
8   - "cgroup-bin"
9   - "curl"
10   - "git"
11   - "libcgroup1"
12   - "unzip"
13   - "htop"
14 packages_by_distro:
15   ubuntu:
16     - []
17 packages_by_arch:
18   aarch64:
19     - []
20   x86_64:
21     - []
22
23 # Inst - Download Consul.
24 consul_architecture_map:
25   amd64: "amd64"
26   x86_64: "amd64"
27   armv7l: "arm"
28   aarch64: "arm64"
29   32-bit: "386"
30   64-bit: "amd64"
31 consul_architecture: "{{ consul_architecture_map[ansible_architecture] }}"
32 consul_version: "1.8.6"
33 consul_pkg: "consul_{{ consul_version }}_linux_{{ consul_architecture }}.zip"
34 consul_zip_url: "https://releases.hashicorp.com/consul/{{ consul_version }}/{{ consul_pkg }}"
35
36 # Inst - System paths.
37 consul_bin_dir: "/usr/local/bin"
38 consul_config_dir: "/etc/consul.d"
39 consul_data_dir: "/var/consul"
40 consul_inst_dir: "/opt"
41 consul_lockfile: "/var/lock/subsys/consul"
42 consul_run_dir: "/var/run/consul"
43 consul_ssl_dir: "/etc/consul.d/ssl"
44 nomad_config_dir: "/etc/nomad.d"
45
46 # Conf - Service.
47 consul_node_role: "both"
48 consul_restart_handler_state: "restarted"
49 nomad_restart_handler_state: "restarted"
50 systemd_resolved_state: "stopped"
51
52 # Conf - User and group.
53 consul_group: "consul"
54 consul_group_state: "present"
55 consul_manage_group: true
56 consul_manage_user: true
57 consul_user: "consul"
58 consul_user_groups: [ docker, nomad, consul, root ]
59 consul_user_state: "present"
60
61 # Conf - nomad.d/consul.hcl
62 consul_nomad_integration: true
63 consul_certificates:
64   - src: "{{ vault_consul_ca_file }}"
65     dest: "{{ consul_ca_file }}"
66   - src: "{{ vault_consul_cert_file }}"
67     dest: "{{ consul_cert_file }}"
68   - src: "{{ vault_consul_key_file }}"
69     dest: "{{ consul_key_file }}"
70
71 consul_address: "127.0.0.1:8500"
72 consul_auth: ""
73 consul_auto_advertise: true
74 consul_checks_use_advertise: false
75 consul_server_service_name: "nomad"
76 consul_client_service_name: "nomad-client"
77 consul_server_auto_join: false
78 consul_client_auto_join: false
79 consul_ssl: true
80 consul_verify_ssl: true
81 consul_ACL_token_set: false
82 consul_token: "consul_token_default"
83
84 # Conf - base.hcl
85 consul_bind_addr: "{{ ansible_default_ipv4.address }}"
86 consul_client_addr: "0.0.0.0"
87 consul_datacenter: "dc1"
88 consul_disable_update_check: true
89 consul_enable_debug: false
90 consul_enable_syslog: true
91 consul_log_level: "INFO"
92 consul_node_name: "{{ inventory_hostname }}"
93 consul_retry_join: true
94 consul_bootstrap_expect: 2
95 consul_encrypt: ""
96 consul_ca_file: "{{ consul_ssl_dir }}/ca.pem"
97 consul_cert_file: "{{ consul_ssl_dir }}/consul.pem"
98 consul_key_file: "{{ consul_ssl_dir }}/consul-key.pem"
99 consul_ui: true
100 consul_recursors:
101   - 1.1.1.1
102   - 8.8.8.8
103
104 # Conf - ports.hcl
105 consul_port_dns: 53
106 consul_port_http: 8500
107 consul_port_https: 8501
108 consul_port_grpc: 8502
109 consul_port_serf_lan: 8301
110 consul_port_serf_wan: 8302
111 consul_port_server: 8300
112
113 # Conf - services.json
114 consul_services: false