随机错误 503 服务在 Varnish 上不可用;它的日志显示没有 fetcherror

随机错误 503 服务在 Varnish 上不可用;它的日志显示没有 fetcherror

我们的生产站点随机遇到 503 错误;每次清漆服务重新启动后,请求的站点都会正常出现。

我查看了清漆日志,只看到“服务不可用”,但没有其他内容。

我发布了 varnishlog、default.vcl 和 varnish.params 的一部分

  • << 请求 >> 857875
  • 开始 bereq 857874 获取
  • 时间戳开始:1553896092.649343 0.000000 0.000000
  • Bereq方法 GET
  • BereqURL /huf_en_us/search/ajax/suggest/?_=1553896063503&q=pot+leaf+sock
  • Bereq协议 HTTP/1.0
  • BereqHeader X-真实IP:172.16.204.112
  • BereqHeader X-Forwarded-Proto:https
  • BereqHeader SSL 卸载:https
  • BereqHeader X 转发端口:443
  • BereqHeader 主机:www.hufworldwide.com
  • BereqHeader CF-IP 国家/地区:美国
  • BereqHeader CF-RAY:4bf50bf2cb163852-LAX
  • BereqHeader CF-Visitor: {"scheme":"https"}
  • BereqHeader 接受:application/json、text/javascript、/; q=0.01
  • BereqHeader x-requested-with:XMLHttpRequest
  • BereqHeader 接受语言:en-us
  • BereqHeader listrak-监听:1
  • Bereq标题引用者:https://www.hufworldwide.com/huf_en_us/triple-triangle-pullover-hoodie-pf00100?color=tropical-green
  • BereqHeader dnt: 1
  • BereqHeader 用户代理:Mozilla/5.0(iPhone;CPU iPhone OS 12_1_4,如 Mac OS X)AppleWebKit/605.1.15(KHTML,如 Gecko)版本/12.0 Mobile/15E148 Safari/604.1
  • BereqHeader x-newrelic-id: VQcDV1JVABAEUVJVDgkOXw==
  • BereqHeader cookie:store=huf_en_us; _vuid=5759a66b-8175-43cc-a614-51a32c0d7a08; PHPSESSID=los3vfdipo3ako096qoo830m05; form_key=QY53qr4aLFMypLqi; private_content_version=927393d221b9f95d0d23c147b7a38d6b; section_data_ids=%7B%22目录数据%22%3A1553894394%2C%22cus
  • BereqHeader CF 连接 IP:2606:a000:1216:8689:a5a4:dde1:69bd:10ac
  • BereqHeader CF-伪 IPv4:252.241.164.167
  • BereqHeader 真实客户端 IP:2606:a000:1216:8689:a5a4:dde1:69bd:10ac
  • BereqHeader CDN 循环:cloudflare
  • BereqHeader X-Forwarded-For:172.16.204.112、127.0.0.1
  • BereqHeader 接受编码:gzip
  • Bereq协议 HTTP/1.1
  • BereqHeader X-清漆:857875
  • VCL_call BACKEND_FETCH
  • VCL_return 获取
  • 后端打开 54 web02(172.16.204.102,,80) 172.16.204.104 60836
  • 后端54维web02(172.16.204.102,,80)
  • 时间戳 Bereq: 1553896092.649819 0.000476 0.000476
  • 时间戳 Beresp: 1553896093.563128 0.913785 0.913309
  • Beresp协议 HTTP/1.1
  • Beresp状态 503
  • BerespReason 服务不可用
  • BerespHeader 日期:2019 年 3 月 29 日星期五 21:48:12 GMT
  • BerespHeader 服务器:Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/7.0.30
  • BerespHeader X-Powered-By: PHP/7.0.30
  • BerespHeader X-Content-Type-Options:nosniff
  • BerespHeader X-XSS 保护:1;模式=块
  • BerespHeader X 帧选项:SAMEORIGIN
  • BerespHeader 过期时间:1981 年 11 月 19 日星期四 08:52:00 GMT
  • BerespHeader 缓存控制:无存储、无缓存、必须重新验证
  • BerespHeader Pragma:无缓存
  • BerespHeader 设置-Cookie:PHPSESSID=los3vfdipo3ako096qoo830m05;过期=2019 年 4 月 28 日星期日 21:48:13 GMT;最大年龄=2592000;路径=/;域名=www.hufworldwide.com;安全的;仅HTTP
  • BerespHeader X-NewRelic-App-Data:PxQGUFJVDUIR1VXBAYOXl0IFB9AMQYAZBBZDEtZV0ZaClc9HiBQFg1ZWT1JJUpcXhAiDVlFRQkIXVNBPkkuA1cHVhZXZGh0QQRUBEYOQQk4anYRFj9kdUILDxZ0XlkSFl5aXwcUPz5 5DEwHSltRQkcKS0MdUR1SVAYHUUpTFgoAXVRQGxwGSkYCAwZbUltQB1oMWw0MBQVWRxUHUA1ABzk=
  • BerespHeader 连接:关闭
  • BerespHeader 传输编码:分块
  • BerespHeader 内容类型:text/html;字符集=UTF-8
  • TTL RFC -1 -1 -1 1553896094 1553896094 1553896092 375007920 0
  • VCL_call BACKEND_RESPONSE
  • TTL VCL 0 10 0 1553896094
  • VCL_return传递
  • BerespHeader 内容编码:gzip
  • 存储 malloc 瞬态
  • Obj协议 HTTP/1.1
  • 对象状态 503
  • ObjReason 服务不可用
  • ObjHeader 日期:2019 年 3 月 29 日星期五 21:48:12 GMT
  • ObjHeader 服务器:Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips mod_fcgid/2.3.9 PHP/7.0.30
  • ObjHeader X-Powered-By: PHP/7.0.30
  • ObjHeader X-Content-Type-Options:nosniff
  • ObjHeader X-XSS 保护:1;模式=块
  • ObjHeader X 框架选项:SAMEORIGIN
  • ObjHeader 过期时间:1981 年 11 月 19 日星期四 08:52:00 GMT
  • ObjHeader 缓存控制:无存储、无缓存、必须重新验证
  • ObjHeader Pragma:无缓存
  • ObjHeader 设置-Cookie: PHPSESSID=los3vfdipo3ako096qoo830m05;过期=2019 年 4 月 28 日星期日 21:48:13 GMT;最大年龄=2592000;路径=/;域名=www.hufworldwide.com;安全的;仅HTTP
  • ObjHeader X-NewRelic-App-Data:PxQGUFJVDAUIR1VXBAYOXl0IFB9AMQYAZBBZDEtZV0ZaClc9HiBQFg1ZWT1JJUpcXhAiDVlFRQkIXVNBPkkuA1cHVhZXZGh0QQRUBEYOQQk4anYRFj9kdUILDxZ0XlkSFl5aXwcUPz55 DEwHSltRQkcKS0MdUR1SVAYHUUpTFgoAXVRQGxwGSkYCAwZbUltQB1oMWw0MBQVWRxUHUA1ABzk=
  • ObjHeader 内容类型:text/html;字符集=UTF-8
  • ObjHeader 内容编码:gzip
  • Fetch_Body 2 分块 -
  • 压缩 GFE 16777 6581 80 52568 52578
  • 时间戳BerespBody:1553896093.572716 0.923373 0.009588
  • 后端关闭 54 web02(172.16.204.102,,80)
  • 长度6581
  • 贝雷克账户 3058 0 3058 869 16789 17658
  • 结尾

