summaryrefslogtreecommitdiffstats
path: root/main/haproxy
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2012-08-24 09:49:29 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2012-08-24 09:49:29 +0000
commit3eb6f59243de90ff9ba2138e820e902603ad1996 (patch)
tree94b02e65973b8cc98d18d402ba68b0d5b7bbec13 /main/haproxy
parentef4d70929c7b687a7b974e9ae438f6b8a164f16f (diff)
downloadaports-3eb6f59243de90ff9ba2138e820e902603ad1996.tar.bz2
aports-3eb6f59243de90ff9ba2138e820e902603ad1996.tar.xz
main/haproxy: better example config
also move the homedir for haproxy user to /var/lib/haproxy
Diffstat (limited to 'main/haproxy')
-rw-r--r--main/haproxy/APKBUILD6
-rw-r--r--main/haproxy/haproxy.cfg89
-rw-r--r--main/haproxy/haproxy.pre-upgrade2
3 files changed, 85 insertions, 12 deletions
diff --git a/main/haproxy/APKBUILD b/main/haproxy/APKBUILD
index 2b7f820cf..f89237b62 100644
--- a/main/haproxy/APKBUILD
+++ b/main/haproxy/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=haproxy
pkgver=1.4.22
-pkgrel=1
+pkgrel=2
pkgdesc="A TCP/HTTP reverse proxy for high availability environments"
url="http://haproxy.1wt.eu"
arch="all"
@@ -24,11 +24,11 @@ package() {
cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" PREFIX=/usr DOCDIR=/usr/share/doc/haproxy \
install
- install -d "$pkgdir"/usr/share/haproxy
+ install -d "$pkgdir"/var/lib/haproxy
install -m755 -D "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
install -m644 -D "$srcdir"/haproxy.cfg "$pkgdir"/etc/haproxy/haproxy.cfg
}
md5sums="a0b007c76f6a78524f3b3dd5e704979c haproxy-1.4.22.tar.gz
81319456a35408bf47443e9c314d2e94 haproxy.initd
-f043f27db8081ee135fb452920405c51 haproxy.cfg"
+1f337186b0e1ba5ee82760cb437fb810 haproxy.cfg"
diff --git a/main/haproxy/haproxy.cfg b/main/haproxy/haproxy.cfg
index 38f4625bb..324ad5e22 100644
--- a/main/haproxy/haproxy.cfg
+++ b/main/haproxy/haproxy.cfg
@@ -1,13 +1,86 @@
-# dummy config
+#---------------------------------------------------------------------
+# Example configuration for a possible web application. See the
+# full configuration options online.
+#
+# http://haproxy.1wt.eu/download/1.4/doc/configuration.txt
+#
+#---------------------------------------------------------------------
+
+#---------------------------------------------------------------------
+# Global settings
+#---------------------------------------------------------------------
global
- user haproxy
- group haproxy
- chroot /usr/share/haproxy
- daemon
+ # to have these messages end up in /var/log/haproxy.log you will
+ # need to:
+ #
+ # 1) configure syslog to accept network log events. This is done
+ # by adding the '-r' option to the SYSLOGD_OPTIONS in
+ # /etc/sysconfig/syslog
+ #
+ # 2) configure local2 events to go to the /var/log/haproxy.log
+ # file. A line like the following can be added to
+ # /etc/sysconfig/syslog
+ #
+ # local2.* /var/log/haproxy.log
+ #
+ log 127.0.0.1 local2
+
+ chroot /var/lib/haproxy
+ pidfile /var/run/haproxy.pid
+ maxconn 4000
+ user haproxy
+ group haproxy
+ daemon
+
+ # turn on stats unix socket
+ stats socket /var/lib/haproxy/stats
+#---------------------------------------------------------------------
+# common defaults that all the 'listen' and 'backend' sections will
+# use if not designated in their block
+#---------------------------------------------------------------------
defaults
- contimeout 5000
- clitimeout 50000
+ mode http
+ log global
+ option httplog
+ option dontlognull
+ option http-server-close
+ option forwardfor except 127.0.0.0/8
+ option redispatch
+ retries 3
+ timeout http-request 10s
+ timeout queue 1m
+ timeout connect 10s
+ timeout client 1m
+ timeout server 1m
+ timeout http-keep-alive 10s
+ timeout check 10s
+ maxconn 3000
+
+#---------------------------------------------------------------------
+# main frontend which proxys to the backends
+#---------------------------------------------------------------------
+frontend main *:5000
+ acl url_static path_beg -i /static /images /javascript /stylesheets
+ acl url_static path_end -i .jpg .gif .png .css .js
+
+ use_backend static if url_static
+ default_backend app
+
+#---------------------------------------------------------------------
+# static backend for serving up images, stylesheets and such
+#---------------------------------------------------------------------
+backend static
+ balance roundrobin
+ server static 127.0.0.1:4331 check
-listen dummy1 127.0.0.1:10001
+#---------------------------------------------------------------------
+# round robin balancing between the various backends
+#---------------------------------------------------------------------
+backend app
+ balance roundrobin
+ server app1 127.0.0.1:5001 check
+ server app2 127.0.0.1:5002 check
+ server app3 127.0.0.1:5003 check
+ server app4 127.0.0.1:5004 check
diff --git a/main/haproxy/haproxy.pre-upgrade b/main/haproxy/haproxy.pre-upgrade
index fa9083dc4..33e0164af 100644
--- a/main/haproxy/haproxy.pre-upgrade
+++ b/main/haproxy/haproxy.pre-upgrade
@@ -1,7 +1,7 @@
#!/bin/sh
addgroup haproxy 2>/dev/null
-adduser -S -H -h /usr/share/haproxy -s /bin/false -D \
+adduser -S -H -h /var/lib/haproxy -s /bin/false -D \
-G haproxy haproxy 2>/dev/null
# move config to new location