k8s異常pod處理

自動處理:

靈活運用readinessProbe和livenessProbe探針,對於常規異常(如:服務沒有響應,健康檢查失敗)作到自動處理,業務日誌記錄異常負載均衡

  • readinessProbe 主要是用來探測服務是否可用,若是不可用,從service流量負載中刪除
  • livenessProbe 探測容器是否健康,若是不健康則重啓服務

人工介入

探針沒有關注到的異常,能夠經過監控告警,及時發現問題(如cpu負載太高等),人工介入。此時能夠經過下面操做,完成流量切換和保留現場日誌

修改異常pod的labels(對應於service的selector配置),如:code

kubectl -n test edit pod data-message-7974fdd4db-zh692

修改:it

labels:
    cluster: data-message

test

labels:
    cluster: data-message-err

原理:k8s提供的service負載均衡是經過labels來選擇同一個ns下的pod做爲endpoints。手動更改異常pod label能夠作到切除用戶流量,並保留異常pod。同時k8s會自動起一個新的pod,補充剛剛剔除的異常pod容器

相關文章
相關標籤/搜索