Linux中國

KRS:一個收集 Kubernetes 資源統計數據的新工具

最近我在紐約的 O'Reilly Velocity 就 Kubernetes 應用故障排除的主題發表了演講,並且在積極的反饋和討論的推動下,我決定重新審視這個領域的工具。結果,除了 kubernetes-incubator/spartakuskubernetes/kube-state-metrics 之外,我們還沒有太多的輕量級工具來收集資源統計數據(例如命名空間中的 pod 或服務的數量)。所以,我在回家的路上開始編寫一個小工具 —— 創造性地命名為 krs,它是 Kubernetes Resource Stats 的簡稱 ,它允許你收集這些統計數據。

你可以通過兩種方式使用 mhausenblas/krs

  • 直接在命令行(有 Linux、Windows 和 MacOS 的二進位文件),以及
  • 在集群中使用 launch.sh 腳本部署,該腳本動態創建適當的基於角色的訪問控制(RBAC) 許可權。

提醒你,它還在早期,並且還在開發中。但是,krs 的 0.1 版本提供以下功能:

  • 在每個命名空間的基礎上,它定期收集資源統計信息(支持 pod、部署和服務)。
  • 它以 OpenMetrics 格式公開這些統計。
  • 它可以直接通過二進位文件使用,也可以在包含所有依賴項的容器化設置中使用。

目前,你需要安裝並配置 kubectl,因為 krs 依賴於執行 kubectl get all 命令來收集統計數據。(另一方面,誰會使用 Kubernetes 但沒有安裝 kubectl 呢?)

使用 krs 很簡單。下載適合你平台的二進位文件,並按如下方式執行:

$ krs thenamespacetowatch
# HELP pods Number of pods in any state, for example running
# TYPE pods gauge
pods{namespace="thenamespacetowatch"} 13
# HELP deployments Number of deployments
# TYPE deployments gauge
deployments{namespace="thenamespacetowatch"} 6
# HELP services Number of services
# TYPE services gauge
services{namespace="thenamespacetowatch"} 4

這將在前台啟動 krs,從名稱空間 thenamespacetowatch 收集資源統計信息,並分別在標準輸出中以 OpenMetrics 格式輸出它們,以供你進一步處理。

![krs screenshot](/data/attachment/album/201811/12/000559vp6rz5relslrupll.png "krs screenshot")

krs 實戰截屏

也許你會問,Michael,為什麼它不能做一些有用的事(例如將指標存儲在 S3 中)?因為 Unix 哲學

對於那些想知道他們是否可以直接使用 Prometheus 或 kubernetes/kube-state-metrics 來完成這項任務的人:是的,你可以,為什麼不行呢? krs 的重點是作為已有工具的輕量級且易於使用的替代品 —— 甚至可能在某些方面略微互補。

本文最初發表在 Medium 的 ITNext 上,並獲得授權轉載。

via: https://opensource.com/article/18/11/kubernetes-resource-statistics

作者:Michael Hausenblas 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國