wazuh-ansible/wazuh-distributed.yml

89 lines
2.2 KiB
YAML

---
- name: Configure package URLs
hosts: localhost
roles:
- role: package-urls
run_once: true
become: false
- name: Configure Wazuh Indexer cluster
hosts: wi_cluster
roles:
- role: wazuh-indexer
become: true
vars:
# generate_certs: false # Set to false if you are using your own certificates
instances:
wi1: # Must be same as inventory hostname
name: node-1
ip: "{{ hostvars.wi1.private_ip }}"
role: indexer
wi2:
name: node-2
ip: "{{ hostvars.wi2.private_ip }}"
role: indexer
wi3:
name: node-3
ip: "{{ hostvars.wi3.private_ip }}"
role: indexer
manager:
name: node-4
ip: "{{ hostvars.manager.private_ip }}"
role: server
node_type: master
worker:
name: node-5
ip: "{{ hostvars.worker.private_ip }}"
role: server
node_type: worker
dashboard:
name: node-6
ip: "{{ hostvars.dashboard.private_ip }}"
role: dashboard
- name: Configure Wazuh Manager
hosts: manager
roles:
- role: wazuh-manager
become: true
vars:
node_type: "master"
manager_node_name: "node-4"
wazuh_indexer_hosts:
- host: "{{ hostvars.wi1.private_ip }}"
port: 9200
- host: "{{ hostvars.wi2.private_ip }}"
port: 9200
- host: "{{ hostvars.wi3.private_ip }}"
port: 9200
- name: Configure Wazuh Worker
hosts: worker
roles:
- role: wazuh-manager
become: true
vars:
node_type: "worker"
manager_node_name: "node-5"
wazuh_indexer_hosts:
- host: "{{ hostvars.wi1.private_ip }}"
port: 9200
- host: "{{ hostvars.wi2.private_ip }}"
port: 9200
- host: "{{ hostvars.wi3.private_ip }}"
port: 9200
- name: Configure Wazuh Dashboard
hosts: dashboard
roles:
- role: wazuh-dashboard
become: true
vars:
dashboard_node_name: "node-6"
wazuh_manager_master_address: "{{ hostvars.manager.private_ip }}"
indexer_cluster_nodes:
- "{{ hostvars.wi1.private_ip }}"
- "{{ hostvars.wi2.private_ip }}"
- "{{ hostvars.wi3.private_ip }}"