This role configures keepalived without arm twisting. Write the configuration the way you want.
Automatic testing is provided using molecule's delegated driver and https://builds.sr.ht.
Another role or deployment method must be devised to use notification scripts such as notify_backup, notify_fault and notify_master.
keepalived_global_defs: configure theglobal_defsblock ;keepalived_vrrp_scripts: configure one or morevrrp_script;keepalived_vrrp_instances: configure one or morevrrp_instance.keepalived_virtual_servers: configure one or morevirtual_servers.keepalived_vrrp_sync_group: configure one or morevrrp_sync_group.keepalived_flags: flags to pass to the keepalived daemon (set--log-detail --log-facility=7by default)
The keepalived package should be installed first using a tool such as Packer.
However if it is not part of your toolchain the variable keepalived_install can be set to True to provoke an installation.
- hosts: wwwmaster
vars:
- keepalived_global_defs: |
router_id 1
- keepalived_vrrp_scripts:
- name: haproxy
content: |
script "killall -0 haproxy"
- keepalived_vrrp_instances:
- name: HAPROXY
content: |
virtual_router_id 42
state MASTER
unicast_src_ip "{{ master_ip }}"
unicast_peer {
"{{ backup_ip }}"
}
interface eth0
virtual_ipaddress {
"{{ vip_front }}"
}
track_script {
haproxy
}
- keepalived_vrrp_sync_group:
- name: VRRP-GRP-01
vrrp_group_instances_member:
- HAPROXY
- WEB
roles:
- role: ansible-keepalivedISC
Either send send GitHub pull requests or send patches on SourceHut.
This role was created in 2018 by Tristan Le Guern on the behalf of Deveryware.