首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes和readinessprobe

Kubernetes和readinessprobe
EN

Stack Overflow用户
提问于 2019-03-01 07:36:12
回答 1查看 68关注 0票数 0

我已经在kubernetes中指定了一个部署:

代码语言:javascript
复制
apiVersion: v1
kind: List
items:
- apiVersion: extensions/v1beta1
  kind: Deployment
  metadata:
    name: quote-data
    namespace: default
  spec:
    progressDeadlineSeconds: 600
    replicas: 2
    revisionHistoryLimit: 10
    selector:
      matchLabels:
        run: quote-data
    strategy:
      rollingUpdate:
        maxSurge: 25%
        maxUnavailable: 25%
      type: RollingUpdate
    template:
      metadata:
        labels:
          run: quote-data
      spec:
        containers:
        - image: quote-data:2
          imagePullPolicy: Always
          name: quote-data
          readinessProbe:
            httpGet:
              path: /api/data/health
              port: 5000
            initialDelaySeconds: 5
            periodSeconds: 5
            failureThreshold: 1
            successThreshold: 1
          ports:
          - containerPort: 5000
            protocol: TCP

我们能否使用readinessprobe禁用此pod的流量(启动阶段后几分钟)?

在我的测试中,即使readinessprobe失败,服务(类型: LoadBalancer)也会继续在坏pod上发送流量。在服务中,pod的就绪状态= false,但服务仍然继续在错误的pod上发送

更新:它似乎适用于卷发,但不适用于Postman。我用一个简单的curl命令在两个请求之间有一个不同的pod。我总是和邮差在同一个pod里。

EN

回答 1

Stack Overflow用户

发布于 2021-01-09 00:19:21

可以,如果您在readinessProbe上设置initialDelaySeconds: xxx,则流量将被禁用。因为这并不是在所有的Kubernetes版本上都有效,当然不是在1.15和bellow版本上。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54935919

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档