0

在下面的 yaml 语法中:

      readinessProbe:
        httpGet:
          path: /index.html
          port: 80
        initialDelaySeconds: 3
        timeoutSeconds: 3
        periodSeconds: 10
        failureThreshold: 3

在 Pod 的初始部署期间使用就绪探测。

  1. 为了推出新版本的应用程序,使用滚动部署策略,是否使用就绪探针进行滚动部署?

  2. path&port字段允许输入特定服务的 url 和端口号,但不能输入依赖服务。如何验证,如果依赖服务也准备好了?

4

1 回答 1

3

使用滚动部署策略,是否使用就绪探针进行滚动部署?

是的,新版本的 Pod 已经推出,旧的 Pod 不会终止,直到新版本的 Pod 处于就绪状态。

例如,如果你推出一个新版本,它有一个错误,因此 Pod 没有准备好 - 旧的 Pod 仍将运行,流量只会路由到准备好的旧 Pod。

此外,如果您未指定readinessProbe,则使用进程状态,例如,终止的进程不会被视为ready

如何验证,如果依赖服务也准备好了?

您可以配置一个自定义的readinessProbe,例如一个 http-endpoint on /healtz,这取决于您要在该端点的实现中使用什么逻辑。2xx 的 http 响应代码被视为ready

于 2021-10-03T16:37:41.180 回答