默认.vcl

vcl 4.0;

导入标准;进口董事;

REM 最低 Varnish 版本为 4.0 对于 SSL 卸载,请在代理服务器或负载均衡器中传递以下标头:“SSL-OFFLOADED: https”

后端 web01 { .host = "172.16.204.101"; .端口=“80”; .connect_timeout = 1600s; .first_byte_timeout = 1600s; . Between_bytes_timeout = 1600s; .max_connections = 20000; }

后端 web02 { .host = "172.16.204.102"; .端口=“80”; .connect_timeout = 1600s; .first_byte_timeout = 1600s; . Between_bytes_timeout = 1600s; .max_connections = 20000; }

后端 web03 { .host = "172.16.204.120"; .端口=“80”; .connect_timeout = 1600s; .first_byte_timeout = 1600s; . Between_bytes_timeout = 1600s; .max_connections = 20000; }

后端 web04 { .host = "172.16.204.121"; .端口=“80”; .connect_timeout = 1600s; .first_byte_timeout = 1600s; . Between_bytes_timeout = 1600s; .max_connections = 20000; }

清漆参数

REM Varnish 环境配置说明。这源自 REM 旧式 sysconfig/defaults 设置

REM 将其设置为 1 以使 systemd 重新加载尝试切换 VCL 而无需重新启动。重新加载_VCL=1

REM 设置 WARMUP_TIME 以强制在 vcl.load 和 vcl.use 之间延迟 reload-vcl REM 当后端探测定义在声明 REM 配置的后端健康之前需要一些时间时,这非常有用,以避免将流量路由到不健康的后端。快速眼动预热时间=0

REM 主配置文件。你可能想改变它。 VARNISH_VCL_CONF=/etc/varnish/default.vcl

REM 要绑定的默认地址和端口。空白地址表示所有 IPv4 REM 和 IPv6 接口,否则指定主机名、IPv4 点分 REM 四边形或括号中的 IPv6 地址。雷姆 VARNISH_LISTEN_ADDRESS=192.168.1.5 VARNISH_LISTEN_PORT=8080

REM 管理界面监听地址和端口 VARNISH_ADMIN_LISTEN_ADDRESS=127.0.0.1 VARNISH_ADMIN_LISTEN_PORT=6082

REM 管理界面的共享秘密文件 VARNISH_SECRET_FILE=/etc/varnish/secret

REM 后端存储规范,请参阅 varnishd(5) REM 手册页中的存储类型了解详细信息。 VARNISH_STORAGE="malloc,24G"

REM varnishd 工作进程的用户和组 VARNISH_USER=builder VARNISH_GROUP=builder

REM 其他选项,请参见手册页 varnishd(1) DAEMON_OPTS="-p thread_pool_min=200 -p thread_pool_max=2000 -p thread_pool_timeout=600 -p http_resp_hdr_len=90000 -p http_max_hdr=200"

相关内容