mirror of
https://github.com/phfroidmont/self-hosting.git
synced 2025-12-25 13:46:59 +01:00
38 lines
1.2 KiB
Text
38 lines
1.2 KiB
Text
|
|
apiVersion: v1
|
||
|
|
kind: Pod
|
||
|
|
metadata:
|
||
|
|
name: keepalived
|
||
|
|
namespace: kube-system
|
||
|
|
spec:
|
||
|
|
hostNetwork: true
|
||
|
|
volumes:
|
||
|
|
- hostPath:
|
||
|
|
path: /usr/local/bin/scaleway-ipmove/
|
||
|
|
name: scaleway-moveip
|
||
|
|
containers:
|
||
|
|
- name: keepalived
|
||
|
|
image: chmod666/keepalived:latest
|
||
|
|
# if tag is latest imagePullPolicy is always
|
||
|
|
# but when keepalived is backup a proxy may have no connection to the internet
|
||
|
|
# to avoid keepalived not starting in that case, we're putting imagePullPolicy: IfNotPresent
|
||
|
|
# assuming the image was already be pulled at cluster creation. Neat.
|
||
|
|
imagePullPolicy: IfNotPresent
|
||
|
|
volumeMounts:
|
||
|
|
- mountPath: "/mnt"
|
||
|
|
name: scaleway-moveip
|
||
|
|
securityContext:
|
||
|
|
capabilities:
|
||
|
|
add:
|
||
|
|
- NET_ADMIN
|
||
|
|
env:
|
||
|
|
- name: KEEPALIVED_INTERFACE
|
||
|
|
value: tun0
|
||
|
|
- name: KEEPALIVED_UNICAST_PEERS
|
||
|
|
value: "#PYTHON2BASH:['{{ groups['k8s_proxy'] | map('extract', hostvars, ['vpn_ip']) | join("', '") }}']"
|
||
|
|
- name: KEEPALIVED_VIRTUAL_IPS
|
||
|
|
value: "#PYTHON2BASH:['{{ keepalived_ip }}']"
|
||
|
|
- name: KEEPALIVED_PRIORITY
|
||
|
|
value: "{{ groups['k8s_proxy'].index(inventory_hostname) + 1 }}"
|
||
|
|
- name: KEEPALIVED_NOTIFY
|
||
|
|
value: "/mnt/notify.sh"
|