在哪里可以找到有关 Centos 7 的 HAproxy 2x 安装文档的官方文档?
$ yum install haproxy
$ haproxy -v
HA-Proxy version 1.5.18 2016/05/10
Copyright 2000-2016 Willy Tarreau <[email protected]>
$ 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"
我不想运行该产品的过时且可能不安全的版本。
答案1
只要支持 CentOS7,来自 repo 的 HAProxy 就不太可能不安全,但是 1.5 版本的功能确实已经过时了。
据我所知,只有现代 Fedora 版本的官方存储库中才有更现代版本的 HAProxy。如果您购买商业版 HAProxy,则似乎有一个由 HAProxy 人员直接支持的 RHEL/CentOS 兼容存储库。否则,您可能实际上必须为您的环境编译和推出自己的软件包。
如果运行另一个发行版是一种可行的解决方法,那么社区版 HAProxy 最用户友好的版本似乎存在于 Debian 和 Ubuntu 方面:https://haproxy.debian.net/
答案2
我可以安装最新版本HAProxy 2.4.2 (LTS)
通过CentOS 7
执行步骤来自这个博客,为了防止链接失效,这里提供这些内容,我对它们进行了一些修改,因为博客中讨论的是 2.0 版本,而我需要的是最新版本:
脚步
选择haproxy分支
第一步定义了您要安装的分支,如果您想要最新的,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
创建 systemd 服务 /usr/lib/systemd/system/haproxy.service
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
创建 /etc/haproxy/haproxy.cfg
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
重新启动 HAProxy 并验证 bash
systemctl start haproxy
systemctl status haproxy
答案3
如果您需要生成最新 haproxy 版本的 RPM,请在 github 上找到这个项目。
https://github.com/DBezemer/rpm-haproxy
脚步
安装开发依赖项。
sudo yum groupinstall 'Development Tools'
检出 repo 并切换到您想要的版本的分支。
cd /opt
git clone https://github.com/DBezemer/rpm-haproxy.git
cd ./rpm-haproxy
git checkout 2.4
构建 RPMS
make
产生的 RPM 将是./RPMS/
通过运行来更新您的版本
sudo rpm -U haproxy-2.4.9-1.amzn1.x86_64.rpm
答案4
在 HAProxy 2.0 的说明可用之前,您可以按照此 URL 上的说明安装 HAProxy 1.8:https://www.softwarecollections.org/en/scls/rhscl/rh-haproxy18/