精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Kubernetes資源白吃型容器掃描實戰:誰在浪費你的CPU和內存?

云計算 云原生
在日常運維中,很多人喜歡盯著哪些 Pod 用資源最多,仿佛“高 CPU、高內存”才是麻煩制造者。但我們這次的視角反過來了:我們關注的是——那些資源申請了一大堆,結果幾乎沒怎么用的容器!

1. 背景:我們要找的不是“高消耗”,而是“低產能”

在日常運維中,很多人喜歡盯著哪些 Pod 用資源最多,仿佛“高 CPU、高內存”才是麻煩制造者。但我們這次的視角反過來了:

我們關注的是——那些資源申請了一大堆,結果幾乎沒怎么用的容器!

說白了:你申請了 1 核 2G,結果只用了 20m、100Mi,這不就是“吃不完還拿一堆”的典型資源浪費?

這些資源申請過多但實際使用很少的容器,是拖累集群整體資源利用率的罪魁禍首——調度器認為節點沒資源,但其實有的是空間!

所以我們寫了一個腳本,專門找出這些“白吃型”容器,幫助我們優化資源分配。

#!/bin/bash


OUTPUT_FILE="output.md"


# 寫入Markdown表頭
echo "| NAMESPACE | POD | CONTAINER | CPU_USED(m) | CPU_REQUEST(m) | CPU_LIMIT(m) | MEM_USED(Mi) | MEM_REQUEST(Mi) | MEM_LIMIT(Mi) |" > "$OUTPUT_FILE"
echo "| :- | :- | :- | :- | :- | :- | :- | :- | :- |" >> "$OUTPUT_FILE"


# 打印終端表頭
printf "%-20s %-40s %-30s %-10s %-15s %-15s %-15s %-15s %-15s\n" \
"NAMESPACE" "POD" "CONTAINER" "CPU_USED(m)" "CPU_REQUEST(m)" "CPU_LIMIT(m)" "MEM_USED(Mi)" "MEM_REQUEST(Mi)" "MEM_LIMIT(Mi)"


# 遍歷pods
kubectl get pods --all-namespaces --no-headers | awk '{print $1, $2}' | while read namespace pod; do
  kubectl top pod "$pod" -n "$namespace" --containers --no-headers 2>/dev/null | while read -r pod_name container cpu_used mem_used; do


    cpu_used_value=$(echo "$cpu_used" | sed 's/m//')
    mem_used_value=$(echo "$mem_used" | sed 's/Mi//')


    if [[ -z "$cpu_used_value" ]]; then
      continue
    fi


    cpu_request=$(kubectl get pod "$pod" -n "$namespace" -o jsonpath="{.spec.containers[?(@.name==\"$container\")].resources.requests.cpu}" 2>/dev/null)
    mem_request=$(kubectl get pod "$pod" -n "$namespace" -o jsonpath="{.spec.containers[?(@.name==\"$container\")].resources.requests.memory}" 2>/dev/null)
    cpu_limit=$(kubectl get pod "$pod" -n "$namespace" -o jsonpath="{.spec.containers[?(@.name==\"$container\")].resources.limits.cpu}" 2>/dev/null)
    mem_limit=$(kubectl get pod "$pod" -n "$namespace" -o jsonpath="{.spec.containers[?(@.name==\"$container\")].resources.limits.memory}" 2>/dev/null)


    # cpu_request處理
    if [[ "$cpu_request" == *m ]]; then
      cpu_request_value=$(echo "$cpu_request" | sed 's/m//')
    elif [[ -n "$cpu_request" ]]; then
      cpu_request_value=$((cpu_request * 1000))
    else
      cpu_request_value=0
    fi


    # mem_request處理
    if [[ "$mem_request" == *Mi ]]; then
      mem_request_value=$(echo "$mem_request" | sed 's/Mi//')
    elif [[ "$mem_request" == *Gi ]]; then
      mem_request_value=$(echo "$mem_request" | sed 's/Gi//' | awk '{print $1 * 1024}')
    else
      mem_request_value=0
    fi


    # cpu_limit處理
    if [[ "$cpu_limit" == *m ]]; then
      cpu_limit_value=$(echo "$cpu_limit" | sed 's/m//')
    elif [[ -n "$cpu_limit" ]]; then
      cpu_limit_value=$((cpu_limit * 1000))
    else
      cpu_limit_value=0
    fi


    # mem_limit處理
    if [[ "$mem_limit" == *Mi ]]; then
      mem_limit_value=$(echo "$mem_limit" | sed 's/Mi//')
    elif [[ "$mem_limit" == *Gi ]]; then
      mem_limit_value=$(echo "$mem_limit" | sed 's/Gi//' | awk '{print $1 * 1024}')
    else
      mem_limit_value=0
    fi


    cpu_used_value=${cpu_used_value:-0}
    mem_used_value=${mem_used_value:-0}


    # 打印到終端
    printf "%-20s %-40s %-30s %-10s %-15s %-15s %-15s %-15s %-15s\n" \
    "$namespace" "$pod" "$container" "$cpu_used_value" "$cpu_request_value" "$cpu_limit_value" "$mem_used_value" "$mem_request_value" "$mem_limit_value"


    # 同時追加到Markdown文件
    echo "| $namespace | $pod | $container | $cpu_used_value | $cpu_request_value | $cpu_limit_value | $mem_used_value | $mem_request_value | $mem_limit_value |" >> "$OUTPUT_FILE"


  done
