【kube-capacity】現在のNamespaceのみ取得するように設定する

2022.12.11
2024.03.24
Kubernetes
kube-capacitykubectl

はじめに

kube-capacityを使って現在のNamespaceの情報のみを取得する方法を紹介します。

kube-capacityを使ってResource limitやrequestを一覧で取得する場合、デフォルトでは全てのNamespaceの情報を取得してくれます。

しかし、いくつもNamespaceがある場合、現在のNamespaceのみの情報が欲しいことが多いです。現在のNamespaceの情報が欲しい場合は、-nオプションでNamespaceを指定するのですが、毎回やるのは煩わしいのでエイリアスを設定して簡単にできるように設定したいと思います。

kube-capacity

そもそも、kube-capacityとは、Resource limitやrequest、その使用率などを取得できるCLIになります。

GitHub - robscott/kube-capacity: A simple CLI that provides an overview of the resource requests, limits, and utilization in a Kubernetes cluster

GitHub - robscott/kube-capacity: A simple CLI that provides an overview of the resource requests, limits, and utilization in a Kubernetes cluster

A simple CLI that provides an overview of the resource requests, limits, and utilization in a Kubernetes cluster - robscott/kube-capacity

詳しくは下記を参考にしてください。

【kube-capacity】Resource LimitとRequestを一覧で取得する

【kube-capacity】Resource LimitとRequestを一覧で取得する

はじめに `kube-capacity`を使って、KubernetesのResource lim

現在のNamespaceの取得方法

現在設定されているNamespaceを取得する方法は下記のコマンドを使います。

1kubectl config view --minify -o jsonpath='{..namespace}'
1❯ kubectl config view --minify -o jsonpath='{..namespace}'
2app-dev

組み合わせて使う

現在のNamespaceを取得する方法と組み合わせて、下記のコマンドを実行することで、現在のNamespaceのみのResource limitとrequestが取得できます。

1kubectl resource-capacity -p -n $(kubectl config view --minify -o jsonpath='{..namespace}')
1❯ kubectl resource-capacity -p -n $(kubectl config view --minify -o jsonpath='{..namespace}')
2NODE             POD                       CPU REQUESTS   CPU LIMITS   MEMORY REQUESTS   MEMORY LIMITS
3
4docker-desktop   *                         225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)
5docker-desktop   myapp1-5cdd4bc574-z7kxb   225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)

エイリアス

あとは自分のわかりやすいエイリアスを設定してあげれば、いつでも簡単に現在のNamespaceのResource limitとrequestが取得できます。

私はkubectl-aliasesを使って、まとめてエイリアスを設定しているので、下記のようなエイリアスを設定しています。

1# resource-capacity
2alias krc='kubectl resource-capacity -n $(kubectl config view --minify -o jsonpath='{..namespace}')'
3alias krcp='kubectl resource-capacity -p -n $(kubectl config view --minify -o jsonpath='{..namespace}')'
4alias krcc='kubectl resource-capacity -c -n $(kubectl config view --minify -o jsonpath='{..namespace}')'
1❯ krc
2NODE             CPU REQUESTS   CPU LIMITS   MEMORY REQUESTS   MEMORY LIMITS
3docker-desktop   225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)
4
5❯ krcp
6NODE             POD                       CPU REQUESTS   CPU LIMITS   MEMORY REQUESTS   MEMORY LIMITS
7
8docker-desktop   *                         225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)
9docker-desktop   myapp1-5cdd4bc574-z7kxb   225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)
10
11❯ krcc
12NODE             POD                       CONTAINER    CPU REQUESTS   CPU LIMITS   MEMORY REQUESTS   MEMORY LIMITS
13
14docker-desktop   *                         *            225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)
15docker-desktop   myapp1-5cdd4bc574-z7kxb   *            225m (5%)      225m (5%)    160Mi (2%)        160Mi (2%)
16docker-desktop   myapp1-5cdd4bc574-z7kxb   container1   50m (1%)       50m (1%)     32Mi (0%)         32Mi (0%)
17docker-desktop   myapp1-5cdd4bc574-z7kxb   container2   100m (2%)      100m (2%)    64Mi (0%)         64Mi (0%)
18docker-desktop   myapp1-5cdd4bc574-z7kxb   container3   75m (1%)       75m (1%)     64Mi (0%)         64Mi (0%)

kubectl-aliasesについては下記を参照してください。

GitHub - ahmetb/kubectl-aliases: Programmatically generated handy kubectl aliases.

GitHub - ahmetb/kubectl-aliases: Programmatically generated handy kubectl aliases.

Programmatically generated handy kubectl aliases. Contribute to ahmetb/kubectl-aliases development by creating an account on GitHub.

kubectl-aliasesでkubectlコマンドのエイリアスを一括設定

kubectl-aliasesでkubectlコマンドのエイリアスを一括設定

はじめに `kubectl`コマンドのエイリアスが大量に設定されているkubectl-alias

参考

Support

\ この記事が役に立ったと思ったら、サポートお願いします! /

buy me a coffee
Share

Profile

author

Masa

都内のIT企業で働くエンジニア
自分が学んだことをブログでわかりやすく発信していきながらスキルアップを目指していきます!

buy me a coffee