{{ ansible_managed | comment }} global_defs { dynamic_interfaces script_user root enable_script_security vrrp_version 3 } {% set ipv4_enabled = keepalived__ipv4_enabled | default(keepalived__virtual_addresses.values() | flatten | ansible.utils.ipv4) %} {% set ipv6_enabled = keepalived__ipv6_enabled | default(keepalived__virtual_addresses.values() | flatten | ansible.utils.ipv6) %} vrrp_sync_group group { group { {% if ipv4_enabled %} instance_v4 {% endif %} {% if ipv6_enabled %} instance_v6 {% endif %} } {% if keepalived__notify_master is defined %} notify_master {{ keepalived__notify_master | enquote('"') }} {% endif %} {% if keepalived__notify_backup is defined %} notify_backup {{ keepalived__notify_backup | enquote('"') }} {% endif %} {% if keepalived__notify_fault is defined %} notify_fault {{ keepalived__notify_fault | enquote('"') }} {% endif %} } {% if ipv4_enabled %} vrrp_instance instance_v4 { virtual_router_id {{ keepalived__virtual_router_id }} interface {{ keepalived__interface }} state BACKUP priority 250 nopreempt advert_int 1 accept virtual_ipaddress { {% for dev, addresses in keepalived__virtual_addresses.items() %} {% for address in addresses %} {% if address | ansible.utils.ipv4 %} {{ address }} dev {{ dev }} {% endif %} {% endfor %} {% endfor %} } } {% endif %} {% if ipv6_enabled %} vrrp_instance instance_v6 { virtual_router_id {{ keepalived__virtual_router_id }} interface {{ keepalived__interface }} state BACKUP priority 250 nopreempt advert_int 1 accept virtual_ipaddress { {% for dev, addresses in keepalived__virtual_addresses.items() %} {% for address in addresses %} {% if address | ansible.utils.ipv6 %} {{ address }} dev {{ dev }} {% endif %} {% endfor %} {% endfor %} } } {% endif %}