[英]Analyse kubernetes pod network traffic
全部,
遲到了,我的雲提供商對數據傳輸收取更多費用。 終於注意到其中一個 K8 吊艙有更多的數據傳輸。 有沒有辦法我可以通過本機 kubernetes 命令找出 pod 級別的網絡流量,例如我們發送和接收的字節數?
謝謝巴拉
kubectl top
命令顯示使用情況,而不是分配情況。 分配是導致insufficient CPU
問題的原因。 這個問題有很多關於差異的混淆。
AFAICT,沒有簡單的方法來獲取 pod 的節點 CPU 分配報告,因為請求是在規范中的每個容器。 即使那樣,這也很困難,因為.spec.containers[*].requests
可能有也可能沒有limits
/ requests
字段。 但是有類似kubectl-view-allocations的東西,你可以探索你的 kube 資源使用和分配。 它可以提供按命名空間、節點、pod 分組並按資源名稱過濾的結果。
kubectl-view-allocations [FLAGS] [OPTIONS]
FLAGS:
-h, --help Prints help information
-z, --show-zero Show lines with zero requested and zero limit and zero allocatable
-V, --version Prints version information
OPTIONS:
-g, --group-by <group-by>... Group informations (hierarchicaly) (default: -g resource -g node -g pod)
[possible values: resource, node, pod]
-n, --namespace <namespace> Show only pods from this namespace
-r, --resource-name <resource-name>... Filter resources shown by name(s), by default all resources are listed
在您的情況下,我認為最安全的選擇是安裝Heapster或metrics-server 、 cAdvisor和Grafana 。
Heapster 為Kubernetes (版本 v1.0.6 及更高版本)以及包含它的平台啟用容器集群監控和性能分析。
Heapster 收集和解釋各種信號,如計算資源使用情況 - 使用此指標,您會發現通過特定 pod、生命周期事件等傳輸更多數據的問題。Heapster 支持多種數據源。
容器指標主要通過 cAdvisor 提供。 cAdvisor (Container Advisor) 讓容器用戶了解他們正在運行的容器的資源使用和性能特征。 它是一個正在運行的守護進程,用於收集、聚合、處理和導出有關正在運行的容器的信息。 具體來說,它為每個容器保存資源隔離參數、歷史資源使用情況、完整歷史資源使用情況的直方圖和網絡統計信息。 此數據由容器和機器范圍導出。
另一方面,Grafana 允許您查詢、可視化、提醒和了解收集的指標,無論它們存儲在哪里。 與您的團隊創建、探索和共享儀表板,並培養數據驅動的文化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.