CentOS Web Panel is a free control panel that allows quick and easy management of servers.
It allows to improve server performance and website speed with web applications like Varnish Cache.
But, enabling Varnish Cache often creates the error “503 backend fetch failed” due to configuration problems.
At Bobcares, we help server owners to find the real reason for such errors as part of our Dedicated Support Services for Web Hosts.
Today, let’s see what causes the CentOS Web Panel error “503 backend fetch failed” and how we fix it.
What causes the error “503 backend fetch failed” ?
Before diving into the details of the error, we need to know the purpose of Varnish Cache in the web server configuration.
Varnish cache is a reverse proxy that is put in front of the web server. The helps to reduce the loading times of websites. The web page requests first reach the Varnish cache that listens on port 80.
Varnish visits the back-end server once to cache and store the pages. Then all future requests for the same page will be served by Varnish. This ensures faster loading of pages.
At times, when server do not having adequate memory or if there are too many requests queuing up, backend connection to server fails. Then website shows the error;
Error 503 Backend fetch failed Backend fetch failed Guru Meditation: XID: 1639327 Varnish cache server
The typical reasons for the errors are :
1. Memory issues
For servers where there are too many requests queuing up, adequate amount of memory is needed to serve the requests. When there is limit for the memory use, it results in connection failure with back-end web server.
2. Wrong Varnish cache configuration
Similarly, from our expertise in managing servers, wrong Varnish Cache configuration also can cause the error.
The major configuration errors are :
- Varnish and Apache using same port 80.
- The IP used in Varnish configuration not listening properly.
How to fix “503 backend fetch failed” in CentOS Web Panel?
Now that we know the major failure points, let’s see how we can fix the error.
1. Allocate more Memory
The amount of memory that Varnish will use depends on the number of requests it receive. Higher the number of requests, higher the memory consumption.
Hence, firstly our Hosting Support Engineers do a proactive analysis of number of website visitors on the server. Then, we estimate the total memory usage. And, we add additional memory for varnish cache to avoid further problems.
2. Correct Varnish Configuration
Similarly, our Hosting Support Engineers adjust the varnish port, IP address and other parameters from the CentOS Web Panel. The interface looks as shown in the picture.
And, when there is high load in the server even after re-configuring Varnish cache, we can disable the Varnish cache from the CentOS web panel (CWP). To do this,
- Login to CWP
- Click on Apache Settings drop down
- Change Webservers
Our Dedicated Support Engineers re-enable the varnish cache only after ensuring proper memory allocation on the server.
CentOS Web Panel error “503 backend fetch failed” happens mainly due to memory allocation issues or bad varnish cache configuration. Today, we’ve seen the top causes for the error and how our Dedicated Support Engineers fix them.