簡體   English   中英

如何使用 kubectl 描述 Kube.netes 集群?

[英]How to describe a Kubernetes cluster using kubectl?

我想檢查 Kube.netes 配置 - 有多少節點等。我嘗試了以下命令。

kubectl describe cluster
error: the server doesn't have a resource type "cluster"

順便說一句,我嘗試使用以下命令來檢查 pod 節點的 AZ。 但它為所有 pod 的節點返回<none>

kubectl get pods -o=custom-columns=NAME:.metadata.name,ZONE:.metadata.labels.'topology\.Kubernetes\.io/zone'

如何使用kubectl查找 pod 的可用區?

我可能會錯過你的問題,但如果你只需要節點,你可以做

kubectl get nodes

接着

kubectl describe node {node-name}

獲取單個節點的更多詳細信息

您還可以結合kubectl get nodes中的 output 並使用jsonpathjq來過濾您需要的信息。

這是我的節點顯示集群中的區域信息(組成):

kubectl get node -Ltopology.kubernetes.io/zone
NAME                            STATUS   ROLES           AGE   VERSION   ZONE
development-kube-controller-1   Ready    control-plane   48d   v1.24.6   zone
development-kube-worker-1       Ready    <none>          48d   v1.24.6   zone-A
development-kube-worker-2       Ready    <none>          48d   v1.24.6   zone-B

使用awk命令,label topology.kube.netes.io/zone與計划在該特定節點上的 pod 的名稱合並。

注意:我在 label key topology\.kube.netes\.io/zone中使用了小寫的k 但是,在您的情況下,問題中的K是大寫的。 您可能想要校准您的命令。

kubectl describe  node |awk '/topology.kubernetes.io\/zone/{zone=$1;next} /^  Namespace/{flag=1; getline; next} /^Allocated resources:/{flag=0} flag{print  $2, zone}' |column -t
calico-node-swz7j                                      topology.kubernetes.io/zone=zone
coredns-74d6c5659f-4mpcp                               topology.kubernetes.io/zone=zone
dns-autoscaler-59b8867c86-w4dls                        topology.kubernetes.io/zone=zone       
kubernetes-dashboard-648989c4b4-b4k7h                  topology.kubernetes.io/zone=zone-A
kubernetes-metrics-scraper-84bbbc8b75-x72pf            topology.kubernetes.io/zone=zone-A
nginx-proxy-development-kube-worker-1                  topology.kubernetes.io/zone=zone-A
nodelocaldns-xt6hr                                     topology.kubernetes.io/zone=zone-A
metallb-controller-94c85f6db-6j8j5                     topology.kubernetes.io/zone=zone-A
metallb-speaker-4fz99                                  topology.kubernetes.io/zone=zone-A
argocd-application-controller-0                        topology.kubernetes.io/zone=zone-B
argocd-applicationset-controller-5bff759d68-kk7tx      topology.kubernetes.io/zone=zone-B
argocd-dex-server-59c59b5d96-7z7th                     topology.kubernetes.io/zone=zone-B
argocd-notifications-controller-6df97c8577-26z9m       topology.kubernetes.io/zone=zone-B
argocd-redis-684fb8c6dd-bxb25                          topology.kubernetes.io/zone=zone-B
argocd-repo-server-79d8c5f7b4-fnh7g                    topology.kubernetes.io/zone=zone-B

PS:可以在awk命令中打印$1來打印命名空間,以防需要根據命名空間進行過濾。

試試這個命令

kubectl cluster-info

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM