首页 > 其他分享 >K8S静态PV,PVC持久化

K8S静态PV,PVC持久化

时间:2022-11-26 13:00:21浏览次数:73  
标签:storageClassName pv NFS 绑定 pvc PVC nfs PV K8S

1.安装NFS客户端

yum install nfs-utils
showmount -e 192.168.137.31 #测试

2.创建PV,PVC

kubectl create -f pv.yaml
kubectl create -f pvc.yaml

3.查看结果

kubectl get pv,pvc

4.Pvc绑定到POD

kubectl create -f pod.yaml

5.检查POD内部是否已经与NFS正常连接

kubectl exec mypod -- ls /var/www/html

 

以下内容参考自

https://www.jianshu.com/p/d59552131259

pv.yaml文件内容

apiVersion: v1

kind: PersistentVolume

metadata:

name: nfspv #pv的名字

labels:

pv: nfs #pvc可以使用标签选择器来选择该pv,storageClassName和标签选择器是AND关系,如果storageClassName相同,标签选择器不同则pvc一直是pending状态

spec:

capacity:

storage: 1Gi #pv存储空间的大小,这里的空间大小并不能现在pod使用NFS空间的大小,作为pvc和pv>绑定选择使用,pv的空间符合pvc的要求则可以进行绑定

volumeMode: Filesystem #存储卷模式,默认为Filesystem,可选项还有Block

accessModes:

- ReadWriteOnce #存储卷的访问模式有三种ReadWriteOnce、ReadOnlyMany、ReadWriteMany

persistentVolumeReclaimPolicy: Retain #pv回收策略有三种Retain(保留。pv删除,存储数据保留,需删

除需手动)、Recycle(回收。pv删除,存储的数据被清空删除掉)、Delete(删除。pv删除,则后端的存储设

备也删除掉,常用语云厂商)

storageClassName: slow #pv和pvc的该项保持一致才可以进行绑定

nfs:

path: /root/nfs/share #NFS共享目录

server: 192.168.137.31 #NFS服务器地址
Pvc.yaml
apiVersion: v1

kind: PersistentVolumeClaim

metadata:

name: nfs-pvc #pvc名字,POD关联使用

spec:

accessModes: #pvc在请求pv的时候访问模式保持一致

- ReadWriteOnce #同pv一样三种模式

volumeMode: Filesystem #同pv一样两种模式

resources:

requests:

storage: 200Mi #pvc空间的大小,并不能作为pod使用存储的空间限制,而是作为选择绑定pv的条件。

storageClassName: slow #pvc和pv保持一致才可以进行绑定,否则一直pending状态

selector: #pvc可以通过标签选择器选择绑定pv。如果同时设置selector和storageClassName,那么再进行>绑定pv匹配选择的时候是AND的关系,两则同时满足才可以。

matchLabels:

pv: "nfs"

# matchExpressions:

# # - {key: environment, operator: In, values: [dev]}

 

标签:storageClassName,pv,NFS,绑定,pvc,PVC,nfs,PV,K8S
From: https://www.cnblogs.com/heho/p/16925521.html

相关文章

  • k8s与Docker-九五小庞
    随着k8s作为容器编排解决方案变得越来越流行,有些人开始拿Docker和k8s进行对比,不禁问道:Docker不香吗?k8s是kubernets的缩写,’8‘代表中间的八个字符。其实Docker和......
  • 1.2. jenkins安装和部署-k8s版本
    物料清单-组件-版本k8s1.23.10kubespherev3.3.1jenkins版本2.361.4部署创建Namespace在kubesphere上工作台->企业空间->点击创建->填写名称ws......
  • centos8上使用kubeasz3.0.0项目ansible自动的二进制部署k8s高可用集群
    一、ansible的kubeasz3.0.0部署多master高可用kubernetes集群环境#二进制部署,ansible的kubeasz3.0.0部署多master高可用kubernetes集群环境1.#主机名设置类型服务器I......
  • 每天一点基础K8S---kubeadm搭建master节点高可用K8S集群--version 1.25.3
    搭建条件centos-stream-8[root@localhost~]#cat/etc/os-releaseNAME="CentOSStream"|主机名|IP地址|role||master-worker-node-1|192.168.122.89/24|......
  • 开启IPV4转发
    启用IP路由转发功能:1)#echo1>/proc/sys/net/ipv4/ip_forward2)#sysctl-wnet.ipv4.ip_forward=1以上两种方法都可能立即开启路由功能,但如果系统重启......
  • GitlabRunner+K8S 实现自动化发布
    前置条件:一台Linux服务器,安装好Docker一个K8s集群环境一个Gitlab仓库,可以自己搭建或者直接使用官方仓库(中文版gitlab:https://jihulab.com/)一个镜像仓库,用于存储doc......
  • 【k8s】deploy-minReadySeconds
    环境kubernetes1.20.4SpringBoot2.5.0-M3目标deploy在更新过程中,启动Pod后,minReadySeconds可以定义该Pod经过多少秒后才被视为可用。如果新的Pod不可用,是......
  • IPv6改造方案:协议转换技术-中科三方
    前面两篇文章,我们分别介绍了双栈技术和隧道技术两种IPv6地址转换技术,本文将重点介绍最后一种IPv6改造方案——协议转换技术。网络地址转换-协议转换技术网络地址转换技术(Netw......
  • IPv6改造方案:协议转换技术-中科三方
    前面两篇文章,我们分别介绍了双栈技术和隧道技术两种IPv6地址转换技术,本文将重点介绍最后一种IPv6改造方案——协议转换技术。 网络地址转换-协议转换技术网络地址转换技......
  • 【iOS-cocos2d-X 游戏开发之十一】New CCSprite()带来的错误&使用CCUserDefault及pvr.
    本站文章均为​​ 李华明Himi ​​​原创,转载务必在明显处注明本章讲解的是几个细节问题,但是此细节有可能导致一系列问题,那么今天Himi与童鞋们共同交流分享下;一.  对......