Health Discovery Service (HDS)¶
service.health.v3.Capability¶
[service.health.v3.Capability proto]
Defines supported protocols etc, so the management server can assign proper endpoints to healthcheck.
{
  "health_check_protocols": []
}
- health_check_protocols
 
Enum service.health.v3.Capability.Protocol¶
[service.health.v3.Capability.Protocol proto]
Different Envoy instances may have different capabilities (e.g. Redis) and/or have ports enabled for different protocols.
- HTTP
 (DEFAULT) 
- TCP
 
- REDIS
 
service.health.v3.HealthCheckRequest¶
[service.health.v3.HealthCheckRequest proto]
{
  "node": "{...}",
  "capability": "{...}"
}
- node
 
- capability
 
service.health.v3.EndpointHealth¶
[service.health.v3.EndpointHealth proto]
{
  "endpoint": "{...}",
  "health_status": "..."
}
- endpoint
 
- health_status
 
service.health.v3.EndpointHealthResponse¶
[service.health.v3.EndpointHealthResponse proto]
{
  "endpoints_health": []
}
- endpoints_health
 
service.health.v3.HealthCheckRequestOrEndpointHealthResponse¶
[service.health.v3.HealthCheckRequestOrEndpointHealthResponse proto]
{
  "health_check_request": "{...}",
  "endpoint_health_response": "{...}"
}
- health_check_request
 (service.health.v3.HealthCheckRequest)
Only one of health_check_request, endpoint_health_response may be set.
- endpoint_health_response
 (service.health.v3.EndpointHealthResponse)
Only one of health_check_request, endpoint_health_response may be set.
service.health.v3.LocalityEndpoints¶
[service.health.v3.LocalityEndpoints proto]
{
  "locality": "{...}",
  "endpoints": []
}
- locality
 
- endpoints
 
service.health.v3.ClusterHealthCheck¶
[service.health.v3.ClusterHealthCheck proto]
The cluster name and locality is provided to Envoy for the endpoints that it health checks to support statistics reporting, logging and debugging by the Envoy instance (outside of HDS). For maximum usefulness, it should match the same cluster structure as that provided by EDS.
{
  "cluster_name": "...",
  "health_checks": [],
  "locality_endpoints": []
}
- cluster_name
 (string)
- health_checks
 
- locality_endpoints
 
service.health.v3.HealthCheckSpecifier¶
[service.health.v3.HealthCheckSpecifier proto]
{
  "cluster_health_checks": [],
  "interval": "{...}"
}
- cluster_health_checks
 
- interval
 (Duration) The default is 1 second.