Varnish on stand-alone server
Stalker, Tim
Tim.Stalker at ucdenver.edu
Sat Jan 21 19:04:48 CET 2017
Yes, when I point the backend host to the ip of the varnish virtual machine in my host computer's /etc/hosts file, I get this response in the varnish log on the varnish vm:
* << BeReq >> 17
- Begin bereq 16 fetch
- Timestamp Start: 1485021291.247201 0.000000 0.000000
- BereqMethod GET
- BereqURL /
- BereqProtocol HTTP/1.1
- BereqHeader Host: clas-test.myvhost.pvt
- BereqHeader Upgrade-Insecure-Requests: 1
- BereqHeader User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
- BereqHeader Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
- BereqHeader Accept-Language: en-US,en;q=0.8
- BereqHeader X-Forwarded-For: 192.168.33.1
- BereqHeader Accept-Encoding: gzip
- BereqHeader X-Varnish: 17
- VCL_call BACKEND_FETCH
- VCL_return fetch
- FetchError no backend connection
- Timestamp Beresp: 1485021291.247212 0.000011 0.000011
- Timestamp Error: 1485021291.247215 0.000013 0.000002
- BerespProtocol HTTP/1.1
- BerespStatus 503
- BerespReason Service Unavailable
- BerespReason Backend fetch failed
- BerespHeader Date: Sat, 21 Jan 2017 17:54:51 GMT
- BerespHeader Server: Varnish
- VCL_call BACKEND_ERROR
- BerespHeader Content-Type: text/html; charset=utf-8
- VCL_return deliver
- Storage malloc Transient
- ObjProtocol HTTP/1.1
- ObjStatus 503
- ObjReason Backend fetch failed
- ObjHeader Date: Sat, 21 Jan 2017 17:54:51 GMT
- ObjHeader Server: Varnish
- ObjHeader Content-Type: text/html; charset=utf-8
- Length 27910
- BereqAcct 0 0 0 0 0 0
- End
* << Session >> 163842
- Begin sess 0 HTTP/1
- SessOpen 192.168.33.1 40398 :80 192.168.33.27 80 1485021291.241650 16
- SessClose RX_TIMEOUT 5.094
- End
* << Session >> 131074
- Begin sess 0 HTTP/1
- SessOpen 192.168.33.1 40400 :80 192.168.33.27 80 1485021291.241657 17
- SessClose RX_TIMEOUT 5.094
- End
* << Session >> 15
- Begin sess 0 HTTP/1
- SessOpen 192.168.33.1 40396 :80 192.168.33.27 80 1485021291.241622 14
- Link req 16 rxreq
- Link req 18 rxreq
- SessClose RX_TIMEOUT 5.395
- End
Any ideas? I can only think that it's a networking issue because the same setup I have, same default.vcl, backends.vcl files, with apache installed on the same VM as varnish, works fine. The backend host when separate from varnish in its own VM also works fine. But varnish cannot connect to it.
________________________________
From: Miguel González <miguel_3_gonzalez at yahoo.es>
Sent: Friday, January 20, 2017 3:18:51 PM
To: Stalker, Tim; Andreas Plesner; varnish-misc at varnish-cache.org
Subject: Re: Varnish on stand-alone server
What about the acl purge entries?
You probably know that you have to add in your hosts file where you are
running your browser you have to point the domain you are hitting with
the ip address of your varnish VM, don´t you?
Miguel
On 01/20/17 5:38 PM, Stalker, Tim wrote:
> I can't provide much detail because I don't get any reports or data from
> varnishlog. No errors are reported. When I run "varnishadm
> backend.list", the backend is reported as healthy. Plus, there's no
> issues with varnish communicating with the backend when I visit the
> backend host from within the varnish virtual machine. Everything works
> as intended when I run a web client (curl or lynx) from the varnish vm
> terminal. The problem is varnish doesn't communicate with the backend
> when I visit the backend host from outside the vm on my host computer's
> web browser.
>
>
> The setup is is this - two virtual machines running in vagrant and
> virtualbox
>
>
> 192.168.33.26 (apache box with hostname clas-test.myhost.pvt listening
> on port 84)
>
> 192.168.33.27 (clas-varnish.myhost.pvt)
>
>
> From default.vcl:
>
>
> vcl 4.0;
> import std;
> import directors;
>
> include "backends.vcl";
>
> sub vcl_init {
>
> new local_test = directors.round_robin();
> local_test.add_backend(express_test);
> }
> sub vcl_recv {
>
> if (server.hostname == "clas-test.hostname.pvt") {
> set req.backend_hint = local_test.backend();
> }
> }
> sub vcl_deliver {
> if (obj.hits > 0) {
> set resp.http.X-Cache = "HIT";
> std.log("hitmiss:HIT");
> } else {
> set resp.http.X-Cache = "MISS";
> std.log("hitmiss:MISS");
> }
> }
>
> From backends.vcl:
>
>
> backend express_test {
> .host = "192.168.33.26"; #ip of my host in its own virtual machine
> .port = "84"; #port I have set in the virtual host on my host's
> virtual machine
> }
>
> In /etc/varnish/varnish.params I have the VARNISH_LISTEN_PORT set to
> port 80 and VARNISH_LISTEN_ADDRESS commented out. Note, that when I set
> the address to my backend ip, varnish won't start and I get this error:
>
> bind(): Cannot assign requested address
> [19743]: Error: Failed to open (any) accept sockets.
>
> And yet when I run "varnishadm backend.list" with the listen address
> commented out, the backend is reported as healthy.
>
> Thanks again, all
>
>
>
> ------------------------------------------------------------------------
> *From:* varnish-misc-bounces+tim.stalker=ucdenver.edu at varnish-cache.org
> <varnish-misc-bounces+tim.stalker=ucdenver.edu at varnish-cache.org> on
> behalf of Andreas Plesner <apj at mutt.dk>
> *Sent:* Friday, January 20, 2017 2:59:10 AM
> *To:* varnish-misc at varnish-cache.org
> *Subject:* Re: Varnish on stand-alone server
>
> On Thu, Jan 19, 2017 at 06:23:56PM +0000, Stalker, Tim wrote:
>> Varnish is aware of the backend I have set and works fine as long as I'm
>> logged into its virtual machine and run either curl or lynx to the address of
>> the machine with apache running. I have my /etc/hosts file set with the
>> backend address and virtual host as configured in the apache box, but it
>> seems that varnish ignores the /etc/hosts file. I get logging and see the
>> headers when I run curl -I
>> http://backend.vhost.name<http://backend.vhost.name/> but when I do the same
>> thing via the browser, curl, or lynx on my host computer, no logging, nothing
>> happens inside the varnish vm.
>
> You're not giving us any info that actually enables us to help you. What
> doesn't work? What error messages do you get? What did you already try? What
> were the results of these attempts? What is in the log?
>
> Most important is:
>
> What doesn't work? You've only stated that it doesn't work, not what is
> actually happening when you've determined that it doesn't work.
>
> --
> Andreas
>
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
>
> _______________________________________________
> varnish-misc mailing list
> varnish-misc at varnish-cache.org
> https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-misc/attachments/20170121/9b4670b1/attachment.html>
More information about the varnish-misc
mailing list