【问题标题】:initialDelaySeconds value from configMap来自 configMap 的 initialDelaySeconds 值
【发布时间】:2021-02-05 03:54:31
【问题描述】:

我有多个服务,它们的探针以相同的方式配置。我想将 livenessProbe 的常见值(如 initialDelaySeconds、periodSeconds 等)提取到 configMap 中。有可能吗?

当我像这样创建 configMap 时:

data:
  liveness-endpoint: /actuator/health/liveness
  liveness-initialDelaySeconds: 60
  liveness-periodSeconds: 5

并尝试像这样在探针中引用它:

  livenessProbe:
    httpGet:
      path: liveness-endpoint
      port: http-api
    initialDelaySeconds: liveness-initialDelaySeconds
    periodSeconds: liveness-periodSeconds

kubernetes 抱怨,configMap 必须只有字符串,所以我将其更改为

  liveness-initialDelaySeconds: "60"

然后它抱怨探针必须使用整数,而不是字符串。

如您所见,我可以引用端口进行探测,所以可能有一种方法可以定义这些 int 值,但是如何定义呢?

【问题讨论】:

    标签: kubernetes configmap livenessprobe


    【解决方案1】:

    Kubernetes 不允许在 yaml 文件中使用 configMap。基本上它需要在 configMap 加载之前知道,你只能将 configMaps 用作卷和环境变量。

    ports 也可以是字符串,因为您可以在 pod、svc 定义中命名端口,然后在 liveness、readiness 探针中引用它。但是 periodSeconds 只是普通的旧整数值。

    【讨论】:

      猜你喜欢
      • 2021-12-26
      • 2018-07-12
      • 1970-01-01
      • 2020-11-11
      • 2020-10-21
      • 1970-01-01
      • 2021-07-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多