kayx23 commented on issue #10192:
URL: https://github.com/apache/apisix/issues/10192#issuecomment-1718644339

   There might be a misconception of what a node could be here. What is your 
"node"? A host? And you have microservices deployed on each host?
   
   In APISIX, an upstream can be configured in multiple nodes. If health check 
is configured on upstream with `upstream.checks.xxxx`, each node in the 
upstream will be checked for health _individually_.
   
   
   This can be examined with a request to the control API health check 
endpoint: 
   
   ```shell
   curl "http://127.0.0.1:9090/v1/healthcheck";
   ```
   
   You get something like this for example:
   
   ```json
   [
     {
       "name": "/apisix/routes/example-healthcheck-route",
       "type": "http",
       "nodes": [
         {
           "port": 80,
           "counter": {
             "http_failure": 0,
             "tcp_failure": 0,
             "timeout_failure": 0,
             "success": 0
           },
           "ip": "172.24.0.5",
           "status": "healthy"
         },
         {
           "port": 80,
           "counter": {
             "http_failure": 0,
             "tcp_failure": 0,
             "timeout_failure": 3,
             "success": 0
           },
           "ip": "172.24.0.4",
           "status": "unhealthy"
         }
       ]
     },
     {
       "name": "/apisix/upstreams/example-healthcheck-route",
       "type": "http",
       "nodes": {}
     }
   ]
   ```
   
   Note how the first node is _healthy_ and the second node is not.
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to