Haproxy

在 haproxy.cfg 中導入配置文件

  • October 23, 2020

我有近 200 行 ACL 配置haprox.cfg,還包含 150 個後端。為了消除這種配置複雜性,我想將此配置捆綁在單獨的文件中,並將這些文件導入haprox.cfg. 這在 haproxy 中可能嗎?

據我所知,HAproxy 沒有任何類似於 apache 的Include & IncludeOptional指令。

-f <config-file>除了使用重複的命令行開關啟動 HAproxy 之外,沒有對多個配置文件的本機支持。看到這個執行緒

您可以編寫一些腳本來將多個小節合併到一個類似於這種方法的更大文件中,儘管我可能會走這條路並修改init 腳本以自動附加其他配置文件(未經測試):

# Load additional configuration snippets from /etc/haproxy.d/*.cfg
OPTIONS=""
for file in /etc/haproxy.d/*.cfg ; do test -f $file && OPTIONS="$OPTIONS -f $file" ; done

start() {
 /usr/sbin/$BASENAME -c -q -f /etc/$BASENAME/$BASENAME.cfg $OPTIONS
 if [ $? -ne 0 ]; then
   echo "Errors found in configuration file, check it with '$BASENAME check'."
   return 1
 fi

 echo -n "Starting $BASENAME: "
 daemon /usr/sbin/$BASENAME -D -f /etc/$BASENAME/$BASENAME.cfg $OPTIONS -p /var/run/$BASENAME.pid
 RETVAL=$?
 echo
 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$BASENAME
 return $RETVAL
}

引用自:https://serverfault.com/questions/789280