From 654a7ed0f2f2284a89c583d1c42fd45200655521 Mon Sep 17 00:00:00 2001
From: Simon Michnowicz <simon.michnowicz@monash.edu>
Date: Mon, 10 May 2021 12:23:45 +1000
Subject: [PATCH] update NAT role with keepalived service file

---
 roles/nat_server/tasks/main.yml                  | 13 +++++++++++++
 roles/nat_server/templates/keepalived.service.j2 | 14 ++++++++++++++
 2 files changed, 27 insertions(+)
 create mode 100644 roles/nat_server/templates/keepalived.service.j2

diff --git a/roles/nat_server/tasks/main.yml b/roles/nat_server/tasks/main.yml
index cefd82f1..9a968c54 100644
--- a/roles/nat_server/tasks/main.yml
+++ b/roles/nat_server/tasks/main.yml
@@ -68,6 +68,11 @@
   become: true
   become_user: root
 
+- name: Template keepalived service file
+  template: dest=/etc/systemd/system/keepalived.service src=keepalived.service.j2
+  become: true
+  become_user: root
+
 - name: Enable and start keepalived
   service:
     name: keepalived
@@ -75,3 +80,11 @@
     enabled: yes
   become: true
   become_user: root
+
+- name: Restart iptables service
+  service:
+    name: iptables
+    state: restarted
+  become: true
+  become_user: root
+
diff --git a/roles/nat_server/templates/keepalived.service.j2 b/roles/nat_server/templates/keepalived.service.j2
new file mode 100644
index 00000000..35365815
--- /dev/null
+++ b/roles/nat_server/templates/keepalived.service.j2
@@ -0,0 +1,14 @@
+# systemd servive unit file for Keepalived 
+[Unit] 
+Description=Keepalived service for High Availability with VRRP 
+After=network.target network-online.target
+ConditionFileNotEmpty=/etc/keepalived/keepalived.conf 
+
+[Service] 
+Type=simple 
+ExecStart=/usr/sbin/keepalived --dont-fork 
+ExecReload=/bin/kill -s HUP $MAINPID #Define the procedure of killing the processes belonging to the Keepalived service unit. 
+KillMode=process 
+
+[Install] 
+WantedBy=multi-user.target
-- 
GitLab