Varnish VCL 不允许两个单独的 IP 地址作为后端

Varnish VCL 不允许两个单独的 IP 地址作为后端

每次我尝试在我们的 VCL 文件中添加额外的后端时,都会失败。

这是我们正在运行的 DAEMON_OPTS:

DAEMON_OPTS="-a:80 \ -T 本地主机:6082 \ -f /etc/varnish/custom.vcl \ -u varnish -g varnish \ -S /etc/varnish/secret \ -s malloc,10G"

以下是有问题的后端

后端 b1 { .host = “114.123.456.789”; .port = “8080”; }

后端 b2 { .host = “203.123.456.789”; .port = “80”; }

有什么想法吗?直觉告诉我可能需要在某处设置后端,但我不确定在哪里。

解决了

因此,事实证明我需要在 vcl 脚本中设置后端,在 vcl 文件 (vcl_recv) 中进一步设置。如果这对其他人有帮助,这是我从 (https://www.varnish-cache.org/trac/wiki/VCLExampleRestarts

sub vcl_recv {
            if (req.restarts == 0) {
                    set req.backend = b1;
            } else if (req.restarts == 1) {
                    set req.backend = b2;
            }
}

答案1

因此,事实证明我需要在 vcl 脚本中进一步设置后端。如果这对其他人有帮助,这是我从中复制的代码(https://www.varnish-cache.org/trac/wiki/VCLExampleRestarts

sub vcl_recv {
            if (req.restarts == 0) {
                    set req.backend = b1;
            } else if (req.restarts == 1) {
                    set req.backend = b2;
            } else {
                    set req.backend = b3;
            }
}

奇怪,但真实

相关内容