Files
ansible/consul.yml
2025-10-10 11:07:34 +00:00

65 lines
1.4 KiB
YAML

---
- hosts: servers
become: true
tasks:
- name: install required UNZIP
package:
name: unzip
- name: add the CONSUL group
group:
name: consul
state: present
gid: 199
- name: add the CONSUL user
user:
name: consul
comment: CONSUL user
state: present
uid: 199
- name: install CONSUL from HashiCorp
unarchive:
src: https://releases.hashicorp.com/consul/1.8.5/consul_1.8.5_linux_amd64.zip
dest: /usr/local/bin
remote_src: yes
mode: 0755
owner: consul
group: consul
- name: create CONSUL required data folders
file:
path: /opt/consul
state: directory
mode: '0755'
recurse: yes
owner: consul
group: consul
- name: create CONSUL required config folders
file:
path: /etc/consul.d
state: directory
mode: '0755'
recurse: yes
owner: consul
group: consul
- name: copy CONSUL systemd script
copy: src={{ item.src }} dest={{ item.dest }}
with_items:
- {src: 'consul/configs/consul.service', dest: '/etc/systemd/system'}
- {src: 'consul/configs/consul.hcl', dest: '/etc/consul.d'}
- {src: 'consul/configs/service-ssh.hcl', dest: '/etc/consul.d'}
- name: enable CONSUL systemd script
service:
name: consul
enabled: yes
daemon_reload: yes
state: started