滚动部署中是否使用了readinessprobe?

ove*_*nge 4 kubernetes readinessprobe

在下面的 yaml 语法中:

      readinessProbe:
        httpGet:
          path: /index.html
          port: 80
        initialDelaySeconds: 3
        timeoutSeconds: 3
        periodSeconds: 10
        failureThreshold: 3
Run Code Online (Sandbox Code Playgroud)

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

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

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

Jon*_*nas 5

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

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

例如,如果您推出新版本,则存在一个错误,导致 Pod 未准备就绪 - 旧 Pod 仍将运行,并且流量仅路由到就绪的Pod。

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

如何验证依赖服务是否也准备好?

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