[英]Kubectl using command to get cluster status
我需要創建一個shell腳本來檢查集群狀態。**
我看到kubectl describe-nodes
提供了很多數據,我可以將其輸出到json,然后進行解析,但這也許是過分的了。 有沒有一種簡單的方法可以使用kubectl
命令獲取集群的狀態? 只是它的上/下
檢查是否可以訪問API服務器的最便宜的方法是kubectl version
。 此外, kubectl cluster-info
為您提供了更多信息。
除了Michael的答案之外 ,那只會告訴您有關API服務器或主服務器和內部服務(例如KubeDns等)的信息,而不會告訴您有關節點的信息。
這取決於您的需要和此處“狀態”的定義。 您可以運行kubectl cluster-info
然后運行kubectl cluster-info
kubectl get nodes
並使用awk
, jq
或kubectl自己的-o jsonpath
選項之類的解析工具檢查所有節點的STATUS
列,以驗證所有節點是否准備就緒。
以下命令將顯示調度程序,控制器和etcd
kubectl get cs
下面的命令列出了Kubernetes核心組件,例如etcd
,控制器,調度程序,kube-proxy,core-dns,網絡插件。 所有這些吊艙都應運行,以確保Kubernetes處於健康狀態。
kubectl get pod -n kube-system
最后,部署一個前端和后端Pod,並驗證Pod間的通信,以確保集群正常運行。
以下是根據要求獲取集群狀態的命令:
要獲取有關Kubernetes主服務器運行位置,CoreDNS運行位置,kubernetes-dasboard運行位置kubectl cluster-info
,請使用kubectl cluster-info
要獲取詳細信息以進一步調試和診斷集群問題,請使用kubectl cluster-info dump
要僅獲取供節點使用的運行狀況,請kubectl get componentstatus
或kubectl get cs
*要顯示有關資源的詳細信息,請使用kubectl describe node <node>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.