Created
August 2, 2014 17:11
-
-
Save james-huston/cc25e10f1cc8843882cf to your computer and use it in GitHub Desktop.
HAProxy init script for AWS CentOS from yum install
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# | |
# haproxy | |
# | |
# chkconfig: - 85 15 | |
# description: HAProxy is a free, very fast and reliable solution \ | |
# offering high availability, load balancing, and \ | |
# proxying for TCP and HTTP-based applications | |
# processname: haproxy | |
# config: /etc/haproxy/haproxy.cfg | |
# pidfile: /var/run/haproxy.pid | |
# Source function library. | |
. /etc/rc.d/init.d/functions | |
# Source networking configuration. | |
. /etc/sysconfig/network | |
# Check that networking is up. | |
[ "$NETWORKING" = "no" ] && exit 0 | |
exec="/usr/sbin/haproxy" | |
prog=$(basename $exec) | |
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog | |
lockfile=/var/lock/subsys/haproxy | |
check() { | |
$exec -c -V -f /etc/$prog/$prog.cfg | |
} | |
start() { | |
$exec -c -q -f /etc/$prog/$prog.cfg | |
if [ $? -ne 0 ]; then | |
echo "Errors in configuration file, check with $prog check." | |
return 1 | |
fi | |
echo -n $"Starting $prog: " | |
# start it up here, usually something like "daemon $exec" | |
daemon $exec -D -f /etc/$prog/$prog.cfg -p /var/run/$prog.pid | |
retval=$? | |
echo | |
[ $retval -eq 0 ] && touch $lockfile | |
return $retval | |
} | |
stop() { | |
echo -n $"Stopping $prog: " | |
# stop it here, often "killproc $prog" | |
killproc $prog | |
retval=$? | |
echo | |
[ $retval -eq 0 ] && rm -f $lockfile | |
return $retval | |
} | |
restart() { | |
$exec -c -q -f /etc/$prog/$prog.cfg | |
if [ $? -ne 0 ]; then | |
echo "Errors in configuration file, check with $prog check." | |
return 1 | |
fi | |
stop | |
start | |
} | |
reload() { | |
$exec -c -q -f /etc/$prog/$prog.cfg | |
if [ $? -ne 0 ]; then | |
echo "Errors in configuration file, check with $prog check." | |
return 1 | |
fi | |
echo -n $"Reloading $prog: " | |
$exec -D -f /etc/$prog/$prog.cfg -p /var/run/$prog.pid -sf $(cat /var/run/$prog.pid) | |
retval=$? | |
echo | |
return $retval | |
} | |
force_reload() { | |
restart | |
} | |
fdr_status() { | |
status $prog | |
} | |
case "$1" in | |
start|stop|restart|reload) | |
$1 | |
;; | |
force-reload) | |
force_reload | |
;; | |
check) | |
check | |
;; | |
status) | |
fdr_status | |
;; | |
condrestart|try-restart) | |
[ ! -f $lockfile ] || restart | |
;; | |
*) | |
echo $"Usage: $0 {start|stop|status|restart|try-restart|reload|force-reload}" | |
exit 2 | |
esac |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment