成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

K8S故障處理指南:pod驅逐問題處理

運維
在K8S集群故障處理過程中,你可能遇到過pod的各種狀態,Evicted狀態代表你的K8S環境遇到了資源驅逐的問題,本節通過對驅逐問題的解決,參數的調整,問題的處理思路,希望給你解決此類問題提供幫助。

在K8S集群故障處理過程中,你可能遇到過pod的各種狀態,Evicted狀態代表你的K8S環境遇到了資源驅逐的問題,本節通過對驅逐問題的解決,參數的調整,問題的處理思路,希望給你解決此類問題提供幫助。

pod驅逐問題

pod出現狀態為Evicted時,表示出現了驅逐。pod驅逐出現的原因一般為資源不足,內存或磁盤空間不足,kubect describe node 根據集群事件或者系統日志來判斷處于哪種驅逐場景。

圖片

  • 內存驅逐

圖片

關鍵字:MemPressure

操作系統日志,kubelet廠商驅逐pod來回收內存

圖片

  • 磁盤驅逐

根據pod日志查看也可以。

圖片

關鍵字:DiskPressure

當出現磁盤驅逐的時候,K8S的機制會在磁盤資源不足時刪除未使用的容器鏡像來釋放空間。

處理思路

總體策略:根據分析的原因對應處理即可,找到驅逐pod所在的node節點,分析內存,cpu或者磁盤空間,分別采取不同措施。

首先是釋放資源,讓pod不再出現驅逐事件,保證業務使用不受影響。

內存場景說明

  1. 如果是內存出現驅逐,應用是多副本的情況下,可以擇時重啟導致內存占用高的服務釋放資源
  2. 若沒有發現占用內存高的資源,查看buff/cache占用是否過多不釋放,可以臨時或者加定時任務釋放
echo 1 > /proc/sys/vm/drop_caches
或者 sysctl -w vm.drop_caches=1
echo 2 > /proc/sys/vm/drop_caches
或者 sysctl -w vm.drop_caches=2
echo 3 > /proc/sys/vm/drop_caches
或者sysctl -w vm.drop_caches=3

3.如果是正常業務占用,則后續及時擴容內存即可。

4.如果是其他場景,檢查操作系統是否為XC系統,需要找廠商進行分析。

  • 清理驅逐pod

清理驅逐的pod,避免反復重啟積累過多。

kubectl get pod -o wide | grep  'Evicted' | awk '{print $2}' | xargs kubectl delete pod
  • 關于驅逐的監控項

在K8S集群中,為了及時監控到驅逐問題,我們可以通過添加Prometheus監控來提前檢測。

# 監控內存驅逐
kube_node_status_condition{cnotallow="MemoryPressure",status="true"} ==1
#監控磁盤驅逐
kube_node_status_condition{cnotallow="DiskPressure",status="true"} == 1

驅逐參數配置

解決了問題,我們來研究下驅逐的策略是怎樣的。

節點壓力驅逐是 kubelet 主動終止 Pod 以回收節點上資源的過程。

kubelet 監控集群節點的內存、磁盤空間和文件系統的 inode 等資源。當這些資源中的一個或者多個達到特定的消耗水平, kubelet 可以主動地使節點上一個或者多個 Pod 失效,以回收資源。

驅逐的默認配置:

memory.available<100Mi
nodefs.available<10%
imagefs.available<15%
nodefs.inodesFree<5%(Linux 節點)

例如,如果一個節點的總內存為 10GiB,并且你希望在可用內存低于 1GiB 時觸發驅逐則可以將驅逐條件定義為 memory.available<10% 或 memory.available< 1G(你不能同時使用二者)。

有些情況下,當你的內存或者磁盤足夠多時,采用百分比可能會導致在資源充足的情況下,產生驅逐問題,因此我們可以將默認驅逐修改為當剩余資源低于某個閾值時產生驅逐問題。

cat /data/kube/kubelet/kubelet-config.yaml  | grep -A 4 evictionHard
evictionHard:
  imagefs.available: "1Gi"
  memory.available: "200Mi"
  nodefs.available: "1Gi"
  nodefs.inodesFree: "5%"

重啟讓配置生效。

sudo systemctl daemon-reload && sudo systemctl restart kubelet

重啟完成后檢查pod是否正常,業務閑時操作。

官方網站: https://kubernetes.io/zh-cn/docs/concepts/scheduling-eviction/node-pressure-eviction/#eviction-signals

責任編輯:龐桂玉 來源: 運維之美
相關推薦

2024-02-20 16:55:14

K8S云計算

2024-04-29 13:04:00

K8Spod驅逐

2024-01-07 19:43:50

K8S節點

2023-07-04 07:30:03

容器Pod組件

2023-12-01 15:58:00

Kubernetes集群DevOps

2021-07-28 10:10:57

K8SMount PVCPod

2024-03-28 18:08:44

Kubernetes抓包Pod

2022-11-02 10:21:41

K8s pod運維

2021-08-20 11:35:04

服務運維 故障

2021-04-23 08:35:16

k8s故障檢測

2022-06-01 09:38:36

KubernetesPod容器

2022-09-05 14:45:56

前端K8S

2022-04-22 13:32:01

K8s容器引擎架構

2010-09-25 15:19:04

DHCP故障問題

2023-04-30 00:02:40

K8Skubelet數據

2017-05-15 09:27:30

打印掃描故障

2021-07-14 18:21:38

負載均衡K8SgRPC

2023-11-06 07:16:22

WasmK8s模塊

2023-09-06 08:12:04

k8s云原生

2010-09-26 13:43:30

DHCP故障處理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品一区二区 | 九九热精 | 精品欧美一区二区三区久久久 | 亚洲高清在线观看 | 国产美女视频 | 亚洲电影一区二区三区 | 黑人性hd| 日批免费观看 | 欧洲一区在线观看 | 亚洲福利在线观看 | 亚洲精品成人网 | 亚洲男人天堂网 | 狠狠干狠狠操 | 国产色网站 | 欧美一级欧美一级在线播放 | 18gay男同69亚洲网站 | 午夜视频网站 | 欧美嘿咻| 色爽女| 免费黄色在线 | 一久久久 | 欧美黑人一区二区三区 | 国产黄色在线观看 | 天天澡天天狠天天天做 | 91爱啪啪| 国产成人黄色 | 一区二区av | 日韩不卡一二区 | 一级看片 | 精品一区二区免费视频 | 欧美激情久久久 | 91精品国产91久久久久久吃药 | 精品国产乱码久久久久久丨区2区 | 欧美中文字幕一区二区三区 | 欧美日韩专区 | 中文字幕欧美在线观看 | 久久99视频免费观看 | 日本在线观看网址 | 99re视频在线观看 | 欧美一区二区免费 | 粉嫩av在线|