12.5.4. 定义 HTTP 存活度探测
通过设置虚拟机实例 (VMI) 配置的 spec.livenessProbe.httpGet
字段来定义 HTTP 存活度探测。您可以按照与就绪度探测相同的方式为存活度探测定义 HTTP 和 TCP 测试。此流程使用 HTTP GET 测试配置示例存活度探测。
流程
在 VMI 配置文件中包括 HTTP 存活度探测的详细信息。
使用 HTTP GET 测试的存活度探测示例
# ... spec: livenessProbe: initialDelaySeconds: 120 1 periodSeconds: 20 2 httpGet: 3 port: 1500 4 path: /healthz 5 httpHeaders: - name: Custom-Header value: Awesome timeoutSeconds: 10 6 # ...
- 1
- VMI 启动存活度探测前的时间(以秒为单位)。
- 2
- 执行探测之间的延迟(以秒为单位)。默认延迟为 10 秒。这个值必须大于
timeoutSeconds
。 - 3
- 执行的 HTTP GET 请求以连接 VMI。
- 4
- 探测查询的 VMI 端口。在上例中,探测查询端口 1500。VMI 通过 cloud-init 在端口 1500 上安装并运行最小 HTTP 服务器。
- 5
- 在 HTTP 服务器上访问的路径。在上例中,如果服务器的
/healthz
路径的处理程序返回成功代码,则 VMI 被视为健康。如果处理程序返回失败代码,则 VMI 被删除并创建新实例。 - 6
- 在不活跃的时间(以秒为单位)超过这个值时探测会超时,且假定 VMI 失败。默认值为 1。这个值必须小于
periodSeconds
。
运行以下命令来创建 VMI:
$ oc create -f <file_name>.yaml