0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Kube-capacity CLI的安裝與用法

馬哥Linux運(yùn)維 ? 來(lái)源:云原生CTO ? 作者:charts ? 2022-07-03 15:30 ? 次閱讀

使用 Kube-capacity CLI 查看 Kubernetes 資源請(qǐng)求、限制和利用率

Kube-capacity是一個(gè)簡(jiǎn)單而強(qiáng)大的CLI,它提供了Kubernetes集群中資源請(qǐng)求、限制和利用率的概覽。它將輸出的最佳部分結(jié)合kubectl topkubectl describe一個(gè)易于使用的集中于集群資源的CLI中。

2894ac30-f947-11ec-ba43-dac502259ad0.png ?

不過(guò)像這樣的工具確實(shí)好用一些,比如我想看這個(gè)kube-system下有哪些pod有沒(méi)有設(shè)置requestlimit的時(shí)候,實(shí)際上,我需要輸入一段很長(zhǎng)的命令才能列出,而且需要一些調(diào)試,這看起來(lái)不是特別方便

#kubectlgetpod-nkube-system-o=custom-columns=NAME:.metadata.name,NAMESPACE:.metadata.namespace,PHASE:.status.phase,Request-cpu:.spec.containers[0].resources.requests.cpu,Request-memory:.spec.containers[0].resources.requests.memory,Limit-cpu:.spec.containers[0].resources.limits.cpu,Limit-memory:.spec.containers[0].resources.limits.memory
NAMENAMESPACEPHASERequest-cpuRequest-memoryLimit-cpuLimit-memory
calico-kube-controllers-7d4c6544cc-g6x6qkube-systemRunning
calico-node-4fjn8kube-systemRunning250m
calico-node-7nbpjkube-systemRunning250m
calico-node-qvdlrkube-systemRunning250m
coredns-7977f69688-4nz9qkube-systemRunning100m70Mi170Mi
coredns-7977f69688-frkt5kube-systemRunning100m70Mi170Mi
etcd-k8s-master1kube-systemRunning100m100Mi
etcd-k8s-master2kube-systemRunning100m100Mi
etcd-k8s-master3kube-systemRunning100m100Mi
kube-apiserver-k8s-master1kube-systemRunning250m

那么這個(gè)工具實(shí)際上解決的問(wèn)題就是幫助我們快速查看概覽整個(gè)集群和pod的資源配置情況

安裝

Go二進(jìn)制文件由GoReleaser隨每個(gè)版本自動(dòng)構(gòu)建。這些可以在此項(xiàng)目的GitHub發(fā)布頁(yè)面上訪問(wèn)。

https://github.com/goreleaser/goreleaser

https://github.com/robscott/kube-capacity/releases

Homebrew

這個(gè)項(xiàng)目可以用Homebrew安裝:

brewtaprobscott/tap
brewinstallrobscott/tap/kube-capacity

Krew

這個(gè)項(xiàng)目可以用Krew安裝:

kubectlkrewinstallresource-capacity

用法

默認(rèn)情況下,kube-capacity將輸出一個(gè)節(jié)點(diǎn)列表,其中包含CPU和內(nèi)存資源請(qǐng)求的總數(shù)以及在它們上運(yùn)行的所有pod的限制。對(duì)于具有多個(gè)節(jié)點(diǎn)的集群,第一行還將包括集群范圍的總數(shù)。該輸出將如下所示:

28a71c30-f947-11ec-ba43-dac502259ad0.png

包括 Pod

對(duì)于更詳細(xì)的輸出,kube-capacity可以在輸出中包含pod。當(dāng)-p--pods被傳遞給kube-capacity時(shí),它將包含如下所示的特定于pod的輸出

28bd1bca-f947-11ec-ba43-dac502259ad0.png

包括利用率

為了幫助了解資源利用率與配置的請(qǐng)求和限制的比較,kube-capacity可以在輸出中包含利用率指標(biāo)。請(qǐng)務(wù)必注意,此輸出依賴(lài)于集群中的metrics-server正常運(yùn)行。當(dāng)-u--util被傳遞給kube-capacity時(shí),它將包含如下所示的資源利用率信息

2894ac30-f947-11ec-ba43-dac502259ad0.png

包括 Pod 和利用率

對(duì)于更詳細(xì)的輸出,kube-capacity可以在輸出中包含pod和資源利用率。當(dāng)--util--pods傳遞給kube-capacity時(shí),它將產(chǎn)生如下所示的寬輸出:

28f83d5e-f947-11ec-ba43-dac502259ad0.png