done


echo "? 結果已保存到 $OUTPUT_FILE,并同步打印到了終端!"

2. 腳本干了什么?

我們這個腳本做的事情其實非常簡單、直接:

在所有命名空間中,掃描每個容器,只保留那些 CPU 和內存實際使用量都低于它的資源 Request 和 Limit 的容器。

條件如下:

?CPU_USED < CPU_REQUEST 且 CPU_USED < CPU_LIMIT?MEM_USED < MEM_REQUEST 且 MEM_USED < MEM_LIMIT

只要滿足以上條件的容器,我們就認定它“吃不完”,并將其列入輸出報告中。

舉個例子

假設某個容器配置如下:

項目

數值

CPU Used

35m

CPU Request

200m

CPU Limit

500m

Mem Used

90Mi

Mem Request

512Mi

Mem Limit

1024Mi

這個容器看起來“沒啥問題”,但從資源角度,它就是個嚴重冗余:

?申請了 200m,結果只用了 35m,浪費超過 80%?內存申請了 512Mi,結果只用了 90Mi,浪費近 83%

我們會把這個容器列出來,并記錄在 Markdown 表格中。

3. 輸出結果長什么樣?

我們輸出的數據像這樣:

NAMESPACE

POD

CONTAINER

CPU_USED(m)

CPU_REQUEST(m)

CPU_LIMIT(m)

MEM_USED(Mi)

MEM_REQUEST(Mi)

MEM_LIMIT(Mi)

default

user-service-xxx

user-api

35

200

500

90

512

1024

auth

token-service

signer

10

100

200

50

256

512

每一行,都是一個“吃不完”的容器。

4. 我們為什么只關注“使用 < 請求/限制”的?

Kubernetes 的調度邏輯是以 Request 值 為準的:

?你申請了 500m CPU,系統就預留給你這么多?哪怕你實際上只用 5m,別人也搶不到你這部分資源

所以,這些“吃不完”的容器,就是資源調度的黑洞:

?不會觸發報警?不會拖垮服務?但就是霸占資源,別的服務調不過來

定期找出這些容器,把 Request 降下來,能顯著提升集群整體可用資源量,從而:

?節省節點數量?降低成本?提升調度成功率

5. 實際收獲

我們在多個測試和生產集群中跑了腳本,得出了幾個有趣結論:

5.1 大量容器“吃不完”

?CPU 使用長期低于 50m,但申請卻是 500m 的服務比比皆是?內存使用不足 100Mi,申請卻是 1G、2G 的也不少

