📅  最后修改于: 2023-12-03 15:10:50.699000             🧑  作者: Mango
当你在使用 Kubernetes 时,有时候你会需要确认 Kubernetes 是否正在运行。在这个文档中,我们将会提供一些使用 Shell/Bash 的方法,来检查 Kubernetes 是否正在运行。
Kubernetes 控制平面组件(kube-apiserver,kube-controller-manager 和 kube-scheduler)负责管理着 Kubernetes 集群的各项功能。因此,我们可以通过检查这些组件的状态来确认 Kubernetes 是否正在运行:
$ kubectl get componentstatuses
输出将会告诉你每个组件的状态。正常情况下,每个组件应该都是“Healthy”的状态。
$ kubectl get componentstatuses
NAME STATUS MESSAGE ERROR
controller-manager Healthy ok
scheduler Healthy ok
etcd-0 Healthy {"health": "true"}
## 方法二:检查 Kubernetes 节点状态
如果你想确认 Kubernetes 是否正在运行,可以通过检查节点状态来确认。节点是运行 Kubernetes 工作负载的主机,如果节点处于正常状态,意味着 Kubernetes 正在运行。
```bash
$ kubectl get nodes
输出将会告诉你每个节点的状态。正常情况下,每个节点应该都是“Ready”的状态。
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-worker-1 Ready <none> 29d v1.18.2
k8s-worker-2 Ready <none> 29d v1.18.2
k8s-worker-3 Ready <none> 29d v1.18.2
## 方法三:检查 Kubernetes API 是否可用
最后,你可以检查 Kubernetes API 是否可用。这可以通过使用 curl 命令来完成:
```bash
$ curl https://[Kubernetes API 地址]/version
输出将会告诉你 Kubernetes 的版本信息。如果能够顺利获取版本信息,那么意味着 Kubernetes 正在运行。
$ curl https://localhost:6443/version
{
"major": "1",
"minor": "18",
"gitVersion": "v1.18.2",
"gitCommit": "52c56ce7a8272c798dbc29846288d7cd9fbae032",
"gitTreeState": "clean",
"buildDate": "2020-04-16T11:56:40Z",
"goVersion": "go1.13.9",
"compiler": "gc",
"platform": "linux/amd64"
}
这些是检查 Kubernetes 是否正在运行的一些常用方法。使用这些方法,你可以快速而简单地确认 Kubernetes 是否正在运行。