值得注意的是,來(lái)自pod的利用率數(shù)字可能不會(huì)與總節(jié)點(diǎn)利用率相加。與節(jié)點(diǎn)和集群級(jí)別數(shù)字代表pod值總和的請(qǐng)求和限制數(shù)字不同,節(jié)點(diǎn)指標(biāo)直接來(lái)自指標(biāo)服務(wù)器,并且可能包括其他形式的資源利用率。

排序

要突出顯示具有最高指標(biāo)的節(jié)點(diǎn)、pod和容器,您可以按各種列進(jìn)行排序:

290efd00-f947-11ec-ba43-dac502259ad0.png

顯示 Pod 計(jì)數(shù)

要顯示每個(gè)節(jié)點(diǎn)和整個(gè)集群的pod數(shù)量,可以通過(guò)--pod-count參數(shù)

291c98ca-f947-11ec-ba43-dac502259ad0.png

標(biāo)簽過(guò)濾

對(duì)于更高級(jí)的使用,kube-capacity還支持按pod、命名空間和/或節(jié)點(diǎn)標(biāo)簽進(jìn)行過(guò)濾。以下示例展示了如何使用這些過(guò)濾器:

kube-capacity--pod-labelsapp=nginx
kube-capacity--namespace默認(rèn)
kube-capacity--namespace-labelsteam=api
kube-capacity--node-labelskubernetes.io/role=node

JSON 和 YAML 輸出

默認(rèn)情況下,kube-capacity將以表格格式提供輸出。要以JSONYAML格式查看此數(shù)據(jù),可以使用輸出標(biāo)志。以下是一些示例命令:

kube-capacity--pods--outputjson
kube-capacity--pods--containers--util--outputyaml

支持的標(biāo)志

29347706-f947-11ec-ba43-dac502259ad0.png

先決條件

任何請(qǐng)求集群利用率的命令都依賴(lài)于集群上運(yùn)行的metrics-server。如果尚未安裝,您可以使用官方helm chart進(jìn)行安裝。

https://github.com/helm/charts/tree/master/stable/metrics-server

https://github.com/kubernetes-incubator/metrics-server


原文標(biāo)題:使用 Kube-capacity CLI 查看 Kubernetes 資源請(qǐng)求、限制和利用率

文章出處:【微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Capacity
    +關(guān)注

    關(guān)注

    0

    文章

    2

    瀏覽量

    6495
  • CLI
    CLI
    +關(guān)注

    關(guān)注

    1

    文章

    79

    瀏覽量

    8515
  • kubernetes
    +關(guān)注

    關(guān)注

    0

    文章

    223

    瀏覽量

    8677

