网站建设好与管理在哪就业公司官网制作开发

pingmian/2026/1/22 19:07:34/文章来源:
网站建设好与管理在哪就业,公司官网制作开发,局网站建设管理整改情况,教育类网站前置审批文章目录 1 为什么需要卷(Volume)2 卷的挂载2.1 k8s集群中可以直接使用2.2 需要额外的存储组件2.3 公有云 2 PV(Persistent Volume)3 SC(Storage Class) 和 PVC(Persistent Volume Claim)4 总结 1 为什么需要卷(Volume) Pod是由一个或者多个容器组成的#xff0c;在启动Pod中… 文章目录 1 为什么需要卷(Volume)2 卷的挂载2.1 k8s集群中可以直接使用2.2 需要额外的存储组件2.3 公有云 2 PV(Persistent Volume)3 SC(Storage Class) 和 PVC(Persistent Volume Claim)4 总结 1 为什么需要卷(Volume) Pod是由一个或者多个容器组成的在启动Pod中的容器之前会先创建一个pause容器再将其他容器加入到pause容器的网络命名空间因此多个容器的网络是共享的pause容器就像是一个宿主机多个容器就像是宿主机上面的多个进程既然多个容器共享网络命名空间那么多个容器肯定就不能监听同一个端口。多个容器由于都有自己的文件系统因此多个容器的文件系统肯定是相互隔离的如果多个容器之间需要共享数据呢Pod在重建时Pod中的所有容器都会基于镜像重建那么原来的Pod中的容器中的数据都会丢失但是很多场景下都需要对数据进行持久化保存例如mysql的Pod在重建时可不希望保存的数据没有了。 为了解决以上两个问题k8s提供了数据卷的机制可以将同一个数据卷挂载到Pod的多个容器实现多个容器的数据共享也可以将数据卷对接外部的存储实现数据的持久化使得Pod重建或者被删除后数据不丢失。 2 卷的挂载 一个Pod可以在pod.spec.volumes中声明使用命令kubectl explain pod.spec.volumes可以发现里面各种类型的卷看这些卷的类型会发现有些卷是可以直接在k8s集群中使用的有些是需要安装额外组件的还有一些是对接共有云的因此每种类型的卷中的参数是不一样的。 2.1 k8s集群中可以直接使用 卷的类型特点特性状态configMap对接ConfigMap可以将ConfigMap中的多个KV挂载为容器中的多个文件downwardAPI对接DownwardAPI可以将集群的信息挂载为容器中的文件emptyDir用于多个容器之间的数据共享相当于将一个空目录分别挂载到Pod的多个容器它的生命周期与Pod相同只要Pod在运行卷就不会被删除gitRepo从git上clone仓库代码然后挂载到容器已废弃建议在initContainer中在emptyDir下载代码hostPath将宿主机的路径挂载到容器中这种方式有安全风险通常不建议使用persistentVolumeClaim用于将PV挂载到容器中projected投射卷可以将多个卷同时挂载到容器中的一个目录源卷只能是secret、downwardAPI、configMap、serviceAccountTokensercet将Secret挂载为容器中的文件 2.2 需要额外的存储组件 卷的类型特点特性状态cephfs对接CephFS1.28版本中废弃建议使用Ceph CSI第三方存储驱动cinder对接Openstack Cinder1.11版本中废弃1.26版本中移除1.27版本开始可以使用Openstack Cinder第三方驱动程序fc对接FiberChannelglusterfs对接GlusterFS1.25版本中废弃1.26版本中移除iscsi对接iSCSInfs对接NFSportworxVolume对接Portworx1.25版本中废弃rdb对接CephFS的rdb1.28版本中废弃 2.3 公有云 卷的类型特点特性状态awsElasticBlockStore对接AWS EBS1.19版本中废弃1.28版本中移除1.28版本开始可以使用AWS EBS第三方存储驱动azureDisk对接Azure Disk1.19版本中废弃1.28版本中移除1.28版本开始可以使用Azure Disk第三方存储驱动azureFile对接Azure File1.21版本中废弃1.26版本开始可以使用Azure File第三方存储驱动gcePersistentDisk对接GCE PersistentDisk1.17版本中废弃vsphereVolume对接VMWare vsphere VMDK1.28版本可以使用vSphere CSI第三方存储驱动 当在pod.spec.volumes配置使用的卷后就可以在pod.spec.containers.volumeMounts将卷挂载到容器中以下以configMap类型的卷为例将app-config这个ConfigMap挂载到nginx容器的/opt目录 apiVersion: v1 kind: Pod metadata:name: test spec:containers:- name: nginximage: nginxvolumeMounts:- name: my-configmountPath: /opt/volumes:- name: my-config configMap:name: app-config2 PV(Persistent Volume) 将pod.spec.volumes中配置的卷挂载到容器中这时候volume是附属于Pod的volume和Pod就构成了一种静态绑定关系这对于hostPath、configMap、secret等类型的volume来说是可以的因为hostPath是对本地目录的挂载configMap和secret是对ConfigMap和Secret的挂载这时候ConfigMap/Secret和Pod是同一个人创建的。 当开发人员用这种方式将NFS挂载到容器中 apiVersion: v1 kind: Pod metadata:name: test-pd spec:containers:- image: registry.k8s.io/test-webservername: test-containervolumeMounts:- mountPath: /my-nfs-dataname: test-volumevolumes:- name: test-volumenfs:server: my-nfs-server.example.compath: /my-nfs-volumereadOnly: true此处将my-nfs-server.example.com的/my-nfs-volume目录挂载到test-container容器的/my-nfs-data路径这里的问题是当运维部门的同事部署完NFS后难道还需要将NFS的域名/IP和路径告诉开发人员但是开发人员实际上并不关心这些那有没有一种方式可以让开发人员只是使用NFS而不需要关心NFS的具体配置这就需要使用到PV持久卷。 apiVersion: v1 kind: PersistentVolume metadata:name: my-nfs spec:capacity:storage: 5GiaccessModes:- ReadWriteOncenfs:path: /tmpserver: 172.17.0.2上述yaml会创建一个my-nfs的PV需要注意的是PV是集群级别的资源。这里用的pv.spec.nfs字段跟pod.spec.volumes.nfs相同只是多了外层的capacity和accessModes它们分别表示PV的容量和访问模式。当运维人员部署完成NFS文件系统就可以直接创建好PV然后开发人员就可以直接引用该PV。 这样虽然可以解决volume创建和volume使用的问题如果集群中只有少量的PV时是没有问题的运维人员是可以手动创建的。如果PV的数量很多呢当运维人员创建了很多PV后开发人员难道需要自己从中挑选PV使用吗那管理的复杂度会非常大因此k8s提供了SC和PVC。 3 SC(Storage Class) 和 PVC(Persistent Volume Claim) 独立的PV资源分离了卷的创建和使用而PVC资源则进一步将卷的使用分为卷的申请和绑定当用户创建一个PVC表明要申请一个持久卷控制器就会去找到合适的PV然后将PVC的pvc.spec.volumeName设置为PV的名称同时将PVC的信息写入PV的pv.spec.claimRef将PV和PVC进行双向关联这成为动态绑定。 那什么才是合适的PV呢或者说PV满足哪些条件才能被某个PVC进行绑定呢 容量在PVC中是request表明需要多大容量的PV在PV中是capacity表明当前PV的容量访问模式accessModes不同的存储系统有不同的访问特点有的卷可以被多个Pod同时读写有的只能以只读方式挂载存储类storageClassName创建PV的存储类型 当根据PVC去查找PV时就会根据上述三个条件去找到对应的PV完成绑定操作。PVC使得用户选择不用自己去选择PV而是让控制器帮我们选择合适的PV。 还剩下最后一个问题PV应该是谁创建的肯定有一个类似控制器的组件负责创建PV该控制器能够接收创建PV的请求根据请求中的参数创建对应规格的持久卷。 k8s可以对接许多不同的外部存储系统为了区分这些存储系统k8s提供了StorageClass资源每个StorageClass代表一个存储系统为了支持这个存储系统在k8s中还会有一个provisoner的组件它通过CSI接口与外部存储系统进行通信负责PV的管理。 下面数理下整体的工作流程 用户创建PVC说明要申请一个PV此时的PVC的状态是Pendingprovisioner监听到PVC的创建时会根据PVC的参数调用CSI接口创建PV此时PV的状态是Available表明未被绑定控制器监听到PV的创建并发现未被绑定的PVC就会将二者进行绑定将PV挂载到容器中使用 下面的PVC申请2G大小的nfs存储卷 apiVersion: v1 kind: PersistentVolumeClaim metadata:name: my-pvc spec:accessModes:- ReadWriteOnceresources:requests:storage: 2GistorageClassName: nfs而在SC中 apiVersion: storage.k8s.io/v1 kind: StorageClass metadata:name: nfsannotations:storageclass.kubernetes.io/is-default-class: true ## 是否设置为默认的storageclass provisioner: nfs.csi.k8s.io parameters:archiveOnDelete: true ## 设置为false时删除PVC不会保留数据,true则保留数据 mountOptions: - hard ## 指定为硬挂载方式- nfsvers4 上面的PVC指定storageClassName为nfs表明要向nfs申请卷下面的SC由于有is-default-class的annotations它就是默认的SC当PVC未指定storageClassName时就会向nfs申请卷。SC中有个参数是provisioner是provisioner的标识字符串通常是csidriver驱动程序的名称可以通过kubectl get csidrivers命令查询。 4 总结 本文介绍了k8s中的PV、PVC、SC等资源以及它们的出现分别解决了什么问题并对资源的yaml文件的一些字段进行了解释。

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

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

