K8S动态PV

pv和pvc存储卷

存储卷:

emptyDir容器内部,随着pod销毁,emptyDir也会消失,不能做数据持久化

hostPath:持久化存储数据,可以和节点上目录做挂载。pod被销毁了数据还在

NFS:一台机器,提供pod内容器所有的挂载点

pv和pvc:

pvc就是pod发起得挂载得请求

pv:持久化存储得目录,ReadWriteMany   ReadOnlyMany   ReadWriteOnce

NFS支持三种方式

hostPath只支持ReadWriteOnce

ISCSI不支持ReadWriteMany

pv的回收策略:Retain  默认 released需要人工设置,调整回Available

              Recycle  回收,自动调回Available

              Delete  删除

静态pv和pvc的用法:

运维负责pv:创建好持久化存储卷,声明好读写和挂载类型,以及可以提供的存储空间

开发负责pvc:要和开发沟通好你期望的读写和挂载类型以及存储空间

当我发布pvc之后,可以生成pv,还可以在共享服务器上直接生成挂载目录

pvc直接绑定和使用pv

动态pv需要两个组件:

1、卷插件Provisioner(存储分配器)

K8S本身支持的动态pv创建不包括NFS,需要声明和安装一个外部插件Provisioner(存储分配器)

Provisioner可以动态创建pv,然后根据pvc的请求自动绑定和使用

2、StorageClass

定义pv的属性,包括存储类型、大小、回收策略等等

NFS实现动态pv

NFS支持的方式NFS-client,先搞定Provisioner,来适配NFS-client

nfs-client-provisioner卷插件

serviceAccount:

NFS PRovisioner: 是一个插件,没有权限是无法再集群当中获取k8s的消息,插件要有权限能够监听apiserver,获取get,list获取集群的列表资源)create delete

rbac: Role-based ACCESS CONTROL

定义角色在集群当中可以使用的权限

角色 权限都已经创建完毕

部署插件:

NFs -privisioner。deplpyment来创建插件 pod

1.20之后有一个新的机制:selfLink

selfLink:API的资源对象之一,表示资源对象在集群当中自身的一个连接,selef-link是一个唯一标识符号,可以用于识别K8S集群当中每个资源的对象

self lonk的值是一个URL,指向该资源的对象的K8S  api的路径

更好的实现资源对象的查找和引用

feature-gates=RemoveSelfLink=false

feature-gates: 在不破坏现有规则以及功能基础上引入新功能或者修改现有功能的机制。

禁用不影响之前的规则。

部署nfs-provisioner的插件:

nfs的provisioner的客户端已pod的方式运行在集当中,监听k8s集联当中pv的请求。动态的创建于NFS服务器相关的pv

容器里使用的配置,在provisioner当中定义好环境变量,传给容器。storageClass的名称、NFS服务器的地址、NFS的目录

动态pv的默认策略是删除。delete

总结: 动态pv

provisioner插件------支持nfs 创建pv目录

stroageclass: 定义pv的属性动态

pv的默认策略是删除

动态策略没有回收

动态pv删除pvc之后的状态,released

1、创建账号,给卷插件能狗在集群内部通信,获取资源,监听事件,创建,删除,更新pv

2、创建卷插件pod,卷插件的pod创建pv

3、storageclass: 给pv赋予属性 (pvc被删除之后pv的状态,以及回收策略)

4、创建pvc-------完成

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

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

相关文章

芋道框架----(业务表单工作流)短信通知流程分析

芋道中给的请假流程示例,在发起流程的时候,可以看到它是由短信通知的,找了好久,想看看是什么时候触发的,之前一直以为是监听器,结果导致思维先入为主,陷入了怪圈,现做如下总结。 首先…

C //练习 5-15 增加选项-f,使得排序过程不考虑字母大小写之间的区别。例如,比较a和A时认为它们相等。

C程序设计语言 (第二版) 练习 5-15 练习 5-15 增加选项-f,使得排序过程不考虑字母大小写之间的区别。例如,比较a和A时认为它们相等。 注意:代码在win32控制台运行,在不同的IDE环境下,有部分可…

轻松批量重命名,一键随机并控制长度:让你的文件夹名充满无限可能

在数字时代,我们拥有海量的数据和文件,其中很多都存储在各种文件夹中。然而,随着时间的推移,文件夹名称可能变得不再相关或难以记忆。如何给这些文件夹一个全新的、充满创意的名字?今天,我们为你带来了这款…

20/100 删除链表的倒数第 N 个结点 21/100 有效的括号 22/100 合并两个有序列表

20/100 删除链表的倒数第 N 个结点 题目: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 题解: 方法1:第一次完整遍历一遍得到长度,第二次遍历到倒数第n个数据前一个,进…

vue3中组合式api的常用方法

vue3中组合式api的常用方法 记录一下vue3中常用的组合式api&#xff0c;包括计算属性computed、监听器watch及watchEffective 一、computed 作用&#xff1a;根据已有数据计算出新数据&#xff08;和Vue2中的computed作用一致&#xff09;。 <template><div class&…

Bom 和 Dom 区别 ----- 真是DOM 和 虚拟Dom区别

DOM和BOM的区别 我们都指代&#xff0c;javascript由三个部分组成&#xff1a; ECMAScript&#xff1a;描述了JS的语法和基本对象 BOM(浏览器对象)&#xff1a;与浏览器交互的方法和对象 DOM(文档对象模型)&#xff1a;处理网页内容的方法和接 ps&#xff1a;根据宿主&#x…

Nerf相关研究

