--- - 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