相关文章

做网站流程 优帮云仿照别人的网站做违法吗

CSS 顺时针旋转 90 再 3D 中绕 Y 轴旋转 180 的示例代码如下: div {transform: rotate(90deg) perspective(500px) rotateY(180deg); }在这个示例中,元素被先进行了 2D 顺时针旋转 90,然后设置了 perspective 属性来定义元素的视角距离&…

网站免费网站免费上海人力资源招聘官网

Linux实验报告-源代码编译安装Apache(Tarball文件安装)实验背景:通常GNU组织提供的程序包都是源代码格式,即将软件的所有源码文件先以tar打包,然后再使用gizp或是bzip2压缩,生成一个.tar.gz或是.tar.bz2结尾的软件包,也…

长沙教育网站建设wordpress tinection

题目链接 参考文章 解题思路 如果从整棵树的角度来看,用层序遍历翻转一棵二叉树需要遍历同一层节点后再反向遍历该层节点并且改变指针,但是这样做不仅低效率还会访问到野指针。因此必须换一个角度考虑问题:如果将每一个父节点的左右孩子交换…

现在外贸做那个网站好网站建设与运营财务报表

最近有偶然的机会学习了一次QPSK防止以后忘记又得找资料,这里就详细的记录一下 基于 QPSK 的通信系统如图 1 所示,QPSK 调制是目前最常用的一种卫星数字和数 字集群信号调制方式,它具有较高的频谱利用率、较强的抗干扰性、在电路上实现也较为…

