ITPub博客

首页 > 应用开发 > IT综合 > kubernetes实践之二十五:存储卷 PV&PVC

kubernetes实践之二十五:存储卷 PV&PVC

原创 IT综合 作者:百联达 时间:2018-04-26 17:19:39 0 删除 编辑
一:体系结构图


二:说明

1.单节点Volume是最简单的普通Volume,它和Docker的存储卷类似,使用的是Pod所在K8S节点的本地目录。具体有两种,一种是 emptyDir,是一个匿名的空目录,由Kubernetes在创建Pod时创建,删除Pod时删除。另外一种是 hostPath,与emptyDir的区别是,它在Pod之外独立存在,由用户指定路径名。这类和节点绑定的存储卷在Pod迁移到其它节点后数据就会丢失,所以只能用于存储临时数据或用于在同一个Pod里的容器之间共享数据。

2.普通Volume和使用它的Pod之间是一种静态绑定关系,在定义Pod的文件里,同时定义了它使用的Volume。Volume 是Pod的附属品,我们无法单独创建一个Volume,因为它不是一个独立的K8S资源对象。

3.Persistent Volume 简称PV是一个K8S资源对象,我们可以单独创建一个PV。它不和Pod直接发生关系,而是通过Persistent Volume Claim,简称PVC来实现动态绑定。Pod定义里指定的是PVC,然后PVC会根据Pod的要求去自动绑定合适的PV给Pod使用。

4.PV 定义举例

点击(此处)折叠或打开

  1. apiVersion: v1
  2.   kind: PersistentVolume
  3.   metadata:
  4.     name: pv0003
  5.   spec:
  6.     capacity:
  7.       storage: 5Gi
  8.     accessModes:
  9.       - ReadWriteOnce
  10.     persistentVolumeReclaimPolicy: Recycle
  11.     storageClassName: slow
  12.     nfs:
  13.       path: /tmp
  14.       server: 172.17.0.2
5.PVC定义举例

点击(此处)折叠或打开

  1. kind: PersistentVolumeClaim
  2. apiVersion: v1
  3. metadata:
  4.   name: myclaim
  5. spec:
  6.   accessModes:
  7.     - ReadWriteOnce
  8.   resources:
  9.     requests:
  10.       storage: 8Gi
  11.   storageClassName: slow
  12.   selector:
  13.     matchLabels:
  14.       release: "stable"
  15.     matchExpressions:
  16.       - {key: environment, operator: In, values: [dev]}

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/28624388/viewspace-2153408/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
15年以上互联网经验,先后从事过制造业,证券业,物业行业和物流行业信息系统和互联网产品的设计落地实施,8年系统架构经验。最近关注企业数字化转型、财务数字化服务共享、大语言模型、Kubernetes微服务架构和Istio微服务治理框架。

注册时间:2013-02-05

  • 博文量
    332
  • 访问量
    1265609