Где я могу найти официальную документацию по установке HAproxy 2x документации для Centos 7?
$ yum install haproxy
$ haproxy -v
HA-Proxy version 1.5.18 2016/05/10
Copyright 2000-2016 Willy Tarreau <willy@haproxy.org>
$ cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
Я бы не хотел запускать устаревшую, потенциально небезопасную версию продукта.
HAProxy из репозитория вряд ли будет небезопасным, пока поддерживается CentOS7, но да, версия 1.5 устарела функционально.
Насколько я понимаю, только современные версии Fedora имеют в своих официальных репозиториях более современные версии HAProxy. Если вы покупаете коммерческую версию HAProxy, похоже, что есть репозиторий, совместимый с RHEL / CentOS, который поддерживается непосредственно людьми HAProxy. В противном случае вам, возможно, действительно придется скомпилировать и развернуть свои собственные пакеты для вашей среды.
Если запуск другого дистрибутива является возможным обходным путем, наиболее удобная для пользователя версия HAProxy, похоже, существует на стороне Debian и Ubuntu вещи: https://haproxy.debian.net/
Пока не будут доступны инструкции для HAProxy 2.0, вы можете установить HAProxy 1.8, следуя инструкциям по этому адресу: https://www.softwarecollections.org/en/scls/rhscl /rh-haproxy18/
Последнюю версию можно установить с: http://au1.mirror.crc.id.au/repo/el7-extra/x86_64/
пример марионетки:
yumrepo { "haproxy-repo":
baseurl => "http://au1.mirror.crc.id.au/repo/el7-extra/x86_64/",
gpgkey => "http://au1.mirror.crc.id.au/repo/RPM-GPG-KEY-kernel-xen",
descr => "haproxy",
enabled => 1,
gpgcheck => 1
}
Мне удалось установить последнюю 2.4.2
HAProxy
на CentOS 7
, выполнив шаги из этого блога, подробнее на сайте. Здесь я делюсь всем без особых объяснений:
1-й шаг определяет ветку, которую вы собираетесь установить. Если вы хотите последнюю 2.0
, просто измените URL-адрес. в нужную ветку, вам придется повторять это изменение на каждом этапе, когда вы видите URL-адрес:
LATEST_HAPROXY=$(wget -qO- http://www.haproxy.org/download/2.4/src/ | egrep -o "haproxy-2\.[0-9]+\.[0-9]+" | head -1)
cd /usr/src/
wget http://www.haproxy.org/download/2.4/src/${LATEST_HAPROXY}.tar.gz
tar xzvf ${LATEST_HAPROXY}.tar.gz
yum install gcc-c++ openssl-devel pcre-static pcre-devel systemd-devel -y
cd /usr/src/${LATEST_HAPROXY}
make TARGET=linux-glibc USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_CRYPT_H=1 USE_LIBCRYPT=1 USE_SYSTEMD=1
mkdir /etc/haproxy
make install
cat > /usr/lib/systemd/system/haproxy.service << 'EOL'
[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target
[Service]
Environment="CONFIG=/etc/haproxy/haproxy.cfg" "PIDFILE=/run/haproxy.pid"
ExecStartPre=/usr/local/sbin/haproxy -f $CONFIG -c -q
ExecStart=/usr/local/sbin/haproxy -Ws -f $CONFIG -p $PIDFILE
ExecReload=/usr/local/sbin/haproxy -f $CONFIG -c -q
ExecReload=/bin/kill -USR2 $MAINPID
KillMode=mixed
Restart=always
SuccessExitStatus=143
Type=notify
[Install]
WantedBy=multi-user.target
EOL
cat > /etc/haproxy/haproxy.cfg << 'EOL'
global
log /dev/log local0
log /dev/log local1 notice
daemon
defaults
log global
option dontlognull
timeout connect 50000
timeout client 50000
timeout server 50000
listen ListenName
bind *:80
mode tcp
server YourServer 127.0.0.1:80
EOL
systemctl start haproxy
systemctl status haproxy
Нашел этот проект на github, если вам нужно создавать RPM последних версий haproxy.
https://github.com/DBezemer/rpm-haproxy
sudo yum groupinstall 'Development Tools'
cd /opt
git clone https://github.com/DBezemer/rpm-haproxy.git
cd./rpm-haproxy
git checkout 2.4
make
Результирующие RPM будут в./RPMS/
sudo rpm -U haproxy-2.4.9-1.amzn1.x86_64.rpm