1.在k8s集群环境中查看资源集群状态
输入命令 =》# kubectl api-resources 显示k8s集群中的所有api资源信息,参数说明:
- NAME :api 资源名称;
- SHORTNAMES :api 资源名称简写;
- APIGROUP :api 分组管理;
- NAMESPACED :是否可使用命名空间隔离,true 是, false 否;
- KIND :api 资源类型;
查看k8s组件集群状态 =》# kubectl get cs
=》出现【kubeadm安装k8s 组件controller-manager 和scheduler状态 Unhealthy】错误:
出现如上 Unhealthy 状态,排查思路:
1|1、先查看本地的端口,可以确认没有启动10251、10252端口
=》# sudo netstat -tlunp
或者直接过滤查看10251、10252端口
- =》# ss -ant|grep 10251
- =》# ss -ant|grep 10252
1|2、确认kube-scheduler和kube-controller-manager组件配置是否禁用了非安全端口
=》配置文件路径:
- /etc/kubernetes/manifests/kube-scheduler.conf
- /etc/kubernetes/manifests/kube-controller-manager.conf
=》查看对应的ymal文件:
vim /etc/kubernetes/manifests/kube-scheduler.yaml
vim /etc/kubernetes/manifests/kube-controller-manager.yaml
=》去掉 --port=0 这个设置,如下图红色框内:
1|3.重启kubelet =》# sudo systemctl restart kubelet
重启服务之后确认组件状态,显示就正常了,再次输入如下命令验证:
- 查看集群监听端口信息 =》# sudo netstat -tlunp
- 查看master组件状态 =》# kubectl get cs
2. 常用api资源查看命令
- 查看master组件状态=》# kubectl get cs
- 查看node状态=》# kubectl get node
- 查看Apiserver代理的URL =》# kubectl cluster-info
- 查看集群详细信息 =》# kubectl cluster-info dump
- 查看资源信息=》# kubeclt describe <资源> <名称>
- 查看节点详细信息=》# kubectl describe node
- 查看master节点详细信息=》# kubectl describe node k8s-master
- 查看node节点详细信息=》# kubectl describe node k8s-node01
- 查看Pod资源信息=》# kubectl get pod <Pod名称> --watch
api-server 的作用:
- 集群的统一入口;
- 协作其他组件(内部有部分api代理);
总结:
- api-resources 查看集群资源类型信息;
- kubeadm安装k8s集群后,查看master节点组件状态;
- 常用api-resources简单介绍;