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

news/2024/9/20 13:57:04/文章来源:https://www.cnblogs.com/misakivv/p/18355141

目录
  • 一、背景
  • 二、安装local-path-provisioner
    • 1、地址
    • 2、更改 local-path-provisioner 使用的默认存储路径
    • 3、创建文件并提权
    • 4、创建 NameSpace
    • 5、应用 local-path-storage
    • 6、验证相关资源状态
  • 三、设置 local-path 为default SC
  • 四、使用 StorageClass 动态制备 PV
    • 1、创建PVC
    • 2、创建 Pod
    • 3、查看 PV
  • 五、卸载 local-path

一、背景

更改 PV 的回收策略

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

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

二、安装local-path-provisioner

1、地址

GitHub地址

git clone git@github.com: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-storagekubectl 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-pathaccessModes:- ReadWriteOnceresources: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-storagepersistentVolumeClaim:claimName: dynamic-pvc1containers:- name: task-pv-containerimage: nginx:latestports:- containerPort: 80name: "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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/781810.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CogVideoX环境搭建推理测试

​引子 智谱AI版Sora开源,首个可商用,18G显存即可运行。前文写了Open-Sora1.2的博文,感兴趣的童鞋请移步(Open-Sora1.2环境搭建&推理测试_open sora 1.2-CSDN博客)。对于这种占用资源少,且效果不错的多模态模型那么肯定不容错过。OK,我们开始吧。 一、模型介绍 CogV…

【Linux学习】Ubuntu配置

1、如何在Ubuntu18.04上面安装VMware-tools实现屏幕适配,以及文件拖拽、复制、粘贴功能 先设置以下:此处一定要设置路径保证客户机隔离选项两个勾选将主机桌面文件夹设置为共享 点击VMware顶部菜单,“虚拟机” > “安装VMware Tools”,桌面会出现光盘图标“VMware Tools…

使用 OpenSSH 登录远程服务器

打开开始菜单进入设置界面,搜索“可选功能”,点击“添加可选功能”,查找“OpenSSH” 找到这两个安装 安装成功后以管理员方式打开Windows PowerShell 输入命令 Start-Service sshd ssh user@example.com user 是远程服务器的用户名,example.com 是远程服务器的域名或 IP …

【算法学习】算法时间复杂度

时间复杂度的计算 时间复杂度简单计算(一层、两层、多层循环) 相当于轨迹追踪法:设执行次数为k,按照循环条件阿布算法课学习链接01 区别算法(Algorithm)和程序(Program)算法程序设计阶段 实施阶段相关领域知识 程序员任何语言、伪代码 编程语言独立于硬件/操作系统 与硬件/…

《数据资产管理核心技术与应用》读书笔记-第三章:数据血缘

数据资产管理核心技术与应用《数据资产管理核心技术与应用》是清华大学出版社出版的一本图书,全书共分10章,第1章主要让读者认识数据资产,了解数据资产相关的基础概念,以及数据资产的发展情况。第2~8章主要介绍大数据时代数据资产管理所涉及的核心技术,内容包括元数据的采…

【办公软件学习】如何交叉引用多个参考文献[x-x]

参考文献 第一步:点击交叉引用将[24]、[27]这两个文献插入。 第二步:右键刚插入的文献序号,然后点击切换域代码 第三步:在代码块中添加代码\#"[0"和\#"0]"第四步:右键刚编辑的代码块,并更新域。 第五步:在[4547]之间添加-,之后按"ctrl"+…

【办公软件学习】如何将Word格式转换为Markdown格式

一键!将 Word 转换为 Markdown 参考链接1:https://zhuanlan.zhihu.com/p/30891168 参考链接2:https://blog.csdn.net/qq15035899256/article/details/125547483 参考链接3:https://word2md.com/ 方法一:Writage + Pandoc — 双剑合璧!下载并安装 Writage,下载地址:http…

全连接层详解

全连接层详解 该博客仅是笔者对于全连接层的浅薄理解。如果存在问题,请务必告知我,谢谢。 前言 全连接层是常见的神经网络层,可以作为模型的分类器(可理解为将特征维度映射到类别维度上),也可以作为特征提取。不过,对于初学者,可以直接认为全连接层是模型的分类器。毕竟…

[Java/SQL] 自动去除SQL注释

0 引言 在数据连接(池)框架、数据服务/Data to API等中间平台中,因部分数据库不允许SQL中存在注释信息(如:Redis、Open Gemini等;当然,MYSQL、INFLUXDB等数据库是支持的),故存在这样一个需求:在提交到数据库的SQL,需对原始SQL的注释信息予以去除。以 OpenGemini V1.2.…

Java基础-学习笔记08

类变量、类方法、main方法、代码块01 类变量、类方法、main方法、代码块 类变量(静态变量) 类变量也叫静态变量/静态属性,是该类的所有对象共享的变量,任何一个该类对象去访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量。关于静态变…

ABC366D 题解

第一眼是想写 \(kd-tree\) 的。 然后发现这就是一道三维前缀和的板子题。 三维前缀和 要想学习三维前缀和,我们首先得了解前缀和的概念,并且学会一维、二维前缀和。 什么是前缀和 前缀和是容斥原理的典型应用。这种优化方式可以使求和操作的时间复杂度降低到 \(O(1)\)(但是需…

C# 如何防止WinForm程序多次运行

[C# 开发技巧]如何防止程序多次运行 - Learning hard - 博客园 (cnblogs.com) 一、引言 最近发现很多人在论坛中问到如何防止程序被多次运行的问题的,如: http://social.msdn.microsoft.com/Forums/zh-CN/6398fb10-ecc2-4c03-ab25-d03544f5fcc9, 所以这里就记录下来,希望给遇到…