健康狀態探索服務 (HDS) (proto)

service.health.v3.Capability

[service.health.v3.Capability proto]

定義支援的協定等,以便管理伺服器可以為健康檢查指派正確的端點。

{
  "health_check_protocols": []
}
health_check_protocols

(重複 service.health.v3.Capability.Protocol)

列舉 service.health.v3.Capability.Protocol

[service.health.v3.Capability.Protocol proto]

不同的 Envoy 實例可能具有不同的功能 (例如 Redis),並且/或為不同的協定啟用連接埠。

HTTP

(預設)

TCP

REDIS

service.health.v3.HealthCheckRequest

[service.health.v3.HealthCheckRequest proto]

{
  "node": {...},
  "capability": {...}
}
node

(config.core.v3.Node)

capability

(service.health.v3.Capability)

service.health.v3.EndpointHealth

[service.health.v3.EndpointHealth proto]

{
  "endpoint": {...},
  "health_status": ...
}
endpoint

(config.endpoint.v3.Endpoint)

health_status

(config.core.v3.HealthStatus)

service.health.v3.LocalityEndpointsHealth

[service.health.v3.LocalityEndpointsHealth proto]

按叢集將端點健康狀態依區域分組。

{
  "locality": {...},
  "endpoints_health": []
}
locality

(config.core.v3.Locality)

endpoints_health

(重複 service.health.v3.EndpointHealth)

service.health.v3.ClusterEndpointsHealth

[service.health.v3.ClusterEndpointsHealth proto]

叢集中端點的健康狀態。叢集名稱和區域應與 ClusterHealthCheck 訊息中的對應欄位一致。

{
  "cluster_name": ...,
  "locality_endpoints_health": []
}
cluster_name

(字串)

locality_endpoints_health

(重複 service.health.v3.LocalityEndpointsHealth)

service.health.v3.EndpointHealthResponse

[service.health.v3.EndpointHealthResponse proto]

{
  "endpoints_health": [],
  "cluster_endpoints_health": []
}
endpoints_health

(重複 service.health.v3.EndpointHealth) 已棄用 - 端點健康資訊的扁平列表。

cluster_endpoints_health

(重複 service.health.v3.ClusterEndpointsHealth) 按叢集組織端點健康資訊。

service.health.v3.HealthCheckRequestOrEndpointHealthResponse

[service.health.v3.HealthCheckRequestOrEndpointHealthResponse proto]

{
  "health_check_request": {...},
  "endpoint_health_response": {...}
}
health_check_request

(service.health.v3.HealthCheckRequest)

只能設定 health_check_requestendpoint_health_response 其中之一。

endpoint_health_response

(service.health.v3.EndpointHealthResponse)

只能設定 health_check_requestendpoint_health_response 其中之一。

service.health.v3.LocalityEndpoints

[service.health.v3.LocalityEndpoints proto]

{
  "locality": {...},
  "endpoints": []
}
locality

(config.core.v3.Locality)

endpoints

(重複 config.endpoint.v3.Endpoint)

service.health.v3.ClusterHealthCheck

[service.health.v3.ClusterHealthCheck proto]

叢集名稱和區域會提供給 Envoy,用於 Envoy 執行健康檢查的端點,以支援 Envoy 實例 (在 HDS 之外) 的統計報表、記錄和偵錯。為了達到最大效益,它應與 EDS 提供的叢集結構相同。

{
  "cluster_name": ...,
  "health_checks": [],
  "locality_endpoints": [],
  "transport_socket_matches": [],
  "upstream_bind_config": {...}
}
cluster_name

(字串)

health_checks

(重複 config.core.v3.HealthCheck)

locality_endpoints

(重複 service.health.v3.LocalityEndpoints)

transport_socket_matches

(重複 config.cluster.v3.Cluster.TransportSocketMatch) 當執行健康檢查時,由連線上的 health_checks.transport_socket_match_criteria 篩選的可選地圖。如需詳細資訊,請參閱 config.cluster.v3.Cluster.transport_socket_matches

upstream_bind_config

(config.core.v3.BindConfig) 用於繫結新建立的上游連線的可選組態。如果位址和連接埠為空,則不會執行繫結。

service.health.v3.HealthCheckSpecifier

[service.health.v3.HealthCheckSpecifier proto]

{
  "cluster_health_checks": [],
  "interval": {...}
}
cluster_health_checks

(重複 service.health.v3.ClusterHealthCheck)

interval

(持續時間) 預設值為 1 秒。