CentOS 9でHaproxy 2.6.7をサービスとして実行する

CentOS 9でHaproxy 2.6.7をサービスとして実行する

CentOS 9でHAProxy 2.6.7を実行したいです。

フラグを有効にしてプロジェクトをダウンロードしてコンパイルし、コンパイルされたUSE_SYSTEMDファイルをインストールしました。私が使用したコマンドは次のとおりです。

make TARGET=linux-glibc USE_LINUX_TPROXY=1 USE_ZLIB=1 USE_REGPARM=1 USE_PCRE=1 USE_PCRE_JIT=1  USE_OPENSSL=1 SSL_INC=/usr/include SSL_LIB=/usr/lib ADDLIB=-ldl ADDLIB=-lpthread USE_PROMEX=1 USE_SYSTEMD=1

make install 

mkdir -p /etc/haproxy 

mkdir -p /var/lib/haproxy  

touch /var/lib/haproxy/stats 

ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy 

cp examples/haproxy.init /etc/init.d/haproxy 

chmod 755 /etc/init.d/haproxy 

systemctl daemon-reload 

systemctl start haproxy.service

最後の命令は以下を返します。

haproxy.service: Can't open PID file /run/haproxy.pid (yet?) after start: Operation not permitted
haproxy.service: Failed with result 'protocol'.
Failed to start SYSV:...
/run/systemd/generator.late/haproxy.service:20: PIDFile= references a path below legacy directory /var/run/, updating /var/run/haproxy.pid

走る

sudo haproxy -f /etc/haproxy/haproxy.cfg

-c兆候があり、-d問題は表示されません。どんな提案がありますか?

答え1

解決策と解決策があります(根本的な原因を気にせず)。

解決策は次のとおりです。まず、yumを使用してHAProxy(現在の古いバージョン2.4)をインストールし、それを新しいコンパイル済みバージョンに置き換えると、この問題は発生しません。

RCAの場合:systemdにhaproxy.serviceが必要ですが、現在存在しません...コピーテンプレートを使用できます

cp haproxy-2.6.7/admin/systemd/haproxy.service.in /etc/systemd/system/haproxy.service

(対象の名前を変更することに注意してください)一般的な読み取り/書き込みアクセスを許可します。

chmod 755 /etc/systemd/system/haproxy.service

次に、systemctlデーモンを再ロードしてHAProxyサービスを開始します。

関連情報