原文標(biāo)題:使用 Kube-capacity CLI 查看 Kubernetes 資源請(qǐng)求、限制和利用率

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux lsof命令的基本用法

    在 linux 系統(tǒng)中,一切皆文件。通過(guò)文件不僅僅可以訪問(wèn)常規(guī)數(shù)據(jù),還可以訪問(wèn)網(wǎng)絡(luò)連接和硬件。所以 lsof 命令不僅可以查看進(jìn)程打開(kāi)的文件、目錄,還可以查看進(jìn)程監(jiān)聽(tīng)的端口等 socket 相關(guān)的信息。本文將介紹 lsof 命令的基本用法,本文中 demo 的演示環(huán)境為 ubuntu 18.04。
    的頭像 發(fā)表于 10-23 11:52 ?93次閱讀
    Linux lsof命令的基本<b class='flag-5'>用法</b>

    請(qǐng)問(wèn)IR600 CLI如何保存配置?

    請(qǐng)問(wèn)IR600 CLI如何保存配置?
    發(fā)表于 07-25 07:53

    CYW43455使用wpa_cli status和wl status后,會(huì)顯示不同的頻率,為什么?

    你好 IFX, 測(cè)試執(zhí)行 STA 是CYW43455 。 AP 頻道 =165 安裝無(wú)線網(wǎng)絡(luò) 加入接入點(diǎn)(使用wl join 或 wpa_cli) 通過(guò)\"wl status
    發(fā)表于 07-05 07:02

    鴻蒙Ability Kit(程序框架服務(wù))【UIAbility組件基本用法

    UIAbility組件的基本用法包括:指定UIAbility的啟動(dòng)頁(yè)面以及獲取UIAbility的上下文[UIAbilityContext]。
    的頭像 發(fā)表于 06-06 11:02 ?370次閱讀
    鴻蒙Ability Kit(程序框架服務(wù))【UIAbility組件基本<b class='flag-5'>用法</b>】

    如何使用CLI在JTAG鏈上選擇要寫(xiě)入的PSoC6?

    你好, 我想在同一個(gè)COOLDIM_PRG_BOARD上安裝兩個(gè) PSoC6 ,并將它們放在 JTAG 菊花鏈中的MULTICH_CONNECT_PCB中以寫(xiě)入閃存 ROM。 借助
    發(fā)表于 03-04 07:26

    AWTK 開(kāi)源串口屏開(kāi)發(fā)(10) - 告警信息的高級(jí)用法

    告警信息是串口屏常用的功能,之前我們介紹了告警信息的基本用法,實(shí)現(xiàn)了告警信息的顯示和管理。本文介紹一下實(shí)現(xiàn)查詢(xún)告警信息和查看告警信息詳情的方法。1.功能之前我們介紹了告警信息的基本用法,實(shí)現(xiàn)了告警
    的頭像 發(fā)表于 02-24 08:23 ?268次閱讀
    AWTK 開(kāi)源串口屏開(kāi)發(fā)(10) - 告警信息的高級(jí)<b class='flag-5'>用法</b>

    可以使用CLI命令同時(shí)使用多個(gè)miniprog4(例如,3~4)對(duì)多個(gè)CCG7x設(shè)備進(jìn)行編程嗎?

    我有一個(gè)關(guān)于使用帶有 miniprog4 的 CLI 命令編程 CCG7x 的問(wèn)題。 我們可以使用 CLI 命令同時(shí)使用多個(gè) miniprog4(例如,3~4)對(duì)多個(gè) CCG7x 設(shè)備進(jìn)行編程嗎? 如果是,你能否詳細(xì)告訴我如何使用 CL
    發(fā)表于 02-22 06:30

    法拉電容放電保護(hù)原理是什么?如何正常使用法拉電容?

    法拉電容放電保護(hù)原理是什么?如何正常使用法拉電容? 法拉電容放電保護(hù)原理是指通過(guò)合理的設(shè)計(jì)和配置,保護(hù)法拉電容在放電過(guò)程中不受損壞的一種技術(shù)手段。法拉電容是一種具有高能量密度和長(zhǎng)壽命的電容器
    的頭像 發(fā)表于 02-02 11:34 ?1350次閱讀

    單片機(jī)定時(shí)器的用法

    本章以CW32通用定時(shí)器為例介紹單片機(jī)定時(shí)器的用法。
    的頭像 發(fā)表于 01-04 10:37 ?1258次閱讀
    單片機(jī)定時(shí)器的<b class='flag-5'>用法</b>

    split在python中的用法

    split在python中的用法 split()是Python中一個(gè)非常常用的字符串函數(shù),它能夠根據(jù)指定的分隔符將一個(gè)字符串分割成多個(gè)子字符串,并返回一個(gè)包含這些子字符串的列表。本文將詳細(xì)介紹
    的頭像 發(fā)表于 12-25 15:12 ?1894次閱讀

    pcb插針的用法

    pcb插針的用法
    的頭像 發(fā)表于 12-13 16:58 ?1641次閱讀

    開(kāi)關(guān)和按鈕的不同特點(diǎn)和用法

    開(kāi)關(guān)和按鈕的不同特點(diǎn)和用法! 開(kāi)關(guān)和按鈕是常見(jiàn)的電子設(shè)備或電器的組成部分,它們?cè)诳刂齐娐坊虿僮麟娮釉O(shè)備時(shí)起著關(guān)鍵的作用。雖然它們都用于控制電氣電路的通斷或啟停,但它們之間存在一些不同的特點(diǎn)和用法
    的頭像 發(fā)表于 12-11 10:40 ?1119次閱讀

    plsy指令具體用法

    、WAV等。下面將詳細(xì)介紹plsy的用法。 安裝: 在使用plsy之前,首先需要在Unix系統(tǒng)中安裝。你可以通過(guò)在終端上運(yùn)行以下命令來(lái)安裝plsy: sudo apt-get inst
    的頭像 發(fā)表于 12-08 14:10 ?2059次閱讀

    oracle split函數(shù)用法舉例

    Split函數(shù)是Oracle中用于將一個(gè)字符串按照指定的分隔符進(jìn)行拆分的函數(shù)。其語(yǔ)法為:SPLIT(字符串, 分隔符)。 下面我將詳細(xì)介紹Split函數(shù)的用法,并提供一些示例,以幫助你更好地了解
    的頭像 發(fā)表于 12-06 09:56 ?7861次閱讀

    oracle中substr函數(shù)用法

    字符串的源字符串,start_position是子字符串的起始位置,length是要提取的子字符串的長(zhǎng)度(可選參數(shù))。 下面將詳細(xì)介紹SUBSTR函數(shù)的用法及示例。 基本用法 最簡(jiǎn)單的用法是只指定源
    的頭像 發(fā)表于 12-05 16:57 ?1142次閱讀