草庐IT

k8s 记录一次longhorn重启后容器pvc挂载不上的问题

目录k8s记录一次longhorn重启后容器pvc挂载不上的问题问题一解决步骤本次问题处理问题二k8s记录一次longhorn重启后容器pvc挂载不上的问题这里其实记录了两个问题longhorn通过fsck修复文件恢复服务fsck修复文件导致文件损坏恢复问题问题一起因及报错k8s上部署了longhorn,数据在三个节点上分别都有备份,重启服务器后发现一些statefulset的容器启动失败报错//有好几个statefulset的容器报错,下面是其中2个//nacos报错AttachVolume.Attachfailedforvolume"pvc-cc910a66-75b0-475a-84a7-

轻松掌握K8S目录持久卷PV/PVC的kubectl操作知识点04

1、介绍在docker中可以将容器中的目录挂载出来,在k8s中pod可以部署在不同节点,假如该节点的机器宕机了,k8s可能就会将此Pod转移到其他机器,就不是原先的机器了。k8s有自己的一套挂载方案,如下图所示,原理为将所有节点的挂载的目录统一抽象管理为叫做存储层的概念,使用技术如NFS网络文件系统,在每一个节点都会有如50G的存储空间,该空间之间的数据是同步的,这样就解决了某一节点宕机了,Pod转移到其他节点了依然可以获取到挂载的目录。1、搭建NFS网络文件系统所有机器安装yuminstall-ynfs-utilsnfs主节点,这里我们对应k8s的主节点(我配置两个主节点,选择了其中一个)创

k8s存储卷 PV和PVC

目录emptyDir存储卷hostPath存储卷nfs共享存储卷PVC和PV生命周期一个PV从创建到销毁的具体流程如下:静态pvc动态pvc3、定义PVC4、测试访问搭建StorageClass+NFS,实现NFS的动态PV创建1、在stor01节点上安装nfs,并配置nfs服务2、创建ServiceAccount,用来管理NFSProvisioner在k8s集群中运行的权限,设置nfs-client对PV,PVC,StorageClass等的规则3、使用Deployment来创建NFSProvisioner4、创建StorageClass,负责建立PVC并调用NFSprovisioner进行

【云原生-Kurbernetes篇】K8s的存储卷/数据卷+PV与PVC

这是一个目录标题一、Kurbernetes中的存储卷1.1为什么需要存储卷?1.2存储卷概述1.2.1简介1.2.2volume字段1.3常用的存储卷类型1.3.1emptyDir(临时存储卷)1.3.2hostPath(节点存储卷)1.3.3nfs1.3.4cephfs二、持久数据卷——PV和PVC2.1概念2.2PV的生命周期和状态2.3访问模式(AccessModes)和回收策略(ReclaimPolicy)三、静态创建PV3.1创建思路3.2创建实例:NFS使用PV和PVCStep1配置nfs存储Step2定义PVStep3定义PVCStep4访问测试四、动态创建PV4.1创建思路4.

【云原生】K8S存储卷:PV、PVC详解

目录一、emptyDir存储卷二、hostPath存储卷三、nfs共享存储卷四、PVC和PV4.1NFS使用PV和PVC4.2创建动态PV一、emptyDir存储卷容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。其次,在Pod中同时运行多个容器时,这些容器之间通常需要共享文件。Kubernetes中的Volume抽象就很好的解决了这些问题。Pod中的容器通过Pause容器共享Volume。当Pod被分配给节点时,首先创建emptyDir卷,并且只要

【Kubernetes存储篇】持久化存储PV、PVC详解

文章目录一、PV、PVC持久化存储理论1、PV、PVC是什么?2、PV的供应方式3、PV、PVC的回收策略二、案例:PV、PVC持久化存储案例演示1、搭建NFS服务端2、创建PV,并使用NFS共享存储3、创建PVC,并和PV绑定4、创建Pod,并挂载PVC卷5、删除PVC正确步骤一、PV、PVC持久化存储理论官方中文参考文档:1、PV、PVC是什么?PersistentVolume(PV)是群集中的一块存储,可以是NFS、iSCSI、本地存储等,由管理员配置或使用存储类动态配置。PV定义了存储的容量、访问模式、持久化存储的类型等属性。PV的生命周期是独立于Pod的,即使Pod被删除,PV仍然存

【攻坚克难】详解k8s持久化存储数据pv、pvc存储问题

问题如图:pod中的容器,创建一个包含文件的目录,重启pod或系统重启后,此目录及其文件都会丢失,如何保证其不会丢失?图1创建包含文件的目录方法分析:用pv、pvc为k8s持久化存储数据是最好的选择,可解决上述问题。流程:pv→pvc→pod把创建的目录挂载到pvc上步骤编辑vimpv.yml文件创建pv,代码如下:apiVersion:v1kind:PersistentVolumemetadata:name:uncordonlabels:type:localspec:storageClassName:manualcapacity:storage:2GiaccessModes:-ReadWri

大白话说明白K8S的PV / PVC / StorageClass

先来个一句话总结:PV、PVC是K8S用来做存储管理的资源对象,它们让存储资源的使用变得可控,从而保障系统的稳定性、可靠性。StorageClass则是为了减少人工的工作量而去自动化创建PV的组件。所有Pod使用存储只有一个原则:先规划 → 后申请 → 再使用。一、理论1、PV概念PV是对K8S存储资源的抽象,PV一般由运维人员创建和配置,供容器申请使用。没有PV之前,服务器的磁盘没有分区的概念,有了PV之后,相当于通过PV对服务器的磁盘进行分区。2、PVC概念PVC是Pod对存储资源的一个申请,主要包括存储空间申请、访问模式等。创建PV后,Pod就可以通过PVC向PV申请磁盘空间了。类似于某

k8s中的PVC为何需要延迟绑定?(WaitForFirstConsumer)

文章目录背景为什么需要延迟绑定延迟绑定的原理storgeageClassyaml配置背景有一个pod,使用的pvc叫pvc-1,我们希望它只运行在node-2上,在当前的集群中存在两台主机符合pod的pvc的要求,假如node-1上是pv-1,node-2上是pv-2,这两个完全一样.这时如果创建pod,pv控制器看到pv-1与pvc-1是匹配的,因此将它们绑定在一起,如果没有其它限制条件,在调度阶段pod将会被调度到node-1上,这显然与我们的期望不同,我们是希望它调度到node-2上,pv与pvc的绑定关系是发生在调度之前的,就会造成pv与pvc的绑定成功,但是pod的调度却不能成功的局

大白话说明白K8S的PV / PVC / StorageClass(理论+实践)

本文转载自微信公众号「不焦躁的程序员」,转载本文请联系AI源起公众号。先来个一句话总结:PV、PVC是K8S用来做存储管理的资源对象,它们让存储资源的使用变得可控,从而保障系统的稳定性、可靠性。StorageClass则是为了减少人工的工作量而去自动化创建PV的组件。所有Pod使用存储只有一个原则:先规划 → 后申请 → 再使用。一、理论1、PV概念PV是对K8S存储资源的抽象,PV一般由运维人员创建和配置,供容器申请使用。没有PV之前,服务器的磁盘没有分区的概念,有了PV之后,相当于通过PV对服务器的磁盘进行分区。2、PVC概念PVC是Pod对存储资源的一个申请,主要包括存储空间申请、访问模