在 kubernetes 中使用 magento 1 清漆管理套接字超时

Varnish admin socket timeout with magento 1 in kubernetes

大纲:

我们正在尝试使用 nexcess turpentine 插件将 varnish-4.1.11 连接到 kubernetes 中的 magento 1,但每次都返回相同的错误:

Error determining Varnish version: Varnish admin socket timeout
Failed to load configurator

应用程序堆栈:

我们有一个 kubernetes 集群 运行使用以下容器连接一个 magento 1 堆栈:

kubernetes 信息:

Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5", GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean", BuildDate:"2019-10-15T19:07:57Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}

清漆配置:

NFILES=131072
MEMLOCK=82000
NPROCS="unlimited"
RELOAD_VCL=1
VARNISH_VCL_CONF=/var/www/html/site/var/default.vcl
VARNISH_LISTEN_PORT=6081
VARNISH_ADMIN_LISTEN_PORT=6082
VARNISH_SECRET_FILE=/etc/varnish/secret
VARNISH_MIN_THREADS=5
VARNISH_MAX_THREADS=50
VARNISH_THREAD_TIMEOUT=120
VARNISH_STORAGE="malloc,512M"
VARNISH_TTL=120

DAEMON_OPTS="-F -a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} \
             -f ${VARNISH_VCL_CONF} \
             -T ${VARNISH_ADMIN_LISTEN_ADDRESS}:${VARNISH_ADMIN_LISTEN_PORT} \
             -t ${VARNISH_TTL} \
             -S ${VARNISH_SECRET_FILE} \
             -s ${VARNISH_STORAGE}" \
             -p esi_syntax=0x2 \
             -p cli_buffer=16384

目前我们已经尝试过的:

备注:

我明白这是一个非常小众的问题,但希望其他人对可能出现的问题有一些了解。

如果其他人遇到此问题或类似问题,那是因为我们现有的 linkerd 服务网格无法正确传递流量。

虽然不是理想的解决方案,但为相关 pods 禁用 linkerd 解决了问题。