kubectl get pods: No resources found.

问题重现

[root@ltd kub]# kubectl create -f mysql-rc.yaml 
replicationcontroller "mysql" created
[root@ltd kub]# kubectl get rc
NAME      DESIRED   CURRENT   READY     AGE
mysql     1         0         0         4s
[root@ltd kub]# kubectl get pods
No resources found.

解决办法:

[root@ltd tomcat]# vi /etc/kubernetes/apiserver

……
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota"

#去掉ServiceAccount,保存

再看:

[root@ltd ~]# kubectl get pods
NAME          READY     STATUS    RESTARTS   AGE
mysql-36gjv   1/1       Running   0          10s

问题解决。

### 如何使用 `kubectl get pods` 查看所有 Pods 的状态 要查看 Kubernetes 集群中的所有 Pod 状态,可以按照以下方式操作: #### 基本命令结构 运行以下命令来获取当前命名空间下的所有 Pod 列表及其状态: ```bash kubectl get pods ``` 如果希望查看集群中 **所有命名空间** 下的 Pod,则需要加上 `-A` 或者 `--all-namespaces` 参数: ```bash kubectl get pods -A ``` 此命令会返回整个集群范围内所有的 Pod 及其对应的命名空间、状态和其他相关信息[^4]。 #### 解决常见问题 当执行 `kubectl get pods` 后提示 `No resources found.` 时,可能是因为当前上下文中默认的命名空间下没有任何资源存在。此时可以通过切换到其他命名空间或者全局扫描的方式解决问题[^3]。 对于某些情况下 Pod 处于 `ContainerCreating` 状态较长时间未完成初始化的情况,建议通过扩展诊断工具进一步排查原因。例如,可通过如下命令检查特定 Pod 的事件日志和描述详情: ```bash kubectl describe pod <pod-name> ``` 这有助于定位容器创建失败的具体错误信息[^2]。 另外,若始终无法发现任何可用的 Pod 资源列表,还应确认 API Server 是否配置正确以及权限设置是否适当等问题[^5]。 #### 示例输出解释 成功执行上述命令后,通常可以获得类似于下面这样的表格形式的结果: | NAME | READY | STATUS | RESTARTS | AGE | |-------------------------------|----------|-------------|------------|-----------| | example-pod | 1/1 | Running | 0 | 1h | 其中各列含义分别为: - **NAME**: Pod 名称; - **READY**: 已就绪的容器数 / 总计容器数量; - **STATUS**: 当前 Pod 运行状况 (如 Pending,Running,Succeeded,Failed,CrashLoopBackOff 等); - **RESTARTS**: 容器重启次数统计; - **AGE**: 创建至今的时间长度。 ```python def check_pods_status(): import subprocess try: result = subprocess.run(['kubectl', 'get', 'pods','-A'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) if result.returncode != 0: print(f"Error occurred while fetching pods status:\n{result.stderr.decode('utf-8')}") else: print(result.stdout.decode('utf-8')) except Exception as e: print(e) check_pods_status() ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值