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上的可用资源。

相关推荐
EverydayJoy^v^3 小时前
RH134学习进程——十二.运行容器(1)
linux·运维·容器
java_logo4 小时前
OpenProject Docker 容器化部署指南:从快速启动到生产环境配置
docker·容器·openproject·openproject部署·openproject部署手册·openproject部署方案·openproject部署教程
cg_ssh7 小时前
Docker 下启动 Nacos 3.1.1 单机模式
运维·docker·容器
修己xj7 小时前
使用 Docker 部署 SQL Server 并导入 .mdb 文件的完整指南
运维·docker·容器
迎仔11 小时前
13-云原生大数据架构介绍:大数据世界的“弹性城市”
大数据·云原生·架构
小码哥06812 小时前
代驾系统微服务容器化部署与灰度发布流程
微服务·云原生·代驾系统·代驾·代驾服务·同城代驾
江畔何人初12 小时前
k8s静态pod
云原生·容器·kubernetes
硅基流动12 小时前
从云原生到 AI 的跃迁探索之路|开发者说
大数据·人工智能·云原生
小二·13 小时前
Go 语言系统编程与云原生开发实战(第10篇)性能调优实战:Profiling × 内存优化 × 高并发压测(万级 QPS 实录)
开发语言·云原生·golang
u01040583614 小时前
淘客返利系统的CI/CD流水线搭建:Docker镜像构建与K8s部署实践
ci/cd·docker·kubernetes