爱心建站网砍价小程序怎么制作

作者:黄小斜文章来源:【程序员江湖】游戏在今天的普及度已经不是端游时代可以比肩的了。如今人手一台手机、平板就可以吃鸡、打农药,不仅是男生,也有很多女生加入了游戏圈。相信现在在看文章的你也玩游戏,虽然爱玩的程…

wordpress站外链接页面手机app软件开发语言

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 我的情况 : 项目一直只有我一个开发者,却莫名的出来了一个完全不认识的开发者,我新建后 push 的…

深圳住房和建设局网站官网wordpress主机分类信息网站

鉴于gRPC已进入稳定版分支,并对应用于生产中准备就绪,Google发布了gRPC 1.0。 gRPC源于被称为Stubby的Google内部项目,早期是用于一些Google内部服务间的通信。18个月前Google开源了gRPC框架,希望借此gRPC能被更广泛地采纳&#x…

建设网站的模板下载学科建设的网站

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:SSR解决了什么问题&…

网站建设服务费怎么写分录建设工程类型分为几类

在信息爆炸的时代,我们每天都会接触到大量的文件,从文档、图片到视频、音频等,各种类型、各种格式的文件充斥着我们的电脑和移动设备。如何有效地管理和组织这些文件,成为了我们不得不面对的问题。今天,我们为您带来了…

