65 lines
1.4 KiB
YAML
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
|
|
|