initial create
This commit is contained in:
commit
f0fffd6802
|
|
@ -0,0 +1,19 @@
|
||||||
|
FROM alpine:latest
|
||||||
|
|
||||||
|
# tested alpine : 3.19
|
||||||
|
# keepalived : https://pkgs.alpinelinux.org/package/edge/community/armhf/keepalived
|
||||||
|
|
||||||
|
RUN apk update \
|
||||||
|
&& apk upgrade \
|
||||||
|
&& apk add --no-cache \
|
||||||
|
keepalived \
|
||||||
|
curl \
|
||||||
|
ca-certificates \
|
||||||
|
&& update-ca-certificates \
|
||||||
|
&& rm -rf /var/cache/apk/* \
|
||||||
|
&& keepalived --version
|
||||||
|
|
||||||
|
COPY keepalived.sh /etc/keepalived/keepalived.sh
|
||||||
|
RUN chmod +x /etc/keepalived/keepalived.sh; chown root:root /etc/keepalived/keepalived.sh
|
||||||
|
|
||||||
|
#CMD ["/usr/sbin/keepalived", "--dont-fork", "--dump-conf", "--vrrp", "--log-detail", "--log-console"]
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
version: '3.5'
|
||||||
|
|
||||||
|
services:
|
||||||
|
keepalived:
|
||||||
|
build: .
|
||||||
|
volumes:
|
||||||
|
- ./keepalived.conf:/etc/keepalived/keepalived.conf
|
||||||
|
network_mode: host
|
||||||
|
cap_add:
|
||||||
|
- NET_ADMIN
|
||||||
|
- NET_BROADCAST
|
||||||
|
- NET_RAW
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
global_defs {
|
||||||
|
#Hostname will be used by default
|
||||||
|
router_id master_node
|
||||||
|
#vrrp_version 2
|
||||||
|
#vrrp_garp_master_delay 1
|
||||||
|
#vrrp_garp_master_refresh 60
|
||||||
|
#Uncomment the next line if you'd like to use unique multicast groups
|
||||||
|
#vrrp_mcast_group4 224.0.0.{{VRID}}
|
||||||
|
#script_user root
|
||||||
|
#enable_script_security
|
||||||
|
}
|
||||||
|
|
||||||
|
vrrp_script chk_haproxy {
|
||||||
|
script "/etc/keepalived/keepalived.sh"
|
||||||
|
timeout 1
|
||||||
|
interval 1 # check every 1 second
|
||||||
|
fall 2 # require 2 failures for KO
|
||||||
|
rise 2 # require 2 successes for OK
|
||||||
|
}
|
||||||
|
|
||||||
|
vrrp_instance VI_1 {
|
||||||
|
state MASTER
|
||||||
|
interface eth0
|
||||||
|
virtual_router_id 51
|
||||||
|
priority 100
|
||||||
|
advert_int 1
|
||||||
|
nopreempt #Prevent fail-back
|
||||||
|
|
||||||
|
track_script {
|
||||||
|
chk_haproxy
|
||||||
|
}
|
||||||
|
|
||||||
|
authentication {
|
||||||
|
auth_type PASS
|
||||||
|
auth_pass 1111
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual_ipaddress {
|
||||||
|
192.168.0.247
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
#!/bin/bash
|
||||||
Loading…
Reference in New Issue