网站建设 网页开发如何使用电子商务网站

ECMAScript 有两种开发模式:1.函数式(过程化),2.面向对象(OOP)。面向对象的语言有一个标志,那就是类的概念,而通过类可以创建任意多个具有相同属性和方法的对象。但是,ECMAScript 没有类的概念,因此它的对象…

制作企业网站素材视频珠海房地产网站建设

大家好,我是若川。持续组织了6个月源码共读活动,感兴趣的可以点此加我微信 ruochuan12 参与,每周大家一起学习200行左右的源码,共同进步。同时极力推荐订阅我写的《学习源码整体架构系列》 包含20余篇源码文章。历史面试系列这本新…

网站制作广在网站中搜索关键字

实验19:中介者模式 本次实验属于模仿型实验,通过本次实验学生将掌握以下内容: 1、理解中介者模式的动机,掌握该模式的结构; 2、能够利用中介者模式解决实际问题。 [实验任务]:虚拟聊天室 在“虚拟聊天…

佛山提供网站设计方案公司seo关键词推广

循环展开(loop unrolling)是一种编译器优化技术,它通过减少循环的迭代次数,来提高程序的执行速度。循环展开的原理是,将循环体中的语句复制多份,每次迭代执行更多的语句,从而减少循环控制语句&a…

Wordpress 自用主题 免费 分享湛江seo代理商

时间:2024.01 目录1、安装启动 oracle19c 容器 2、rpm包安装clickhouse 3、datax安装 4、datax同步 目标库根据要同步的表,按照clickhouse建表规范建表 编写json文件 编写增量同步shell脚本,加入 crond 定时任务 1、安装启动 oracle19c 容器…

网站建设蘑菇街广州黄埔做网站的公司哪家好

装上PHP5后你会发现这样的问题:你也许会发现,输出的时间和你现在的时间是不相同的。原因是假如你不在程序或配置文件中设置你的服务器当地时区的话,PHP所取的时间是格林威治标准时间,所以和你当地的时间会有出入。格林威治标准时间…

网站怎么做qq的授权登陆网站设计技术入股

前言: FFMPEG的功能强大是毋庸置疑的,那么录屏的需求大家在某些时候大家可能是非常需要的,例如,现有的项目需要演示,因此录制一段演示视频;亦或者做内容分发直播的,比如游戏主播,需…

伊利集团网站建设实训无锡企业建站

文章目录 离线部署 python 3.x 版本1. 下载版本2. 上传到服务器3. 解压并安装4. 新建软连信息5. 注意事项 离线部署 python 3.x 版本 1. 下载版本 python 各版本下载地址 本次使用版本 Python-3.7.0a2.tgz # linux 可使用 wget 下载之后上传到所需服务器 wget https://www.py…

秦皇岛市教育考试院网站dede网站模版

这次给大家带来ESlint操作步骤详解,ESlint操作的注意事项有哪些,下面就是实战案例,一起来看一下。vue-cli脚手架创建的项目默认使用ESlint规则,启动项目的时候因为各种语法报错,不得不先停下了解一下什么是ESlint&…

秦皇岛网站制作专家新手如何给自己的网站做优化

[html] 说说页面中字体渲染规则是怎样的?会有哪些因素影响字体的渲染? 字体渲染: 1.解码,根据web服务器返回的(或者本地网页本身的)content-type charset等信息确定编码,将网页解码成Unicode字…

东营可以做网站的公司在哪网站后台表格

目录 一,跟正宗的bash见个面 二,实现一个山寨的bash 1.提示符 2.输入命令与回显命令 3.解析命令 4.执行命令 5.执行逻辑 三,全部代码 一,跟正宗的bash见个面 在这篇文章中,我会写一个myshell小程序。这个小程序…