首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何告诉Kubernetes不要在创建后立即向pod发送流量

如何告诉Kubernetes不要在创建后立即向pod发送流量
EN

Stack Overflow用户
提问于 2021-03-25 22:01:04
回答 1查看 56关注 0票数 0

我有一个Kubernetes nginx部署,当我使用kubectl apply -f file.yaml重新部署它时,它有一个小的停机时间,大约3到5秒。

我使用readinessProbe告诉Kubernetes,在准备工作之前不应该将流量发送到该pod,但是一旦部署开始(即使initialDelaySeconds还没有完成,我也会收到502/503错误,这些错误会在准备工作后立即结束。

所以,我认为,在readinessProbe成功之前,Kubernetes不应该考虑这个pod,但这不是我所看到的。

如果我将initialDelaySeconds设置为10,我会得到大约10秒的中断。如果我将它减少到0,我仍然有一个小的停机时间,直到准备工作。

我正在使用的服务/部署的相关部分是

代码语言:javascript
复制
---
apiVersion: v1
kind: Service
metadata:
  name: 'name'
spec:
  ports:
    - port: 80
      protocol: TCP
      name: http
  selector:
    project: 'project'
    role: bastion
  type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: 'bastion'
spec:
  replicas: 6
  strategy:
    rollingUpdate:
      maxSurge: 6
      maxUnavailable: 0
    type: RollingUpdate
  template:
    metadata:
    spec:
      containers:
        - name: 'bastion'
          image: 'my-image'
          imagePullPolicy: Always
          ports:
            - containerPort: 80
          lifecycle:
            preStop:
              exec:
                command: ['sh', '-c', '/usr/sbin/nginx -s quit;']
          livenessProbe:
            httpGet:
              path: /myendpoint
              port: 80
            periodSeconds: 60
            initialDelaySeconds: 15
            failureThreshold: 15
          readinessProbe:
            httpGet:
              path: /myendpoint
              port: 80
          resources:
            requests:
              cpu: 5m
              memory: 5Mi
            limits:
              cpu: 50m
              memory: 50Mi
      imagePullSecrets:
        - name: 'imagesecrets'

我是不是漏掉了什么?我可以尝试进行哪种更改来调试/解决此问题?

EN

回答 1

Stack Overflow用户

发布于 2021-03-30 22:03:41

你已经用过

代码语言:javascript
复制
periodSeconds: 60
initialDelaySeconds: 15
failureThreshold: 15

用于livenessProbe,但是您还没有为就绪探测定义任何。我想这就是你看到错误的原因。也尝试为readinessProbe定义initialDelaySeconds

此外,要调试此过程,您可以描述一个新创建的pod。最后,您将看到正在发生的所有事件,包括就绪探测事件

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

https://stackoverflow.com/questions/66801095

复制
相关文章

相似问题

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