ToB企服应用市场:ToB评测及商务社交产业平台

标题: k8s~pod单副本的平滑部署 [打印本页]

作者: 天空闲话    时间: 2024-5-17 04:56
标题: k8s~pod单副本的平滑部署
如果你的服务器资源告急,pod可能只能是单副本了,这时在进行平滑的滚动部署时,应该如何配置呢?总不能在部署期间503吧,这是不能接受的!
maxUnavailable来配置不可用数量

我们可以在spec.strategy.strategy.rollingUpdate中,将不可用数maxUnavailable改成0即可实现平滑部署,配置如下:
  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4.   name: keycloak-deployment
  5.   namespace: kc
  6. spec:
  7.   replicas: 1
  8.   #滚动升级策略
  9.   strategy:
  10.     type: RollingUpdate
  11.     rollingUpdate:
  12.       maxUnavailable: 0 #当副本为1时,我们采用这个配置,即不允许有多余的pod
复制代码
如果是多个副本,你也可以通过rollingUpdate中的maxSurge来控制可用节点数,maxUnavailable来控制不可用数,如下面的配置,在副本为3个时,可用数至少为1个,不可用也是0个,相当于1个1个的副本去启动,整个deployment对外始终是3个可用的pod。
  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4.   name: keycloak-deployment
  5.   namespace: kc
  6. spec:
  7.   replicas: 3
  8.   #滚动升级策略
  9.   strategy:
  10.     type: RollingUpdate
  11.     rollingUpdate:
  12.       maxSurge: 1
  13.       maxUnavailable: 0
复制代码
部署过程如图,1个副本时,在发布期间,也始终有1个是可用的

k8s如何探测pod启动了

readinessProbe 是 Kubernetes 中用来查抄容器是否预备好接收流量的机制。通过配置 readinessProbe,Kubernetes 可以确保只有在容器完全就绪并能够处理请求时才会将流量引导到该容器。以下是关于 readinessProbe 的总结:
通过公道配置 readinessProbe,可以提高容器的稳定性和可靠性,确保应用程序在容器就绪后再接收流量,避免由于服务未完全启动而导致的请求失败。希望这个总结对你有所帮助。如果还有其他问题,请随时告诉我。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4