Pods
目录
理解 PodYAML 文件示例使用 CLI 管理 Pod调整 Pod 资源查看 Pod查看 Pod 日志在 Pod 中执行命令转发到 Pod 的端口删除 Pod使用 Web 控制台管理 Pod查看 Pod操作步骤Pod 参数删除 Pod使用场景操作步骤理解 Pod
请参阅 Kubernetes 官方网站文档:Pod
Pod 是 Kubernetes 中可以创建和管理的最小可部署计算单元。Pod(如鲸鱼群中的 pod 或豌豆荚)是一组一个或多个容器(例如 containers),它们共享存储和网络资源,并包含用于描述如何运行这些容器的规范。Pods 是所有更高级控制器(如 Deployments、StatefulSets、DaemonSets)构建的基础组件。
YAML 文件示例
使用 CLI 管理 Pod
虽然 Pods 通常由更高级控制器管理,但直接对 Pods 执行 kubectl 操作对于故障排查、检查和临时任务非常有用。
调整 Pod 资源
要通过 Kubernetes resize 子资源更新正在运行的 Pod 的 CPU 或内存 requests 和 limits,请参阅 无需中断 Pod 即可调整 Pod 资源级别。
查看 Pod
-
列出当前 namespace 中的所有 Pods:
-
列出所有 namespace 中的所有 Pods:
-
获取特定 Pod 的详细信息:
查看 Pod 日志
-
流式获取 Pod 中某个容器的日志(适用于调试):
-
如果 Pod 有多个容器,必须指定容器名称:
-
跟踪日志(随着新日志出现而持续输出):
在 Pod 中执行命令
在 Pod 中的特定容器内执行命令(适用于调试,例如访问 shell):
转发到 Pod 的端口
将本地端口转发到 Pod 上的某个端口,使您可以从本地机器直接访问运行在 Pod 内的服务(适用于测试,或无需对外暴露服务即可直接访问):
运行此命令后,您可以在 Web 浏览器中访问 localhost:8080 ,查看运行在 my-nginx-pod 中的 Nginx Web server。
删除 Pod
-
删除特定 Pod:
-
按名称删除多个 Pods:
-
根据 label selector 删除 Pods(例如,删除所有带有 label app=nginx 的 Pods):
使用 Web 控制台管理 Pod
查看 Pod
平台界面提供了有关 pods 的各种信息,便于快速参考。
操作步骤
-
在 Container Platform 中,点击左侧边栏的 Workloads > Pods。
-
找到您要查看的 Pod。
-
点击 deployment 名称以查看 Details、YAML、Configuration、Logs、Events、Monitoring 等内容。
Pod 参数
下面是一些参数说明:
删除 Pod
删除 pods 可能会影响计算组件的运行;请谨慎操作。
使用场景
-
及时将 pods 恢复到期望状态:如果某个 pods 处于影响业务运行的状态,例如
Pending或CrashLoopBackOff,在处理完错误信息后手动删除该 pods,可以帮助其快速恢复到期望状态,例如Running。此时,被删除的 pods 会在当前节点上重新创建或重新调度。 -
运维清理资源:某些 podss 会达到一个不再变化的指定阶段,这些组通常会大量积累,给其他 podss 的管理带来复杂性。需要清理的 podss 可能包括由于节点资源不足而处于
Evicted状态的 podss,或者由周期性计划任务触发而处于Completed状态的 podss。在这种情况下,被删除的 podss 将不再存在。注意:对于计划任务,如果您需要查看每次任务执行的日志,不建议删除对应处于
Completed状态的 podss。
操作步骤
-
进入 Container Platform。
-
在左侧导航栏中,点击 Workloads > Pods。
-
(单独删除)点击要删除的 pods 右侧的 ⋮ > Delete,然后确认。
-
(批量删除)选择要删除的 podss,点击列表上方的 Delete,然后确认。