今天继续给大家介绍Linux运维相关知识,本文主要内容是Kubernetes PV与PVC。

一、PV和PVC详解

当前,存储的方式和种类有很多,并且各种存储的参数也需要非常专业的技术人员才能够了解。在Kubernetes集群中,放了方便我们的使用和管理,Kubernetes提出了PV和PVC的概念,这样Kubernetes集群的管理人员就可以将注意力集中到Kubernetes集群中来,而无需操心后端的存储设备了。
Kubernetes集群存储架构如下所示:

从上图可以看出,底层的存储可以使各种类型,包括NFS、Ceph、iSCSI等等,而Kubernetes会把这些存储统一抽象为PV。PV,即Persistent Volume,是集群中配置的存储资源。PVC,即Persistent Volume Claim,是用户存储的请求,通常我们在一个Pod中定义一个存储卷,定义的时候会指定该存储卷的相关信息,比如空间大小、可读可写等属性。但是PVC并不是真正的存储空间,Pod的PVC和PV之间必须建立某种联系,这样才能使得Pod可以调用实际存储空间。

二、PV和PVC生命周期

实际上,不管是PV,还是PVC,都遵循以下生命周期:
1、Provisioning
Provisioning,即配置阶段。一般而言,PV的提供方式有两种——静态和动态
所谓静态提供,就是Kubernetes管理员创建多个PV,这些PV的存储空间等属性已经确定,并且已经和真实的存储设备进行了关联。Pod中的PVC可以根据需要请求这些PV。
所谓动态提供,需要依托与StorageClass的支持,这时Kubernetes会尝试为PVC来动态的创建PV。这样做的好处是避免出现这种情况:部分PVC被分配给了远远超出其资源需求的PV、或者说系统存在很多资源较少的PV,但是一个资源需求很高的PVC缺无法被满足的情况。
2、Binding
在动态配置的情况下,用户创建或者已经创建了具有特定数量的PVC后,PVC与PV绑定的过程。
如果没有满足PVC请求需求的PV,那么PVC将无法被创建,因此造成的结果就是相应的Pod也不会被创建。
3、Using
即PVC与PC绑定后,Pod对存储空间的使用过程。
4、Releasing
当Pod被删除或者对该PV的资源使用结束后,Kubernetes就会删除该PVC对象,相应的也会回收PV资源,这时的PV就会处于这种状态。但是此时的PV还需要处理完毕之前的Pod在该存储卷上存储信息后才能够被使用。
5、Reclaiming
PV的回收策略对被释放的PV的处理过程。
6、Recycling
根据配置,有时PV会被执行擦除操作,删除掉该存储空间上的所有信息,并且该存储资源也可以被再次使用。
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

Kubernetes详解(三十七)——PV与PVC相关推荐

  1. Kubernetes详解(三十九)——Storage Class

    今天继续给大家介绍Linux运维相关知识,本文主要内容是Storage Class相关内容. 一.Storage Class简介 在前文Kubernetes详解(三十八)--NFS对PVC和PV使用实 ...

  2. python笔记-Pygame详解(十七):joystick 模块

    感谢:来自江南的你 Pygame详解(十七):joystick 模块 #coding:utf-8 import pygame# Define some colors定义一些颜色 BLACK = ( 0 ...

  3. Kubernetes详解(五十三)——Kubernetes Role创建和Rolebinding

    今天继续给大家介绍Linux运维相关知识,本文主要内容是Kubernetes Role创建和Rolebinding. 一.Kubernetes Role创建 首先,我们先来创建一个Role.我们可以通 ...

  4. Android init.rc文件解析过程详解(三)

    Android init.rc文件解析过程详解(三) 三.相关结构体 1.listnode listnode结构体用于建立双向链表,这种结构广泛用于kernel代码中, android源代码中定义了l ...

  5. linux 进程间通信 dbus-glib【实例】详解三 数据类型和dteeth(类型签名type域)(层级结构:服务Service --> Node(对象、object) 等 )(附代码)

    linux 进程间通信 dbus-glib[实例]详解一(附代码)(d-feet工具使用) linux 进程间通信 dbus-glib[实例]详解二(上) 消息和消息总线(附代码) linux 进程间 ...

  6. Windows 7防火墙设置详解(三)

    Windows 7防火墙设置详解(三) 一.如何禁用或启用规则 方法:只需要在需要禁用或启动的规则上,鼠标右键选择启用或禁止规则即可,或点击右侧的操作栏进行规则启用或禁止. 二.入站规则和出站规则 由 ...

  7. Android Studio 插件开发详解三:翻译插件实战

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78113868 本文出自[赵彦军的博客] 系列目录 Android Gradle使用 ...

  8. 数据结构--图(Graph)详解(三)

    数据结构–图(Graph)详解(三) 文章目录 数据结构--图(Graph)详解(三) 一.深度优先生成树和广度优先生成树 1.铺垫 2.非连通图的生成森林 3.深度优先生成森林 4.广度优先生成森林 ...

  9. SharePoint2007安装图文详解三:安装SqlServer2005

    SharePoint2007 中的很多功能会用到数据库,如分析服务,报表服务等.本文介绍SqlServer2005的安装,数据库的安装很简单,基本上安装默认选项点击下一步即可,需要注意的地方在下面会提 ...

  10. C语言中三个数比较大小详解——三种方法

    ​ C语言中三个数比较大小详解--三种方法 方法一:if-else法 方法二:函数法 方法三:三目运算符法 C语言中比较三个数的大小有很多方法,以下是我总结的三种方法: 首先我定义 int a = 1 ...

最新文章

  1. 在python中等号前面与后面分别是什么意思-Python中%是什么意思?python中百分号如何使用?...
  2. 计算机网络(谢希仁第八版)第一章:概述
  3. python初学者代码示例_Selenium 快速入门笔记和代码示例(Python版)
  4. python butter带通滤波器滤波出来的信号有NAN值或者分类效果极差
  5. Redis 实用技术——消息发布和订阅
  6. 缠论k线合并处理python实现_缠论期货:道琼斯工业指数缠论分解体系5F趋势背驰,3买能否构筑成功?...
  7. 【leetcode刷题笔记】Restore IP Addresses
  8. Linux/Unix IO多路复用之select网络编程(含源码)
  9. idea 如何修改主题
  10. VBS 对IBM Notes的常规操作
  11. 【推文】人间清醒VS梅花痣俏郎君
  12. python支持的编程方式包括,python的两种编程方式是什么
  13. 前端-table表格隔行变色
  14. 算法学习之实现二维矩阵的顺时针遍历
  15. 【模拟电子技术Analog Electronics Technology 5】——晶体三极管基极和集电极电阻有什么作用?
  16. 自动在副屏/虚拟屏启动100%鲜橙汁 | 可用于上班摸鱼
  17. 1055. The World's Richest (25)
  18. ubuntu系统声音_Ubuntu Linux系统提示声音设置
  19. 初识App Inventor 2(AI2)
  20. 《潜龙谍影4》详细剧情解析

热门文章

  1. 临近空间环境监测系统
  2. 杭州seo工资高吗?杭州做seo工资一般多少
  3. 京东安联臻爱无限2020,可以带“病”投保的百万医疗险!
  4. ap计算机课程的内容,AP系列七|解读AP计算机课程与考试
  5. mac系统双开应用(QQ、微信)
  6. 译|深入理解Metaspace
  7. PS的一些基础概念(分辨率,色相,饱和度,明度,RGB)
  8. 一文带你怼明白进程和线程通信原理
  9. EWM RF手持设备开发记录
  10. Ptyhon 入门:通过高德地图获取经纬度