What versions of HAProxy are supported by ClusterControl?
I currently have haproxy 1.5.8 installed on two proxy nodes, and would like to upgrade to a more recent release (1.8) to take advantage of email notifications when certain events occur. Since my current haproxy config was installed and configured via ClusterControl, I'm wondering if upgrading would affect ClusterControl's ability to administer those proxies?
-
Official comment
Hi Brian,
We are just about to start evaluating if HAProxy 1.8 works as is with ClusterControl 1.5.I hope to have an answer for you later here today or tomorrow.
BR
johan
Comment actions -
Hi Brian,
We install currently from the vendor repos, so it is very dependent on the Linux distro (RH, Centos, Debian, Ubuntu) and the OS version.
However, i have done a small test shot here and i installed a HAProxy first from ClusterControl.
Then i installed 1.8.1 following these instructions, https://haproxy.debian.net/#?distribution=Ubuntu&release=xenial&version=1.8 and i kept the old config file (installed by CC).It seems to work as it used to before.
For RHEL/CENTOS i have not found any RPMs for 1.8.1:
https://www.rpmfind.net/linux/rpm2html/search.php?query=haproxy
But it is probably possible to download the source
wget https://www.haproxy.org/download/1.8/src/haproxy-1.8.1.tar.gz
tar xvfz haproxy-1.8.1.tar.gz
cd haproxy-1.8.1/
make TARGET=linux2628
sudo make installThis will install haproxy in /usr/local/sbin/
However, compiling with systemd support seems broken:
vagrant@n3:~/haproxy-1.8.1$ make TARGET=linux2628 USE_SYSTEMD=1
gcc -Iinclude -Iebtree -Wall -O2 -g -fno-strict-aliasing -Wdeclaration-after-statement -fwrapv -Wno-unused-label -DCONFIG_HAP_LINUX_SPLICE -DTPROXY -DCONFIG_HAP_LINUX_TPROXY -DCONFIG_HAP_CRYPT -DENABLE_POLL -DENABLE_EPOLL -DUSE_CPU_AFFINITY -DASSUME_SPLICE_WORKS -DUSE_ACCEPT4 -DNETFILTER -DUSE_THREAD -DUSE_SYSCALL_FUTEX -DUSE_SYSTEMD -DCONFIG_HAPROXY_VERSION=\"1.8.1\" -DCONFIG_HAPROXY_DATE=\"2017/12/03\" \
-DBUILD_TARGET='"linux2628"' \
-DBUILD_ARCH='""' \
-DBUILD_CPU='"generic"' \
-DBUILD_CC='"gcc"' \
-DBUILD_CFLAGS='"-O2 -g -fno-strict-aliasing -Wdeclaration-after-statement -fwrapv -Wno-unused-label"' \
-DBUILD_OPTIONS='"USE_SYSTEMD=1"' \
-c -o src/haproxy.o src/haproxy.c
src/haproxy.c:66:31: fatal error: systemd/sd-daemon.h: No such file or directory
compilation terminated.All in all, if you are on Ubuntu/Debian, then you can try, but if you are on RHEL/CENTOS i would wait one or more revisions until it is actually possible to compile this. Maybe this is why there are no RPMs available for 1.8.1 yet.
BR
johan -
Hi,
Disregard my systemd comment above.
You also need to install the systemd-devel package :
yum install systemd-devel
#or
apt-get install libsystemd-dev
Then you can do:
make TARGET=linux2628 USE_SYSTEMD=1
After this you can do:
mv /usr/sbin/haproxy /usr/sbin/haproxy-oldversion
ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
And after this you can make use of the already installed systemd scripts from the previous version installed by CC.
service haproxy restartThis works too, i have checked. However, there might be deeper bugs that i am not aware of.
Best regardsJohan
-
Thanks, Johan. We're running on Debian Jessie, so it sounds like we should be good. There's a page at https://haproxy.debian.net/#?distribution=Debian&release=jessie&version=1.8 that explains how to install a packaged release.
Please sign in to leave a comment.
Comments
5 comments