k8s名词解释
参考:http://docs.kubernetes.org.cn/312.html
Kubernetes名词
Pod
- Pod是Kubernetes创建或部署的最小/最简单的基本单位,一个Pod代表集群上正在运行的一个进程。
- 相当于一个共享context的配置组,context可以理解成多个linux命名空间的联合。
PID 命名空间(同一个Pod中应用可以看到其它进程)
网络 命名空间(同一个Pod的中的应用对相同的IP地址和端口有权限)
IPC 命名空间(同一个Pod中的应用可以通过VPC或者POSIX进行通信)
UTS 命名空间(同一个Pod中的应用共享一个主机名称) - 一个Pod封装一个应用容器(也可以有多个容器),存储资源、一个独立的网络IP以及管理控制容器运行方式的策略选项。
- Pod可以封装紧密耦合的应用,它们需要由多个容器组成,它们之间能够共享资源,这些容器可以形成一个单一的内部service单位。
一个容器共享文件,另一个“sidecar”容器来更新这些文件。Pod将这些容器的存储资源作为一个实体来管理。
Pod提供2种资源
网络
- 每个Pod被分配一个独立的IP地址,Pod中的每个容器共享网络命名空间,包括IP地址和网络端口。
- Pod内的容器可以使用localhost相互通信。
存储
- Pod可以指定一组共享存储volumes。Pod中的所有容器都可以访问共享volumes,允许这些容器共享数据。
- volumes 用于Pod中的数据持久化,以防其中一个容器需要重新启动而丢失数据。
生命周期
- Pod的生命周期是短暂的,用后即焚的实体.
- Pod不会自愈。如果Pod运行的Node故障,或者是调度器本身故障,这个Pod就会被删除。
- Kubernetes通常使用Controller来管理Pod实例。
- Controller可以创建和管理多个Pod,提供副本管理、滚动升级和集群级别的自愈能力。例如,如果一个Node故障,Controller就能自动将该节点上的Pod调度到其他健康的Node上。
Node
概念
- Node是Kubernetes中的工作节点,可以是VM或物理机。
- 每个Node(节点)具有运行pod的一些必要服务,并由Master组件进行管理,Node节点上的服务包括Docker、kubelet和kube-proxy。
状态信息
Addresses
- HostName:可以通过kubelet 中 --hostname-override参数覆盖。
- ExternalIP:可以被集群外部路由到的IP。
- InternalIP:只能在集群内进行路由的节点的IP地址。
Conditions
conditions字段描述所有Running节点的状态,被表示为一个JSON对象。
- OutOfDisk 节点上是否有足够的可用空间来添加新的pod,无则为true
- Ready 节点是健康的并准备好接收pod为true;节点控制器在过去40秒内没有收到node的状态报告为Unknown
- MemoryPressure 节点存储器上内存过低为true
- DiskPressure 磁盘容量存在压力,即磁盘容量低为true
Capacity
描述节点上可用的资源:CPU、内存和可以调度到节点上的最大pod数。
Info
关于节点的一些基础信息,如内核版本、Kubernetes版本(kubelet和kube-proxy版本)、Docker版本(如果有使用)、OS名称等。信息由Kubelet从节点收集。
Node Controller
节点控制器(Node Controller)是管理节点的Kubernetes master组件。
- 在注册时将CIDR块分配给节点。
- 使节点控制器的内部列表与云提供商的可用机器列表保持最新。
- 监测节点的健康状况。
Node容量
- 节点的容量(cpu数量和内存数量)是节点对象的一部分。通常,节点在创建节点对象时注册并通知其容量。
- Kubernetes调度程序可确保节点上的所有pod都有足够的资源。它会检查节点上容器的请求的总和不大于节点容量。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