As part of the strategy to upgrade CDN nodes from Bullseye to Trixie we need an HAProxy version available in both distributions. The current version (2.8) isn't available on Trixie, so the easiest thing here is upgrade to HAProxy 3.0 on Bullseye and then upgrade to Trixie.
Description
Details
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| In Progress | None | T401832 Upgrade Traffic hosts to trixie | |||
| Resolved | Vgutierrez | T417291 Upgrade the CDN to HAProxy 3.0 |
Event Timeline
Change #1239133 had a related patch set uploaded (by Vgutierrez; author: Vgutierrez):
[operations/puppet@production] hiera: Test HAProxy 3.0 in cp4052
Mentioned in SAL (#wikimedia-operations) [2026-02-12T15:42:53Z] <vgutierrez> testing HAProxy 3.0.15 in cp4052 - T417291
Change #1239133 merged by Vgutierrez:
[operations/puppet@production] hiera: Test HAProxy 3.0 in cp4052
HAProxy 3.0 bumps to lua 5.4, as a consequence HAProxy fails to start cause lua5.4-maxminddb isn't there:
Feb 12 15:51:33 cp4052 haproxy[2379768]: [NOTICE] (2379768) : haproxy version is 3.0.15-1~bpo11+1 Feb 12 15:51:33 cp4052 haproxy[2379768]: [NOTICE] (2379768) : path to executable is /usr/sbin/haproxy Feb 12 15:51:33 cp4052 haproxy[2379768]: [ALERT] (2379768) : config : parsing [/etc/haproxy/haproxy.cfg:18] : Lua runtime error: /etc/haproxy/lua/maxmind-lookup.lua:3: module 'maxminddb' not found: Feb 12 15:51:33 cp4052 haproxy[2379768]: no field package.preload['maxminddb'] Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/etc/haproxy/lua/private/maxminddb.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/local/share/lua/5.4/maxminddb.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/local/share/lua/5.4/maxminddb/init.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/local/lib/lua/5.4/maxminddb.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/local/lib/lua/5.4/maxminddb/init.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/share/lua/5.4/maxminddb.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/share/lua/5.4/maxminddb/init.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file './maxminddb.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file './maxminddb/init.lua' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/local/lib/lua/5.4/maxminddb.so' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/lib/x86_64-linux-gnu/lua/5.4/maxminddb.so' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/lib/lua/5.4/maxminddb.so' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file '/usr/local/lib/lua/5.4/loadall.so' Feb 12 15:51:33 cp4052 haproxy[2379768]: no file './maxminddb.so' Feb 12 15:51:33 cp4052 haproxy[2379768]: [ALERT] (2379768) : config : Error(s) found in configuration file : /etc/haproxy/haproxy.cfg Feb 12 15:51:33 cp4052 haproxy[2379768]: [ALERT] (2379768) : config : parsing [/etc/haproxy/conf.d/tls.cfg:180] : error detected in proxy 'tls' while parsing 'http-request set-var(req.provenance,ifnotexists,ifnotempty)' rule : unknown fetch method 'lua.fetch_isp'. Feb 12 15:51:33 cp4052 haproxy[2379768]: [ALERT] (2379768) : config : Error(s) found in configuration file : /etc/haproxy/conf.d/tls.cfg Feb 12 15:51:33 cp4052 systemd[1]: haproxy.service: Control process exited, code=exited, status=1/FAILURE Feb 12 15:51:33 cp4052 systemd[1]: Reload failed for HAProxy Load Balancer.
Change #1239148 had a related patch set uploaded (by Vgutierrez; author: Vgutierrez):
[operations/puppet@production] Revert "hiera: Test HAProxy 3.0 in cp4052"
Change #1239148 merged by Vgutierrez:
[operations/puppet@production] Revert "hiera: Test HAProxy 3.0 in cp4052"
Mentioned in SAL (#wikimedia-operations) [2026-02-12T15:57:11Z] <vgutierrez> downgrade to HAProxy 2.8 in cp4052 - T417291
Mentioned in SAL (#wikimedia-operations) [2026-02-13T16:52:59Z] <vgutierrez> upload lua5.4-maxminddb_0.1.1-1 to bullseye-wikimedia (apt.wm.o) - T417291
Change #1239376 had a related patch set uploaded (by Vgutierrez; author: Vgutierrez):
[operations/puppet@production] haproxy: Use lua5.4-maxminddb for haproxy 3.0
Change #1239376 merged by Vgutierrez:
[operations/puppet@production] haproxy: Use lua5.4-maxminddb for haproxy 3.0