ansible-role-rabbitmq/tasks/vhosts.yml

85 lines
1.9 KiB
YAML

---
# Create vhosts
- name: Configure pubsub virtual host
community.rabbitmq.rabbitmq_vhost:
name: /pubsub
state: present
tags:
- rabbitmq_cluster
- name: Configure publicly accessible vhost
run_once: true
delegate_to: "{{ rabbitmq_cluster_list[0] }}"
community.rabbitmq.rabbitmq_vhost:
name: /public_pubsub
state: present
tags:
- rabbitmq_cluster
- name: Configure the HA policy for pubsub
community.rabbitmq.rabbitmq_policy:
name: HA
apply_to: queues
pattern: ".*"
tags:
ha-mode: all
ha-sync-mode: automatic
ha-sync-batch-size: 10000
vhost: /pubsub
tags:
- rabbitmq_cluster
- name: Add a policy to limit queues to 1GB and sweep after a month
run_once: true
delegate_to: "{{ rabbitmq_cluster_list[0] }}"
community.rabbitmq.rabbitmq_policy:
apply_to: queues
name: pubsub_sweeper
state: present
pattern: ".*"
tags:
expires: 111600000
max-length-bytes: 1073741824
vhost: /pubsub
tags:
- rabbitmq_cluster
- name: Add a policy to keep the public vhost swept
run_once: true
delegate_to: "{{ rabbitmq_cluster_list[0] }}"
community.rabbitmq.rabbitmq_policy:
apply_to: queues
name: sweeper
state: present
pattern: ".*"
tags:
expires: 3600000
max-length-bytes: 52428800
vhost: /public_pubsub
tags:
- rabbitmq_cluster
- name: Configure MBS vhost
run_once: true
delegate_to: "{{ rabbitmq_cluster_list[0] }}"
community.rabbitmq.rabbitmq_vhost:
name: /mbs
state: present
tags:
- rabbitmq_cluster
- name: Configure MBS HA Policy
run_once: true
delegate_to: "{{ rabbitmq_cluster_list[0] }}"
community.rabbitmq.rabbitmq_policy:
apply_to: queues
name: HA
pattern: ".*"
tags:
ha-mode: all
ha-sync-mode: automatic
ha-sync-batch-size: 10000
vhost: /mbs
tags:
- rabbitmq_cluster