這些服務配置基本可以砍一半都綽綽有余。

5.2 資源浪費并不等于性能好

很多團隊出于“保險”目的,習慣性給服務多申請點資源,但現實是:

多申請 ≠ 更穩定,反而會阻塞別人用資源,降低集群整體健康度。

資源配太多,不但沒必要,還會讓 HPA 失效(因為看起來沒啥使用率變化)。

5.3 調整資源配置的真實效果

我們試著將幾個服務的資源 Request 按實際使用情況下調了 50%:

?節省節點數約 2 臺(每臺 16 核 64G)?新部署的服務調度成功率提升明顯?系統整體負載下降,擴容需求延后

6. 建議下一步怎么做?

以下是我們建議的實踐方案:

?定期執行這個資源篩查腳本(每周一次即可)

加個 CronJob 或 Jenkins 任務,把結果郵件發給團隊。

?將輸出表格作為資源優化依據

可以給開發負責人看,讓他們根據實際使用情況調整資源。

?把結果導入 Grafana/Excel 做可視化

更直觀地展示每個 Namespace 的資源浪費情況,有助于決策和資源管控。

7. 附:如何使用這個腳本?

?要求集群部署了 metrics-server[1]?腳本使用標準 kubectl 和 bash 語法,不依賴額外插件?輸出為 Markdown 表格,終端也會實時顯示

8. 總結一句話

真正拖慢你 Kubernetes 集群的,不是吃得太多的容器,而是那些“吃得太少還拿得多”的!

9. 小問答時間(Q&A)

?Q1:為什么資源使用小于 Request 和 Limit 也值得關注? ?? 因為這意味著資源配置過度了!雖然不會造成服務故障,但會導致集群資源浪費,影響其他 Pod 的調度甚至增加成本。

?Q4:要不要把資源配得很寬裕,以防突發流量? ?? 不推薦!可以使用 HPA(Horizontal Pod Autoscaler)來應對突發流量,而不是長期浪費資源。按需自動擴容才是現代云原生的正確打開方式。

References

[1] metrics-server: https://github.com/kubernetes-sigs/metrics-server

責任編輯:武曉燕 來源: 幽靈代筆
相關推薦

2022-07-27 19:27:47

CPU資源內存

2024-01-01 18:59:15

KubernetesCPU內存

2014-01-07 14:29:14

HadoopYARN

2025-06-11 09:28:22

2018-07-03 09:25:04

閑置云資源資金

2017-12-25 09:39:07

Linuxbashparallel

2018-03-15 08:25:53

2022-05-27 11:59:22

Linux內存CPU

2018-01-11 15:56:37

大數據中國城市未來發展

2024-11-14 08:00:00

2016-01-11 10:07:27

容器Kubernetes

2009-07-07 09:51:38

過剩資源

2013-06-27 10:09:21

大數據

2022-07-23 21:31:24

KubernetesLinux開源

2023-02-20 14:27:56

Kubernetes內存單位

2022-03-22 08:52:40

KubernetesCPU內存資源

2015-08-04 10:26:44

OpenStackKubernetes容器管理

2019-05-14 14:27:36

KubernetesDocker存儲

2013-11-25 16:50:56

2025-04-08 09:46:56

點贊
收藏

51CTO技術棧公眾號