1.Nerf相关研究 随着Luma AI的到来&#xff0c;再次将Nerf推向浪尖&#xff0c;实用性进一步得到强化。Nerf仍以极速的发展速度前行&#xff0c;越来越多的研究方向不断涌现。 4K-Nerf 4K-NeRF: High Fidelity Neural Radiance Fields at Ultra High Resolutions 论文&#…

JVM内存模型深度剖析与优化

欢迎大家关注我的微信公众号&#xff1a; 目录 JVM整体结构及内存模型 JVM内存参数设置 JVM整体结构及内存模型 首先附一段简单代码&#xff0c;我们从代码层面来讲解内存模型 public class Math {public static final int initData 666;public static User user new …

Qt中的线程池

Qt中的线程池 目录 1 为什么需要线程池 2 Qt中有哪些方式实现线程池 3 如何通过QThreadPool类实现线程池 4 如何通过QtConcurrent库实现线程池 5 如何通过自定义的方式实现线程池 5 小结 1 为什么需要线程池 线程池是多线程编程中常用的一种技术&#xff0c;可以帮助管理系统中…

性能测试分析案例-定位DNS解析很慢

环境准备 预先安装 docker 等工具&#xff0c;如 apt install docker.io。 操作和解析 执行下面的命令&#xff0c;拉取案例中使用的 Docker 镜像&#xff1a; docker pull feisky/dnsutils运行下面的命令&#xff0c;查看主机当前配置的 DNS 服务器&#xff1a; cat /etc…

你知道谁才是 “最懂程序员” 的搜索引擎?

大家好&#xff0c;我是奇兵&#xff0c;作为一名程序员&#xff0c;我们开发的过程中几乎每天都和搜索引擎打交道&#xff0c;利用它来搜文档、解决 Bug 等等。 而随着 AI 的发展&#xff0c;搜索引擎也变得越来越智能&#xff0c;市面上也涌现除了越来越多的 AI 搜索引擎。 …

【qt】sdk写pro写法,cv,onnx,cudnn

我的sdk在OpenCV003项目里&#xff1a; pro中添加 CONFIG(release, debug|release) {LIBS -L$$PWD/sdk/onnxruntime-x64-gpu/lib/ -lonnxruntimeLIBS -L$$PWD/sdk/onnxruntime-x64-gpu/lib/ -lonnxruntime_providers_cudaLIBS -L$$PWD/sdk/onnxruntime-x64-gpu/lib/ -lon…

GBASE南大通用GBaseCommandBuilder 类

自动生成单表命令&#xff0c;当使用 GBASE南大通用DataSet 对象的方法将变更的内容写回到对应数据库时&#xff0c;需使用GBASE南大通用 GBaseCommandBuilder 进行协调关联。无法继承此类。 对于该类所有成员的列表&#xff0c;参考 GBaseCommandBuilder 成员。 一、继承层次…

深入探索JavaScript中实用而高级的Rest参数和Spread语法

&#x1f9d1;‍&#x1f393; 个人主页&#xff1a;《爱蹦跶的大A阿》 &#x1f525;当前正在更新专栏&#xff1a;《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 函数是JavaScript这个语言的核心,而如何处理函数的参数是函数编程中非…

深度学习工具-Amazon SageMaker使用

Amazon SageMaker 深度学习程序可能需要很多计算资源&#xff0c;这很容易超出你的本地计算机所能提供的范围。云计算服务允许你使用功能更强大的计算机更轻松地运行本书的GPU密集型代码。 注册 首先&#xff0c;我们需要在注册一个帐户https://aws.amazon.com/。 为了增加安…

io.lettuce.core.RedisCommandExecutionException: NOAUTH Authentication required.

报错信息&#xff1a; 浏览器中的报错信息 IDEA中的报错信息 报错原因&#xff1a; SpringBoot整合Redis使用的默认配置&#xff0c;但是我们设置了Redis的密码&#xff0c;而默认配置中密码是为空的&#xff0c;导致不能够连接 浏览器中的报错信息 There was an unexpected …

ChatGLM2-6B 大语言模型本地搭建

ChatGLM模型介绍&#xff1a; ChatGLM2-6B 是清华 NLP 团队于不久前发布的中英双语对话模型&#xff0c;它具备了强大的问答和对话功能。拥有最大32K上下文&#xff0c;并且在授权后可免费商用&#xff01; ChatGLM2-6B的6B代表了训练参数量为60亿&#xff0c;同时运用了模型…

[解决思路]关于h264裸流合成mp4时时间戳添加问题

问题场景&#xff1a; 使用GPU编码(Opencv)生成的h264视频片段中不包含时间戳信息&#xff0c;且含有B帧&#xff0c;直接合成mp4后会导致播放出现问题(瞬间播放完成)。因此&#xff0c;在合成时需要手动添加时间戳。 心路历程&#xff1a; 发现生成的视频会瞬间播放完成后&am…

Mac/Linux虚拟机CrossOver2024新版下载使用教程

CrossOver不像Parallels或VMware的模拟器&#xff0c;而是实实在在Mac OS X系统上运行的一个软件&#xff0c;该软件可以让用户在mac是上直接运行windows软件&#xff0c;本文为大家带来的是CrossOver Mac版安装教程&#xff01; CrossOver Mac-安装包下载如下&#xff1a;http…

zookerper入门

zookerper介绍 ZooKeeper 是一个开源的分布式协调框架,主要用来解决分布式集群中应用系统的一致性问题. ZooKeeper本质上是一个分布式的小文件存储系统&#xff08;Zookeeper文件系统监听机制&#xff09;.提供基于类似于文件系统的目录树方式的数据存储&#xff0c;并且可以…