12.5.2. 定义 HTTP 就绪度探测
通过设置虚拟机实例 (VMI) 配置的 spec.readinessProbe.httpGet
字段来定义 HTTP 就绪度探测。
流程
在 VMI 配置文件中包括就绪度探测的详细信息。
使用 HTTP GET 测试就绪度探测示例
# ... spec: readinessProbe: httpGet: 1 port: 1500 2 path: /healthz 3 httpHeaders: - name: Custom-Header value: Awesome initialDelaySeconds: 120 4 periodSeconds: 20 5 timeoutSeconds: 10 6 failureThreshold: 3 7 successThreshold: 3 8 # ...
- 1
- 执行的 HTTP GET 请求以连接 VMI。
- 2
- 探测查询的 VMI 端口。在上例中,探测查询端口 1500。
- 3
- 在 HTTP 服务器上访问的路径。在上例中,如果服务器的 /healthz 路径的处理程序返回成功代码,则 VMI 被视为健康。如果处理程序返回失败代码,则 VMI 将从可用端点列表中移除。
- 4
- VMI 启动就绪度探测前的时间(以秒为单位)。
- 5
- 执行探测之间的延迟(以秒为单位)。默认延迟为 10 秒。这个值必须大于
timeoutSeconds
。 - 6
- 在不活跃的时间(以秒为单位)超过这个值时探测会超时,且假定 VMI 失败。默认值为 1。这个值必须小于
periodSeconds
。 - 7
- 探测允许失败的次数。默认值为 3。在进行了指定数量的尝试后,pod 被标记为
Unready
。 - 8
- 在失败后,在探测报告成功的次数达到这个值时才能被视为成功。默认值为 1。
运行以下命令来创建 VMI:
$ oc create -f <file_name>.yaml