If an exception is detected during health check, it can be checked from three aspects: layer 4, layer 7, and backend bandwidth.
Under TCP protocol, CLB uses SYN packets for check. Under UDP protocol, CLB uses the ping
command for check.
When a real server port is marked as "unhealthy" on the page, troubleshoot in the following procedures:
netstat
command to check whether there is a process listening on the real server port. If no such process is found, restart the service.For layer-7 (HTTP protocol) services, when a listener has an exception during health check, troubleshoot in the following procedures:
Suppose that both CLB's frontend port and CVM's backend port are 80, and the CVM's private IP is 1.1.1.10
:
For a server on Windows, use the following command:
netstat -ano | findstr :80
For a server on Linux, use the following command:
netstat -anp | grep :80
If you can see the listening on 1.1.1.10:80
or 0.0.0.0:80
, the configuration is normal.
For layer-4 CLB, it is considered normal as long as backend port telnet
responds. You can use telnet 1.1.1.10 80
for testing. For layer-7 CLB, it is considered normal if an HTTP status code such as 200 is returned. Check as follows:
On Windows, you can directly enter the private IP in the browser on a CVM instance to test whether it is normal. This example uses http://1.1.1.10
.
On Linux, you can run the curl -I
command to check whether the status is HTTP/1.1 200 OK
. This example uses the curl -I 1.1.1.10
command.
Check whether the private network firewall of the server allows port 80 to pass. You can temporarily disable the firewall for the test.
For Windows, run the firewall.cpl' command to disable the firewall.
For Linux, run the
/etc/init.d/iptables stopcommand to disable the firewall (for CenOS 7.x, run
systemctl stop firewalld`).
tcp_tw_recycle
. For more information, please see Cause Analysis.Note:
- No CLB traffic or bandwidth fees are charged for non-bill-by-IP accounts. The public network traffic fees incurred by the CLB service are charged by the bound backend CVM instance.
- Due to the impossibility to accurately predict the traffic of internet and web businesses, in order to avoid waste and packet loss, we recommend you select "bill-by-traffic" and set a reasonable peak bandwidth cap for public network bandwidth when purchasing a backend CVM instance. In this way, you don't need to care about the increase/decrease in the total traffic of the CLB egress, as fees will be charged by traffic.
Was this page helpful?