首页 > 其他分享 >安装local-path-provisioner基于HostPath动态制备PV

安装local-path-provisioner基于HostPath动态制备PV

时间:2024-08-12 16:06:28浏览次数:12  
标签:kubectl PV storage HostPath provisioner path local

目录

一、背景

更改 PV 的回收策略

  • 示例的前提是动态配置PV

  • 在 Kubeadm 安装的 Kubernetes 集群环境中,动态供应 PersistentVolumes 需要先安装 Container Storage Interface (CSI) 驱动程序。

二、安装local-path-provisioner

1、地址

GitHub地址

git clone [email protected]:rancher/local-path-provisioner.git

image-20240812150230619

2、更改 local-path-provisioner 使用的默认存储路径

sed -i 's|/opt/local-path-provisioner|/mnt/data/local-path-provisioner|' /root/local-path-provisioner/deploy/local-path-storage.yaml

image-20240812151055433

3、创建文件并提权

mkdir -p /mnt/data/local-path-provisioner
chmod 777 /mnt/data/local-path-provisioner

image-20240812151302807

4、创建 NameSpace

kubectl create ns local-path-storage

image-20240812151706932

5、应用 local-path-storage

kubectl apply -f local-path-storage.yaml

image-20240812151824277

6、验证相关资源状态

kubectl get pods -n local-path-storage

kubectl get sc

image-20240812152324590

三、设置 local-path 为default SC

kubectl patch storageclass local-path -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'

kubectl patch storageclass local-path -p '{"metadata": {"annotations":{"storageclass.beta.kubernetes.io/is-default-class":"true"}}}'

image-20240812152611957

四、使用 StorageClass 动态制备 PV

1、创建PVC

更改 PV 的回收策略 示例中是三个,这里也创建三个,对应修改资源清单里的 metadata.name

cat << EOF | kubectl apply -f -
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: dynamic-pvc1
spec:
  storageClassName: local-path
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
EOF

2、创建 Pod

对应修改metadata.namespec.volumes.persistentVolumeClaim.claimName

同样的也是创建三个 Pod

cat << EOF | kubectl apply -f -
apiVersion: v1
kind: Pod
metadata:
  name: task-pv-pod1
spec:
  volumes:
    - name: task-pv-storage
      persistentVolumeClaim:
        claimName: dynamic-pvc1
  containers:
    - name: task-pv-container
      image: nginx:latest
      ports:
        - containerPort: 80
          name: "http-server"
      volumeMounts:
        - mountPath: "/usr/share/nginx/html"
          name: task-pv-storage
EOF

3、查看 PV

可以看到 pv 已经被正常动态创建起来了

kubectl get pv

image-20240812154630598

五、卸载 local-path

kubectl delete -f local-path-storage.yaml

image-20240812155343786

标签:kubectl,PV,storage,HostPath,provisioner,path,local
From: https://www.cnblogs.com/misakivv/p/18355141

相关文章

  • 3.4.IPv6-2
    icmpv61pathmtudiscovery(pmtud路径mtu发现协议)整个路径mut发现,当发现一段线路的mtu过小就会发送icmperror消息,说包过大让其进行分片,用来测试整个路径mtu最小值2ndr-replacearp(邻居发现协议替代arp)当a想访问b的时候,发现不知道目标的mac,就会发送一个组播icmptype=135的......
  • 3.3.Multicast-2_IPv6-1
    实验:r5:ipdefault-gateway35.1.1.3ipigmpjoin-group224.1.1.1r2:ipmulticast-routingints1ippimdense-modeints0ippimdense-moder1:ipmulticast-routingints0ippimdense-modeints1ippimdense-modeinte0ippimdense-moder6:ipmultica......
  • RouterOS设置IPV6并解决部分网页打开慢和无法打开问题
    目前ADSL各大运营商已完成IPv6的部署,很多网站和应用也开始部署IPv6,早先尝试过启用IPv6,但是出现部分网站打不开的情况,一直未找到原因,最近终于发现了问题所在,终于能正常使用IPv6了。WinBox下启用IPv6的步骤:1、启用IPv6软件包:System=>Packages,将ipv6设置为enable2、获取IP......
  • Java计算机毕业设计基于微信小程序的HPV疫苗预约与抢苗系统的设计与实现(开题+源码+论
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着健康意识的提升,人们对疾病预防的重视程度日益增强,尤其是针对女性健康的HPV(人乳头瘤病毒)疫苗,其作为预防宫颈癌等恶性肿瘤的有效手段,需求量急剧增......
  • 【Kubernetes】k8s集群存储卷(pvc存储卷)
    目录一.pvc存储卷1.PV2.PVC3.StorageClass4.PV和PVC的生命周期二.实战演练1.创建静态pv1.1.配置nfs1.2.创建pv1.3.创建pvc1.4.结合pod,将pv、pvc一起运行2.创建动态pv2.1.上传2.2.创建ServiceAccount,用来管理NFSProvisioner在k8s集群中运行的权限,设置nfs-......
  • 在K8S中,PV的生命周期状态有哪些?
    在Kubernetes中,PersistentVolume(PV)的生命周期状态有以下几种:Available(可用):表示该PV已经准备好被Pod使用。它可能处于空闲状态,或者已经被绑定到一个PVC上。Bound(已绑定):表示该PV已经被一个PVC绑定,并且正在被某个Pod使用。此时,PV上的存储空间已被分配给相应的PVC。Released(......
  • 在K8S中,什么是PV和PVC?
    在Kubernetes(K8S)中,PV(PersistentVolume)和PVC(PersistentVolumeClaim)是两个核心概念,用于实现数据的持久化存储。它们之间的关系是一种动态匹配和绑定关系,用于实现Pod与存储资源的解耦。以下是对PV和PVC的详细解释:1.PV(PersistentVolume)定义:PV是Kubernetes集群中的一块网络存储,它独......
  • ipv4与ipv6的联系与区别
    原文链接:https://www.cnblogs.com/dagegedegege/p/16724664.htmlhttps://www.cnblogs.com/qtqbky/p/16728967.html 联系:(1)IP协议是互联网最重要的通信协议之一,目前的IP协议具备IPv4和IPv6两个版本(2)随着互联网的进一步发展,全球IPv4地址已于2019年11月已全数耗尽。IPv6是由IEIF......
  • 视频笔记软件JumpVideo技术解析一:Electron案例-调用VLC播放器
              大家好,我是TheGodOfKing,是最强考研学习神器,免费视频笔记应用JumpVideo,可以快速添加截图时间戳,支持所有笔记软件,学习效率MAX!的开发者之一,分享技术的目的是想找到更多志同道合的人,如果有大学生加入,我们还允许他把项目作为毕设(只有一个名额哟)群(689978959),那么今......
  • DeepViT 论文与代码解析
    paper:DeepViT:TowardsDeeperVisionTransformerofficialimplementation:https://github.com/zhoudaquan/dvit_repo出发点尽管浅层ViTs在视觉任务中表现优异,但随着网络深度增加,性能提升变得困难。研究发现,这种性能饱和的主要原因是注意力崩溃问题,即在深层变压器中,attentio......