健康检查端点

以 Markdown 格式查看
企业功能

此功能仅适用于企业计划。如需开始使用,请联系 support@buildwithfern.com

自托管容器在端口 8081 上为 Kubernetes 和 Helm 部署暴露健康检查端点。这些端点帮助您监控容器的健康状况并确保正确的启动行为。

存活性探针检测不可恢复的故障并触发容器重启,而就绪性探针防止将流量路由到仍在启动的容器。通过使用两个探针,部署不再需要任意超时,如 --wait --timeout 15m0s

可用端点

存活性探针

GET /liveness 通过检查 PID 来验证所有关键服务进程是否仍在运行。使用此探针来区分不可恢复的故障(进程死亡)和缓慢启动。

Usage
$curl http://localhost:8081/liveness
响应描述
200 OK所有关键进程都是活跃的
503 Service Unavailable一个或多个关键进程已死亡(容器应该重启)
  • PostgreSQL(通过 pg_isready
  • MinIO(通过 /minio/health/live
  • FDR 服务器(通过 /health
  • Next.js 文档服务器(通过根端点)
  • MeiliSearch(仅警告,非关键)

就绪性探针

GET /readiness 通过测试健康端点来验证所有服务是否健康并准备好处理流量。只有当所有服务都完全初始化并响应时才返回成功。

Usage
$curl http://localhost:8081/readiness
响应描述
200 OK所有服务都准备好处理流量
503 Service Unavailable一个或多个服务尚未准备好(需要等待更长时间)
  • PostgreSQL(通过 pg_isready
  • MinIO(通过 /minio/health/live
  • FDR 服务器(通过 /health
  • Next.js 文档服务器(通过根端点)
  • MeiliSearch(仅警告,非关键)

传统健康端点

GET /health 为现有部署提供向后兼容性。返回与就绪性探针相同的状态。

Usage
$curl http://localhost:8081/health

配置

配置您的 Kubernetes 或 Helm 部署以使用两个探针:

1livenessProbe:
2 httpGet:
3 path: /liveness
4 port: 8081
5 initialDelaySeconds: 60
6 periodSeconds: 10
7 timeoutSeconds: 5
8 failureThreshold: 3
9
10readinessProbe:
11 httpGet:
12 path: /readiness
13 port: 8081
14 initialDelaySeconds: 30
15 periodSeconds: 5
16 timeoutSeconds: 5
17 failureThreshold: 3