Merge branch 'hotfix-0.1.1' into stable
This commit is contained in:
		
						commit
						cb4a343ab2
					
				@ -1,4 +1,7 @@
 | 
			
		||||
# Changelog
 | 
			
		||||
 | 
			
		||||
## 0.1.1
 | 
			
		||||
  - Add notify script
 | 
			
		||||
 | 
			
		||||
## 0.1.0
 | 
			
		||||
  - Initial release
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										2
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Makefile
									
									
									
									
									
								
							@ -1,5 +1,5 @@
 | 
			
		||||
NAME = osixia/keepalived
 | 
			
		||||
VERSION = 0.1.0
 | 
			
		||||
VERSION = 0.1.1
 | 
			
		||||
 | 
			
		||||
.PHONY: all build test tag_latest release
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -5,6 +5,6 @@ A docker image to run Keepalived.
 | 
			
		||||
 | 
			
		||||
## Quick start
 | 
			
		||||
 | 
			
		||||
This image need to be run with : --privileged --net=host
 | 
			
		||||
This image require the kernel module ip_vs loaded on the host and need to be run with : --privileged --net=host
 | 
			
		||||
 | 
			
		||||
    docker run --privileged --net=host -d osixia/keepalived
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
KEEPALIVED_INTERFACE: p4p1
 | 
			
		||||
KEEPALIVED_INTERFACE: eth0
 | 
			
		||||
KEEPALIVED_PASSWORD: d0cker
 | 
			
		||||
 | 
			
		||||
# for electing MASTER, highest priority wins.
 | 
			
		||||
@ -7,6 +7,10 @@ KEEPALIVED_PRIORITY: 150
 | 
			
		||||
 | 
			
		||||
KEEPALIVED_UNICAST_PEERS:
 | 
			
		||||
  - 192.168.1.10
 | 
			
		||||
  - 192.168.1.11
 | 
			
		||||
 | 
			
		||||
KEEPALIVED_VIRTUAL_IPS:
 | 
			
		||||
  - 192.168.1.231
 | 
			
		||||
  - 192.168.1.232
 | 
			
		||||
 | 
			
		||||
KEEPALIVED_NOTIFY: /osixia/keepalived/notify.sh
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,12 @@
 | 
			
		||||
vrrp_instance vip-1 {
 | 
			
		||||
vrrp_sync_group VG_1 {
 | 
			
		||||
  group {
 | 
			
		||||
    VI_1
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  {{ keepalived_notify }}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
vrrp_instance VI_1 {
 | 
			
		||||
  interface {{ keepalived_interface }}
 | 
			
		||||
 | 
			
		||||
  track_interface {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										31
									
								
								image/service/keepalived/assets/notify.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										31
									
								
								image/service/keepalived/assets/notify.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,31 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
# for ANY state transition.
 | 
			
		||||
# "notify" script is called AFTER the
 | 
			
		||||
# notify_* script(s) and is executed
 | 
			
		||||
# with 3 arguments provided by keepalived
 | 
			
		||||
# (ie don't include parameters in the notify line).
 | 
			
		||||
# arguments
 | 
			
		||||
# $1 = "GROUP"|"INSTANCE"
 | 
			
		||||
# $2 = name of group or instance
 | 
			
		||||
# $3 = target state of transition
 | 
			
		||||
#     ("MASTER"|"BACKUP"|"FAULT")
 | 
			
		||||
 | 
			
		||||
TYPE=$1
 | 
			
		||||
NAME=$2
 | 
			
		||||
STATE=$3
 | 
			
		||||
 | 
			
		||||
case $STATE in
 | 
			
		||||
        "MASTER") logger "I'm the MASTER! Whup whup."
 | 
			
		||||
                  exit 0
 | 
			
		||||
                  ;;
 | 
			
		||||
        "BACKUP") logger "Ok, i'm just a backup, great."
 | 
			
		||||
                  exit 0
 | 
			
		||||
                  ;;
 | 
			
		||||
        "FAULT")  logger "Fault, what ?"
 | 
			
		||||
                  exit 0
 | 
			
		||||
                  ;;
 | 
			
		||||
        *)        logger "Unknown state"
 | 
			
		||||
                  exit 1
 | 
			
		||||
                  ;;
 | 
			
		||||
esac
 | 
			
		||||
@ -22,6 +22,12 @@ if [ ! -e "$FIRST_START_DONE" ]; then
 | 
			
		||||
      sed -i "s|{{ keepalived_priority }}|$KEEPALIVED_PRIORITY|g" /etc/keepalived/keepalived.conf
 | 
			
		||||
      sed -i "s|{{ keepalived_password }}|$KEEPALIVED_PASSWORD|g" /etc/keepalived/keepalived.conf
 | 
			
		||||
 | 
			
		||||
      if [ -n "$KEEPALIVED_NOTIFY" ]; then
 | 
			
		||||
        sed -i "s|{{ keepalived_notify }}|notify \"$KEEPALIVED_NOTIFY\"|g" /etc/keepalived/keepalived.conf
 | 
			
		||||
      else
 | 
			
		||||
        sed -i "/{{ keepalived_notify }}/d" /etc/keepalived/keepalived.conf
 | 
			
		||||
      fi
 | 
			
		||||
 | 
			
		||||
      # unicast peers
 | 
			
		||||
      KEEPALIVED_UNICAST_PEERS=($KEEPALIVED_UNICAST_PEERS)
 | 
			
		||||
      for peer in "${KEEPALIVED_UNICAST_PEERS[@]}"
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user