## 健康檢查
健康檢查[架構概述](../Introduction/Architectureoverview/Healthchecking.md)。如果為集群配置了健康檢查,則會發出相應的統計信息。詳見請參考[統計](../Configurationreference/Clustermanager/Statistics.md)相關文檔。
- [HealthCheck](#healthcheck)
- [HealthCheck.Payload](#healthcheckpayload)
- [HealthCheck.HttpHealthCheck](#healthcheckhttphealthcheck)
- [HealthCheck.TcpHealthCheck](#healthchecktcphealthcheck)
- [HealthCheck.RedisHealthCheck](#healthcheckredishealthcheck)
### HealthCheck
[HealthCheck proto](https://github.com/envoyproxy/data-plane-api/blob/master/api/health_check.proto#L14)
```
{
"timeout": "{...}",
"interval": "{...}",
"interval_jitter": "{...}",
"unhealthy_threshold": "{...}",
"healthy_threshold": "{...}",
"reuse_connection": "{...}",
"http_health_check": "{...}",
"tcp_health_check": "{...}",
"redis_health_check": "{...}"
}
```
- **timeout**<br />
([Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)) 等待健康檢查響應的時間。如果達到超時,則嘗試健康檢查將被視為失敗。
- **interval**<br />
([Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)) 每次嘗試健康檢查之間的時間間隔。
- **interval_jitter**<br />
([Duration](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration)) 可選,抖動量(以毫秒為單位)。如果指定,在Envoy內部將抖動量疊加到時間間隔上。
- **unhealthy_threshold**<br />
([UInt32Value](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#uint32value)) 在主機被標記為不健康之前,需要進行不健康的健康檢查次數。請注意,對于http運行健康檢查,如果主機以503響應,此閾值將被忽略,并且主機立即被視為不健康。
- **healthy_threshold**<br />
([UInt32Value](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#uint32value)) 主機在標記為健康之前所需的健康檢查次數。請注意,在啟動過程中,只需要一次成功的健康檢查即可將主機標記為健康狀態。
- **reuse_connection**<br />
([BoolValue](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#boolvalue)) 健康檢查之間復用健康檢查連接。默認是`true`。
- **http_health_check**<br />
([HealthCheck.HttpHealthCheck](#healthcheckhttphealthcheck)) HTTP健康檢查。
- **tcp_health_check**<br />
([HealthCheck.TcpHealthCheck](#healthchecktcphealthcheck)) TCP健康檢查
- **redis_health_check**<br />
([HealthCheck.RedisHealthCheck](#healthcheckredishealthcheck)) Redis健康檢查
**注意:只能在`http_health_check`,`tcp_health_check`,`redis_health_check`選其中一個進行設置。**
### HealthCheck.Payload
[HealthCheck.Payload proto](https://github.com/envoyproxy/data-plane-api/blob/master/api/health_check.proto#L43)
描述載荷中有效載荷的字節編碼。
```
{
"text": "..."
}
```
- **text**<br />
([string](https://developers.google.com/protocol-buffers/docs/proto#scalar), REQUIRED) 十六進制編碼載荷,例如,“000000FF”。準確地說,必須設置一個文本。
### HealthCheck.HttpHealthCheck
[HealthCheck.HttpHealthCheck proto](https://github.com/envoyproxy/data-plane-api/blob/master/api/health_check.proto#L55)
```
{
"path": "...",
"service_name": "..."
}
```
- **path**<br />
([string](https://developers.google.com/protocol-buffers/docs/proto#scalar), REQUIRED) 指定運行健康檢查期間,所請求的HTTP路徑。例如`/healthcheck`。
- **service_name**<br />
([string](https://developers.google.com/protocol-buffers/docs/proto#scalar)) 可選,服務名稱參數,用于驗證運行狀況檢查的群集的身份。請參閱[架構概述](../Introduction/Architectureoverview/Healthchecking.md)以獲取更多信息。
### HealthCheck.TcpHealthCheck
[HealthCheck.TcpHealthCheck proto](https://github.com/envoyproxy/data-plane-api/blob/master/api/health_check.proto#L77)
```
{
"send": "{...}",
"receive": []
}
```
- **send**<br />
([HealthCheck.Payload](#healthcheckpayload)) 若有效載荷為空,意味著僅做連接的健康檢查。
- **receive**<br />
([HealthCheck.Payload](#healthcheckpayload)) 當檢查響應時,執行模糊匹配,每個二進制塊必須被找到,并且按照指定的順序,但不一定是連續的。
### HealthCheck.RedisHealthCheck
[HealthCheck.RedisHealthCheck proto](https://github.com/envoyproxy/data-plane-api/blob/master/api/health_check.proto#L87)
```
{}
```
## 返回
- [上一級](../v2APIreference.md)
- [首頁目錄](../README.md)
- 首頁
- 簡介
- Envoy是什么
- 架構介紹
- 術語
- 線程模型
- 監聽器
- L3/L4網絡過濾器
- HTTP連接管理
- HTTP過濾器
- HTTP路由
- gRPC
- WebSocket支持
- 集群管理
- 服務發現
- 健康檢查
- 連接池
- 負載均衡
- 異常檢測
- 熔斷
- 全局限速
- TLS
- 統計
- 運行時配置
- 跟蹤
- TCP代理
- 訪問日志
- MongoDB
- DynamoDB
- Redis
- 熱重啟
- 動態配置
- 初始化
- 逐出
- 腳本
- 部署
- 業界對比
- 獲得幫助
- 歷史版本
- 編譯安裝
- 編譯
- 參考配置
- 演示沙箱
- 前端代理
- Zipkin跟蹤
- Jaeger跟蹤
- gRPC橋接
- 構建Envoy Docker鏡像
- 工具
- 配置參考
- V1 API 概述
- V2 API 概述
- 監聽器
- 網絡過濾器
- TLS客戶端身份認證
- Echo
- Mongo代理
- 速率限制
- Redis代理
- TCP代理
- HTTP連接管理器
- 路由匹配
- 流量轉移/分流
- HTTP頭部操作
- HTTP頭部清理
- 統計
- 運行時設置
- 路由發現服務
- HTTP過濾器
- 緩存
- CORS過濾器
- 故障注入
- DynamoDB
- gRPC HTTP/1.1 橋接
- gRPC-JSON 轉碼過濾器
- gRPC-Web 過濾器
- 健康檢查
- 速率限制
- 路由
- Lua
- 集群管理
- 統計
- 運行時設置
- 集群發現服務
- 健康檢查
- 熔斷
- 訪問日志
- 限速服務
- 運行時配置
- 路由表檢查工具
- 運維管理
- 命令行選項
- 熱重啟
- 管理接口
- 統計概述
- 運行時配置
- 文件系統
- 自定義擴展示例
- V1 API參考
- 監聽器
- 網絡過濾器
- TLS客戶端身份認證
- Echo
- HTTP連接管理
- Mongo代理
- 速率限制
- Redis代理
- TCP代理
- HTTP路由配置
- 虛擬主機
- 路由
- 虛擬集群
- 速率限制配置
- 路由發現服務
- HTTP過濾器
- 緩存
- CORS過濾器
- DynamoDB
- 故障注入
- gRPC HTTP/1.1 橋接
- gRPC-JSON 轉碼過濾器
- gRPC-Web 過濾器
- 健康檢查
- Lua
- 速率限制
- 路由
- 集群管理
- 集群
- 健康檢查
- 熔斷
- TLS上下文
- 異常值檢測
- HASH環負載均衡配置
- 異常檢測
- 集群發現服務
- 服務發現服務
- 訪問日志
- 管理接口
- 限速服務
- 運行時配置
- 跟蹤
- V2 API參考
- 啟動引導
- 監聽&監聽發現
- 集群&集群發現
- 服務發現
- 健康檢查
- HTTP路由管理&發現
- TLS配置
- 通用的類型
- 網絡地址
- 協議選項
- 發現API
- 限速組件
- 過濾器
- 網絡過濾器
- TLS客戶端身份認證
- HTTP連接管理
- Mongo代理
- 速率限制
- Redis代理
- TCP代理
- HTTP過濾器
- 緩存
- 故障注入
- 健康檢查
- Lua
- 速率限制
- 路由
- gRPC-JSON轉碼器
- 常見訪問日志類型
- 常見故障注入類型
- FAQ
- Envoy有多快?
- 我在哪里獲得二進制文件?
- 我如何設置SNI?
- 如何設置區域感知路由?
- 我如何設置Zipkin跟蹤?