三级小说欧洲区亚洲区| 成人影院在线观看| 男女性色大片免费观看一区二区 | 国产一区二区三区高清| 精品国产一区二区三区四| 日韩欧美视频在线播放| 777奇米四色成人影色区| 妞干网在线观看视频| 国产二区视频在线观看| 国产精品一区二区久激情瑜伽| 97在线观看视频| 欧日韩不卡视频| 欧美大胆a级| 欧美二区乱c少妇| 欧美 日本 亚洲| 精品51国产黑色丝袜高跟鞋| 91丝袜美腿高跟国产极品老师| 国产免费成人av| 青青操免费在线视频| 91精品一区二区三区综合| 精品一区二区三区四区| 992tv人人草| 亚洲四虎影院| 精品日本高清在线播放| 91精品国产毛片武则天| 91ph在线| 国产欧美一区二区精品婷婷 | 国产91在线高潮白浆在线观看| 婷婷色中文字幕| 日韩欧美一区二区三区在线视频| 亚洲国产美女久久久久| www.欧美激情.com| 欧美激情啪啪| 欧美色倩网站大全免费| 99精品人妻少妇一区二区| jizzjizz亚洲| 国产精品国产自产拍高清av| 日本一区二区三区四区高清视频| 凸凹人妻人人澡人人添| 成人国产一区二区三区精品| 51成人做爰www免费看网站| 中文字幕第315页| 老**午夜毛片一区二区三区 | 天天操天天操天天操天天| 欧美片第1页综合| 久久九九免费视频| 大吊一区二区三区| 日韩av二区| 一区二区在线视频| 国产成人福利在线| 精品少妇av| 在线观看日韩av| 午夜黄色福利视频| 色无极亚洲影院| 日韩专区中文字幕| 性色av无码久久一区二区三区| 日韩一区二区在线免费| 深夜成人在线观看| 黄色片子在线观看| 在线中文字幕第一区| 欧美裸体男粗大视频在线观看| 91成人福利视频| 欧美激情91| 欧美激情高清视频| 香蕉免费毛片视频| 裸体素人女欧美日韩| 国产精品96久久久久久| 国产又爽又黄免费软件| 国产精一品亚洲二区在线视频| 91久久久亚洲精品| 性一交一乱一色一视频麻豆| 99国产精品国产精品久久| 精品一区在线播放| 国产一级在线| 自拍偷拍亚洲综合| 久久久久久久9| 日韩欧美看国产| 欧美日韩在线直播| 乳色吐息在线观看| 欧美亚洲大陆| 日韩在线视频网站| 熟女少妇a性色生活片毛片| 欧美暴力喷水在线| 欧美一区三区三区高中清蜜桃| 黄色av一区二区| 国产一区啦啦啦在线观看| 俄罗斯精品一区二区三区| 三级做a全过程在线观看| 中文字幕精品—区二区四季| 国产精品视频网站在线观看| 天堂网在线最新版www中文网| 欧美日韩国产中文| 插我舔内射18免费视频| 国产一区二区三区网| 日韩一区二区在线视频| 欧美人妻一区二区| 日韩福利电影在线| 99精品国产高清一区二区| 激情综合闲人网| 亚洲精品视频在线观看免费| 日韩av在线综合| 日韩欧美中文字幕在线视频| 一区二区三区日韩在线| 国产稀缺真实呦乱在线| 久久国产人妖系列| 麻豆精品传媒视频| 伊人春色在线观看| 欧美午夜在线观看| 国产又粗又长又爽| 一区二区不卡| 国产精品情侣自拍| 日本黄在线观看| 亚洲黄色免费网站| 天天干天天草天天| 妖精一区二区三区精品视频| 欧美另类老女人| 91久久精品无码一区二区| 久久久蜜桃精品| 欧美狂野激情性xxxx在线观| 成人在线视频国产| 在线日韩日本国产亚洲| 日产精品久久久| 国产91丝袜在线观看| 影音先锋欧美资源| xxxxx.日韩| 亚洲欧美自拍一区| 日韩污视频在线观看| 粉嫩aⅴ一区二区三区四区五区| 亚洲精品视频一二三| 亚洲欧美电影| 日韩国产精品一区| 国产精品白浆一区二小说| 国产精品系列在线播放| 91制片厂免费观看| www.成人在线视频| 中文字幕亚洲欧美日韩在线不卡| 人妻丰满熟妇av无码区| 97久久精品人人爽人人爽蜜臀| 777久久精品一区二区三区无码| 日韩免费在线电影| 中文字幕一区电影| 中文字幕丰满人伦在线| 国产精品乱码一区二三区小蝌蚪| 国产一级不卡毛片| 国产精品一区二区三区av麻| 青青在线视频一区二区三区| 欧美成人综合在线| 日韩欧美在线观看| 在哪里可以看毛片| 日韩精品亚洲一区二区三区免费| 欧美亚洲免费在线| 456亚洲精品成人影院| 国产一区二区日韩| 中文字幕777| 亚洲视频网在线直播| 91视频免费入口| 黄色精品网站| 蜜桃传媒视频第一区入口在线看| 中国色在线日|韩| 亚洲欧美在线免费| 中文字幕网址在线| 亚洲欧美乱综合| 丰满人妻一区二区三区大胸 | 欧美高清视频在线| 日本黄色三级视频| 精品日本高清在线播放| 精品人伦一区二区三电影| 蜜臀久久99精品久久久久久9 | 一区二区伦理片| 奇米色777欧美一区二区| 成年人免费观看的视频| 伊人久久影院| 浅井舞香一区二区| 日韩毛片久久久| 精品免费日韩av| 色婷婷av国产精品| 国产亚洲美州欧州综合国| а 天堂 在线| 国产日韩欧美一区| 相泽南亚洲一区二区在线播放| 精品视频91| 97在线精品国自产拍中文| 国产三级在线观看| 91精品国产综合久久婷婷香蕉| 国产精品成人国产乱| 欧美激情综合五月色丁香| 亚洲精品免费一区亚洲精品免费精品一区 | 婷婷五月色综合| 警花av一区二区三区| 91av在线免费观看视频| jizz日韩| 亚洲国产精品久久久久秋霞不卡 | 欧美性大战久久久久| 综合久久伊人| 97av在线视频免费播放| 老司机在线视频二区| 日韩福利在线播放| 精品毛片一区二区三区| 色天使久久综合网天天| 国产成人久久久久| 国产视频视频一区| 国产精品日日摸夜夜爽| 日本不卡一区二区| 缅甸午夜性猛交xxxx| 亚洲国产一区二区在线观看| 久久久久久久久久久一区| 欧美成人一级| 国产精品爽爽ⅴa在线观看| 成年人在线网站| 久久综合伊人77777蜜臀| 日韩午夜影院| 精品国精品国产| 国产精品毛片久久久久久久av| 色综合色综合色综合| 久久久久久蜜桃| 国产精品久久久久久久第一福利 | 亚洲人成7777| 免费观看a级片| k8久久久一区二区三区| 久久精品国产99久久99久久久| 天堂成人国产精品一区| 青青艹视频在线| 黄色成人在线网站| 久久男人资源站| 68国产成人综合久久精品| 亚洲春色在线| 欧美一区二区三| 欧美日韩精品久久| 神马久久av| 国产日韩一区二区三区| 成人免费在线电影网| 亚洲va久久久噜噜噜| 亚洲伊人伊成久久人综合网| 国产欧美在线视频| 久久亚洲人体| 国产精品小说在线| 91精品店在线| 国产精品亚洲美女av网站| 日本韩国欧美| 国产精品99久久久久久www| 神马久久资源| 国产精品福利网站| 亚洲精品555| 国产精品一区二区三| 久久天堂影院| 91精品久久久久久久久久入口| 日本中文字幕一区二区| 国产精品欧美亚洲777777| 亚洲国产尤物| 国产日韩欧美91| 大胆国模一区二区三区| 91超碰在线电影| youjizzjizz亚洲| 国产精品日韩一区二区三区| 噜噜噜狠狠夜夜躁精品仙踪林| 国产一区精品在线| 少妇一区二区三区| 日本免费高清一区二区| 成人黄色小视频| 自拍视频一区二区三区| 综合一区在线| 国产精品国产对白熟妇| 亚洲一级在线| 中文字幕第36页| 韩国成人福利片在线播放| 国产男女无遮挡猛进猛出| zzijzzij亚洲日本少妇熟睡| 亚洲午夜久久久久久久久红桃| 国产色婷婷亚洲99精品小说| 久久爱一区二区| 亚洲影院理伦片| 日本特级黄色片| 欧美日韩亚洲不卡| 国产高清视频免费| 亚洲国产一区二区三区在线观看| 欧洲视频在线免费观看| 最近2019中文免费高清视频观看www99| 国产原厂视频在线观看| 久久久久久久久国产| 欧美色999| 92国产精品视频| 三级小说欧洲区亚洲区| 亚洲欧洲免费无码| 亚洲黄色天堂| 天美星空大象mv在线观看视频| 国产精品18久久久| aa片在线观看视频在线播放| 成人免费在线观看入口| 精品在线播放视频| 欧美日韩国产精选| 天天干视频在线观看| 中文字幕亚洲综合久久| 精精国产xxxx视频在线播放| 国产欧美久久久久久| 国产精品久av福利在线观看| 日韩一区二区三区高清| 欧美激情偷拍| 免费裸体美女网站| 成人在线综合网| 女教师淫辱の教室蜜臀av软件| 亚洲成人动漫精品| 伊人成人在线观看| 精品视频在线播放免| h片在线免费| 国产精品99久久99久久久二8| 99久久香蕉| 中文字幕中文字幕一区三区| 久久久人人人| 无码人妻精品一区二区三| 国产清纯白嫩初高生在线观看91 | 精品国产一区二| 五月天国产一区| 亚洲欧美激情诱惑| 人妻 丝袜美腿 中文字幕| 中文字幕亚洲欧美在线不卡| 精品久久久久久久久久久久久久久久久久| 欧美变态口味重另类| 免费在线观看黄色网| 国产精品扒开腿做| 亚洲永久精品唐人导航网址| 农民人伦一区二区三区| 国产成人无遮挡在线视频| 又色又爽的视频| 91官网在线免费观看| 日本免费不卡| 国产91精品久久久久| 卡通动漫国产精品| 东北少妇不带套对白| 国产精品18久久久| 丝袜美腿小色网| 91麻豆精品国产91久久久久| 黄网站在线免费| 国产美女久久精品| 久久人体视频| 不卡的av中文字幕| 亚洲国产精品二十页| 91黑人精品一区二区三区| 亚洲免费小视频| 日韩不卡免费高清视频| 免费看成人午夜电影| 久久精品官网| 国产人妻大战黑人20p| 在线视频欧美精品| 国产黄色免费在线观看| 国产精品视频久久| 日韩精品免费一区二区三区| 老司机久久精品| 国产精品成人一区二区艾草| 国产一区二区三区三州| 久久精品国产亚洲精品| 精品国产欧美| 日韩精品一区二区三区四| 波多野结衣91| caoporn国产| 最近2019年手机中文字幕| 国产精品1区| 青青在线免费观看| 波多野结衣中文字幕一区二区三区 | 国产剧情久久久久久| 国产精品成人一区二区不卡| 在线免费黄色小视频| 亚洲一区二区三区中文字幕| 日批免费在线观看| 91地址最新发布| 欧美综合久久| 91 视频免费观看| 亚洲午夜久久久久| 天天操天天干天天插| 国产精品27p| 综合激情一区| 老鸭窝一区二区| 欧美午夜精品一区| 性欧美高清come| 蜜桃免费一区二区三区| 美女视频免费一区| 久久久久久久久97| 亚洲欧洲免费视频| 在线不卡一区| 播放灌醉水嫩大学生国内精品| 欧美激情在线观看视频免费| 国产草草影院ccyycom| 欧美在线免费观看| 四虎成人精品永久免费av九九| 中文字幕一区二区三区人妻在线视频| 午夜a成v人精品| 日本在线免费| 精品1区2区| 精品一二三四区| 日韩成人高清视频| 久久精品精品电影网| 红杏aⅴ成人免费视频| 国产精品视频中文字幕| 亚洲v精品v日韩v欧美v专区| 91网页在线观看| 国产精品一区二区你懂得| 另类的小说在线视频另类成人小视频在线| 精品无码人妻一区二区三区品| 一本一道久久a久久精品逆3p| av成人资源网| 在线免费看污网站|