当前位置: 首页 > news >正文

SC PV PVC volume svc的定义和区别

存储类(StorageClass)定义了持久卷声明(PersistentVolumeClaim)所需的属性和行为,而持久卷(PersistentVolume)是实际的存储资源,持久卷声明(PersistentVolumeClaim)是 Pod 对持久卷的请求。

  1. 存储类(StorageClass):存储类是用于定义持久卷的供应方式的抽象。它定义了存储卷的类型、访问模式、回收策略等信息。存储类允许管理员为不同的存储需求创建不同的策略,并且可以根据需要动态创建和删除持久卷。当创建 PVC 时,可以指定要使用的存储类,以便 Kubernetes 根据存储类的定义来创建相应的 PV。
  2. 持久卷(PersistentVolume,PV):持久卷是集群中的一块网络存储空间,它独立于 Pod 的生命周期。PV 是由管理员预先配置的,可以是物理存储设备、网络存储或云存储等。PV 具有容量、访问模式和回收策略等属性。PV 可以手动创建,也可以由存储类动态创建。当 PVC 请求一个符合条件的 PV 时,Kubernetes 会根据存储类的定义和可用的 PV 来选择并绑定一个 PV 给 PVC。
  3. 持久卷声明(PersistentVolumeClaim,PVC):持久卷声明是 Pod 对持久卷的请求。PVC 描述了 Pod 对存储的需求,包括容量、访问模式等。PVC 是通过与存储类绑定来创建符合需求的 PV 的一种方式。当创建 PVC 时,可以指定所需的存储类和其他属性,Kubernetes 会根据这些信息来选择并绑定一个合适的 PV 给 PVC。Pod 可以通过 PVC 来访问和使用持久卷。

简而言之,存储类定义了持久卷的供应方式,持久卷是预先配置的存储资源,持久卷声明是 Pod 对持久卷的请求。存储类通过与 持久卷声明 绑定来创建符合需求的 持久卷,使得 Pod 可以使用持久卷。

从租客眼中的看法:
  • 存储类相当于德祐、链家等这种租房中介商
  • 持久卷相当于一套房子(三室两厅、两室三厅、豪华别墅等)
  • 持久卷声明相当于租客的需求
  • Pod相当于租客

租客(Pod)想租房子需要找到中介(SC)说出自己的需求(PVC)。中介(SC)根据租客需求(PVC)找到房子(PV)提供给租客使用。

Volume

Volume(存储卷)是Pod中能够被多个容器访问的共享目录。Kubernetes的Volume概念、用途和目的与Docker的Volume比较类似,但两者不能等价。首先,Kubernetes中的Volume被定义在Pod上,然后被一个Pod里的多个容器挂载到具体的文件目录下;其次,Kubernetes中的Volume与Pod的生命周期相同,但与容器的生命周期不相关,当容器终止或者重启时,Volume中的数据也不会丢失。最后,Kubernetes支持多种类型的Volume,例如GlusterFS、Ceph等先进的分布式文件系统。

在Kubernetes(‌K8s)‌中,‌Persistent Volume Claim(‌PVC)‌和Service(‌SVC)‌是两种不同的资源对象,‌它们各自服务于不同的目的。‌

  • Persistent Volume Claim(‌PVC)‌:‌PVC是Kubernetes中的一种资源对象,‌它代表了对存储资源的需求。‌PVC允许用户声明他们需要的存储空间大小、‌访问模式(‌如读写、‌只读等)‌以及存储类。‌PVC的作用类似于向存储管理员请求存储资源,‌当PVC被成功创建后,‌它会在Kubernetes集群内部被分配相应的存储资源。‌PVC的设计目的是为了抽象存储细节,‌使得Pod可以独立于具体的存储实现进行部署和管理,‌从而提高了系统的灵活性和可移植性1。‌

  • Service(‌SVC)‌:‌SVC是Kubernetes中的一种网络资源对象,‌它为Pod提供了一种抽象层,‌使得Pod可以通过网络名称进行访问,‌而不是直接通过IP地址和端口号。‌SVC可以将多个Pod的流量路由到一个或多个端口上,‌实现了服务的负载均衡和高可用性。‌SVC还支持不同的服务发现机制,‌如ClusterIP、‌NodePort和LoadBalancer,‌使得服务可以在集群内部和外部进行访问2。‌

简而言之,‌PVC和SVC在Kubernetes中扮演着不同的角色:‌PVC负责管理和分配存储资源,‌而SVC则负责网络服务和负载均衡。‌这两者共同工作,‌使得Kubernetes能够有效地管理和扩展应用程序的服务和存储需求。‌

http://www.jsqmd.com/news/1120962/

相关文章:

  • Node.js应用安全防护:从SQL注入与XSS攻击原理到实战防御体系构建
  • 3个颠覆性方法解决Iwara视频下载难题:让你的收藏效率提升500%
  • 3分钟掌握猫抓Cat-Catch:网页视频音频资源一键捕获终极指南
  • 【免费下载】 JHenTai 漫画阅读器开源项目教程
  • 开源Unity替代引擎Prowl:从痛点分析到完整解决方案
  • 炉石传说HsMod插件:让游戏体验焕然一新的55个实用功能
  • C语言内存编址
  • Ubuntu遭DDoS攻击事件剖析:漏洞修复受阻与基础设施韧性思考
  • Mermaid Live Editor:告别拖拽,用代码思维重塑图表创作体验
  • HsMod:基于BepInEx的炉石传说终极增强插件完全指南
  • Runbook:革命性Ruby自动化框架 - 10分钟快速上手指南
  • ClusterIP、NodePort、LoadBalancer 和 ExternalName
  • StatefulLayout核心API解析:showLoading/showEmpty/showError等方法全攻略
  • Turnilo性能优化:提升大数据集探索效率的8个方法
  • 终极Mac清理工具Mole:用一行命令释放数十GB存储空间
  • Windows Research Kernel (WRK) 缓存管理器分析:Windows文件系统性能优化的秘密
  • LV30条码扫描器与PIC18F47Q10微控制器硬件设计与优化
  • Gradle Docker插件实战:从零开始构建Java应用Docker镜像
  • 如何让AI告别平庸设计:Taste-Skill完整使用指南与实战技巧
  • 静态网站SEO检查:Instatic内容分析与优化建议终极指南
  • NCSN预训练模型使用指南:快速生成MNIST/CelebA/CIFAR-10样本
  • Context安全指南:保护你的MCP服务器认证与数据隐私
  • VINS-Mono:如何快速构建高精度单目视觉惯性里程计系统
  • HsMod深度解析:炉石传说终极游戏体验增强框架完全指南
  • 3PEAK思瑞浦 LM2903-VS1R MSOP8 比较器
  • 从零构建CobaltStrike流量解密工具:实战AES与RSA密钥提取
  • 静态网站评论系统集成:Instatic与Commento、Utterances全攻略
  • Mermaid在线编辑器:让技术图表从负担变为乐趣的创作工具
  • Boss Show Time招聘神器:四大平台时间魔法,让你不再错过最新机会
  • 自动扶梯主传动轴装配图与零件图绘制要点解析