K8S中的pod和node的区别

1.容器

容器是docker技术中的概念:

docker包括三个概念:镜像(image),容器(container)、仓库(repository)

容器就是镜像运行时的实体,镜像是类,容器是实例。

容器可以被创建、启动、停止、删除以及暂停等;容器的实质是进程,运行于属于自己独立的命名空间。

每个容器的文件系统与其他容器是隔离的。容器内的存储层是跟随容器变化的,生命周期同容器保持一致。容器删除,则存储层信息丢失。所以存储东西最好使用存储卷(volume)、绑定宿主目录等方式。

容器将代码和依赖关系打包在一起,可以多个容器同时运行在同一台机器上,并与其他容器共享操作系统内核。

2.Pod

pod是k8s调度的最小单元。1个pod可以包含1个或多个容器,可以理解为pod是容器集合。

pod相当于逻辑主机,每个pod通过describe可以看到都有自己的ip地址。pod内的容器可以共享相同的ip和端口空间。

进入pod后,正常的linux命令可以使用,若pod内包含多个容器,进入到每个容器都相当于进入了一个逻辑主机。(后半句的意思是每个容器也都有自己的ip?但是是共享的所在的pod的ip?)

一个Pod包含了一组应用容器(比如Docker或者rkt)和这些容器共用的资源:

共享存储,Volumes

网络,一个集群内唯一的IP地址

每个容器执行的相关配置,比如容器的镜像版本或者是需要使用的特定端口

3.Nodes

直接翻译就是节点。

Node是一个执行具体工作的机器,它可用是虚拟机也可用是物理机。

每个Pod都会放在预定的Node上面,并且会一直存在于那里直到运行终止(这个要根据restart策略来看具体情况)或者被删除。万一Node宕机了,整个Pod会被调度到集群中另外一个可用的Node上去。

每个Node上面可用有多个Pod。每个Node都由Master统一管理,Kubernetes Master会自动在Node之间处理调度相关的处理。Master的自动调度会记录每个Node上的可用资源。

相关推荐
云和数据.ChenGuang7 分钟前
微服务技术栈
微服务·云原生·架构
syty202012 分钟前
K8s是什么
容器·kubernetes·dubbo
江团1io02 小时前
微服务雪崩问题与系统性防御方案
微服务·云原生·架构
Evan Wang2 小时前
使用Terraform管理阿里云基础设施
阿里云·云原生·terraform
向上的车轮3 小时前
基于go语言的云原生TodoList Demo 项目,验证云原生核心特性
开发语言·云原生·golang
灵犀物润3 小时前
Kubernetes 配置检查与发布安全清单
安全·容器·kubernetes
360智汇云4 小时前
k8s交互桥梁:走进Client-Go
golang·kubernetes·交互
xy_recording4 小时前
Day20 K8S学习
学习·容器·kubernetes
衍余未了5 小时前
k8s 内置的containerd配置阿里云个人镜像地址及认证
java·阿里云·kubernetes
九章云极AladdinEdu5 小时前
Kubernetes设备插件开发实战:实现GPU拓扑感知调度
人工智能·机器学习·云原生·容器·kubernetes·迁移学习·gpu算力