簡體   English   中英

使用Lua腳本運行HAProxy

[英]Running HAProxy with Lua Scripts

我正在嘗試使用USE_LUA=1標志構建HAProxy-1.9以啟用lua支持。 我正在使用的make命令:

sudo make TARGET=linux USE_DL=1 USE_CRYPT_H=1 USE_LUA=1 LUA_LIB=/usr/bin/lua5.3 LUA_INC=/usr/include/lua5.3/ LUA_LIB_NAME=lua53

執行make命令時,出現以下錯誤:

  LD      haproxy
 /usr/lib64/gcc/x86_64-suse-linux/8/../../../../x86_64-suse-linux/bin/ld: cannot find -llua53
 collect2: error: ld returned 1 exit status
 make: *** [Makefile:976: haproxy] Error 1

從我收集到的信息來看,似乎缺少一個庫文件(猜測一個套接字文件),或者我提供了錯誤的目錄。 我正在使用OpenSuse Tumbleweed

編輯1

通過將TARGET=linux更改為TARGET=generic我能夠從源代碼獲得haproxy 生成文件停止后,在stdout上未報告任何錯誤。 但是,未安裝haproxy.service

我以前使用zypper安裝了haproxy。 我刪除它的唯一原因是使用USE_LUA=1標志重新安裝它,因為我不確定是否可以編輯haproxy post編譯來更改編譯時間配置。

重新安裝后,它可以正常工作。 但是,我相信lua-load存在錯誤。 當我嘗試lua-load /usr/share/haproxy/auth-request.lua我從運行journalctl -xe: error in lua file '/tmp/auth-request.lua': cannot open /tmp/auth-request.lua: Permission denied收到以下錯誤journalctl -xe: error in lua file '/tmp/auth-request.lua': cannot open /tmp/auth-request.lua: Permission denied haproxy.cfg文件一樣,在文件上設置的權限為haproxy:haproxy 我也嘗試過嘗試修改haproxy.cfgchown /tmp/auth-request.lua root:root user root group root chown /tmp/auth-request.lua root:root 錯誤仍然存​​在。

我可能與原始問題有所不同。 我希望仍然有可能解決此問題。 如果需要更多信息或上下文,則可以提供。

編輯2

最近,我嘗試在/tmp/auth-request.lua上為所有用戶添加讀取和執行權限。 ls -l輸出:

-rwxr-xr-x 1 root root 3957 Feb 25 02:24 /tmp/auth-request.lua

辛苦了幾個小時,好了,我能夠按照帖子中的EDIT 2來解決權限問題。 我將我的Lua腳本移到了haproxy config目錄,這似乎行得通。 雖然,我不太確定/etc/haproxy是否是保留Lua腳本的好位置,但是到目前為止,它已經起作用了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM