Kubernetes Pod入门

什么是 Pod?

Pod 是一个或多个容器的组合。这些容器共享存储、网络和命名空间,以及运行规范。在 Pod中,所有容器都被统一安排和调度,并运行在共享的上下文中。对于具体应用而言,Pod 是它们的逻辑主机,Pod 包含业务相关的多个应用容器。所以,Pod 是一组具有共享命名空间、IP 地址和端口的容器的集合。

Pod 可以简单的理解为一组、一个或多个容器,每个 Pod 还包含一个 Pause 容器,Pause 容器是 Pod 的父容器,主要负责僵尸进程的回收管理。同时,通过 Pause 容器可以使同一个 Pod里面的不同容器共享存储、网络、PID、IPC等,容器之间可以使用 Localhost:Port 的方式相互访问,可以使用 volume 实现数据共享。根据 Docker 的构造,Pod 可以被创建为一组具有共享命名空卷、IP 地址和端口的容器。

pod的状态

1.Pending(等待中)

状态描述:Pod被创建后,正在等待调度器为其分配所需的节点资源。这可能包括下载镜像、分配IP地址、执行初始化容器等操作。

可能原因:资源不足、调度问题、镜像拉取失败、节点故障等。

2. Running(运行中)

状态描述:Pod已经被调度到节点上,并且至少其中一个容器正在运行。Pod中的容器可能正在运行、启动或重启。

注意:即使Pod处于Running状态,也不代表所有容器都正常运行,因为可能存在容器正在重启或初始化的情况。

3. Succeeded(已完成)

状态描述:Pod中的所有容器都已成功执行完任务并退出,且不会再自动重启。这种状态通常出现在Job任务完成后。

特点:Pod完成了其预定的任务,并成功终止。

4. Failed(失败)

状态描述:Pod中的一个或多个容器由于某种原因失败。容器可能以非零状态码退出或被系统终止。

可能原因:容器内部错误、依赖资源不可用、初始化容器失败等。

5. Unknown(未知)

状态描述:无法获取Pod的状态信息。这通常是由于与API服务器的通信问题、节点故障或网络问题等导致的。

影响:在这种情况下,管理员需要检查集群的健康状况和节点状态,以确定为何无法获取Pod的状态信息。

6. Terminating(终止中)

状态描述:Pod正在被删除或终止,Kubernetes正在尝试停止容器并清理资源。

过程:在这个过程中,Pod可能会经历一系列清理操作,如停止容器、释放资源等。

7. ContainerCreating(创建容器中)

状态描述:Pod的容器正在被创建中。这通常发生在容器镜像下载或初始化容器执行的过程中。

可能原因:镜像拉取速度慢、网络问题、节点资源不足等。

8. 特殊状态

除了上述基本状态外,Pod还可能处于一些特殊状态,如:

CrashLoopBackOff:容器退出后,kubelet正在尝试重启它,但连续多次失败。

ImagePullBackOff:正在重试拉取镜像,但连续多次失败。

Evicted:Pod被驱逐出节点,通常是因为节点资源不足。

Pod状态

(1)kubectl命令创建pod

kubectl run nginx --image=nginx:1.7.9 --labels="app=nginx"

(2)查看pod

kubectl get pod

(3)显示pod的更多信息

kubectl get pod nginx -o wide

(4)查看pod日志

kubectl logs nginx

(5)以yaml格式显示pod详细信息

kubectl get pod nginx -o yaml

(6)显示资源的详细描述信息

kubectl describe pod nginx

(7)在pod的容器中执行命令

kubectl exec nginx -c nginx -- date

(8)登录到pod中的容器中

kubectl exec -it nginx -c nginx -- bash

(9)在线编辑运行中的资源对象

kubectl edit pod nginx

(10)将pod的端口映射到宿主机

kubectl port-forward --address 0.0.0.0 pod/nginx 8080:80

(11)在宿主机和pod的容器之间拷贝文件

kubectl cp nginx:/etc/fstab /opt/aaa.txt

(12)删除pod

kubectl delete pod nginx

  • 23
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值