Kubernetes 探针与资源限制解析

1. Liveness Probe 与 Readiness Probe 的区别

1

探针类型 作用机制 失败后果
Liveness Probe 检测容器是否处于运行状态(是否存活) 重启容器
Readiness Probe 检测容器是否准备好接收流量(服务是否可用) 从Service Endpoints中移除
2. HTTP 检查端点配置示例
livenessProbe:
  httpGet:
    path: /healthz
    port: 8080
  initialDelaySeconds: 15
  periodSeconds: 20

readinessProbe:
  httpGet: 
    path: /ready
    port: 8080
  initialDelaySeconds: 5
  periodSeconds: 10


2

注意要点:

  • /healthz/ready 需要自行实现
  • initialDelaySeconds 应根据应用实际启动时间调整
  • 推荐HTTP状态码200-399视为成功
3. 容器资源限制配置
resources:
  requests:
    memory: "256Mi"
    cpu: "500m"
  limits:
    memory: "512Mi" 
    cpu: "1"


3

关键参数说明:

  • requests: 调度时保证的最小资源
  • limits: 容器最大可用资源
  • 内存单位必须使用 Mi/Gi(二进制单位)
  • CPU 单位:1核心=1000m(millicores)

常见资源问题处理:

  • 内存超限:容器会被 OOMKilled
  • CPU 超限:容器会被 CPU Throttling
Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