k8s-pv-pvc】的更多相关文章

一般删除步骤为:先删pod再删pvc最后删pv 但是遇到pv始终处于“Terminating”状态,而且delete不掉.如下图: 解决方法: 直接删除k8s中的记录: 1 kubectl patch pv xxx -p '{"metadata":{"finalizers":null}}' 参考信息: This happens when persistent volume is protected. You should be able to cross verif…
1.PV和PVC的引入 Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足. 拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息: 当前 Volume 来自 AWS EBS. EBS Volume 已经提前创建,并且知道确切的 volume-id. Pod 通常是由应用的开发人员维护,而 Volume 则通常是由存储系统的管理员维护.开发人员要获得上面的信息: 要么询问管理员. 要么自己就是管理员. 这样就带来一个管理上的问题:应用开发人员和…
#Volume Volume 解决数据持久化和容器间共享数据 Kubernetes支持几十种类型的后端存储卷 #hostPath挂载实例,挂载Node节点/tmp/test-volume目录到容器/test-pd #volume-test.yaml apiVersion: v1 kind: Pod metadata: name: volume-test spec: containers: - image: alivv/nginx:node name: volume-test volumeMoun…
注意步骤: 一般删除步骤为:先删pod再删pvc最后删pv 但是遇到pv始终处于“Terminating”状态,而且delete不掉 pod一直删不掉 [root@hadoop01 nacos-k8s]# kubectl get pod NAME READY STATUS RESTARTS AGE busybox-deployment-8588b74c4b-4rc24 / Terminating 45h metrics-app-v1-5cdbf6d7f4-8pqxj / Running 24d…
更多k8s内容,请关注威信公众好:新猿技术生态圈 一.数据持久化 Pod是由容器组成的,而容器宕机或停止之后,数据就随之丢了,那么这也就意味着我们在做Kubernetes集群的时候就不得不考虑存储的问题,而存储卷就是为了Pod保存数据而生的.存储卷的类型有很多, # 一般有四种:emptyDir,hostPath,NFS以及云存储(ceph, glasterfs...)等. 1.emptyDir(不能用来做数据持久化) # emptyDir:是pod调度到节点上时创建的一个空目录,当pod被删除…
1.制作redis docker镜像 1.1 准备alpine基础镜像 # 下载 docker pull alpine:3.13 # 更改tag docker tag alpine:3.13 192.168.1.110/base/alpine:3.13 # 上传到本地harbor docker push 192.168.1.110/base/alpine:3.13 1.2 准备redis安装包及配置文件 下载redis安装包 wget http://download.redis.io/relea…
1.  pv  pvc 现在测试 glusterfs  nfs  可读可写, 多个pod绑定到同一个pvc上,可读可写. 2. storageclass  分成两种 (1)  建立pvc, 相当于多个pod绑定在一个pvc上. pvc的yaml kind: PersistentVolumeClaim apiVersion: v1 metadata: name: managed-nfs-storage-pvc annotations: volume.beta.kubernetes.io/stora…
1.制作jenkins docker镜像 1.1 下载jenkins wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.303.2/jenkins.war 1.2 准备JDK(版本>=1.8) jdk-8u192-linux-x64.tar.gz 1.3 编写Dockerfile 基础镜像使用的是centos7 FROM 192.168.1.110/base/centos:7 LABEL maintainer="y…
Kubernetes PV & pvc 介绍 PersistentVolume(pv)和PersistentVolumeClaim(pvc)是k8s提供的两种API资源,用于抽象存储细节.管理员关注于如何通过pv提供存储功能而无需 关注用户如何使用,同样的用户只需要挂载pvc到容器中而不需要关注存储卷采用何种技术实现. pvc和pv的关系与pod和node关系类似,前者消耗后者的资源.pvc可以向pv申请指定大小的存储资源并设置访问模式,这就可以通过Provision -> Claim 的方…
转载于https://www.cnblogs.com/ericnie/p/7733281.html   pv,pvc的概念不解释了,之前在registry中已经使用过PV和PVC,现在想把WebLogic Server中的日志给放到外部的存储中来,过程如下: 首先在需要放日志的目标节点上建立一个文件夹,比如/k8s/weblogic 在/etc/exports中加入一个nfs的mount点 [root@k8s-node-1 weblogic]# cat /etc/exports /k8s/tes…
6.1.介绍卷 6.1.1.卷的类型 emptyDir-用于存储临时数据的简单空目录 hostPath-用于将目录从工作节点的文件系统挂载到pod nfs-挂载到pod中的NFS共享卷. 还有其他的如gitRepo.gcepersistenDisk 6.2.通过卷在容器间共享数据 6.2.1.使用emptyDir卷 卷的生命周期与pod的生命周期项关联,所以当删除pod时,卷的内容就会丢失. 使用empty示例代码如下: apiVersion: v1 kind: Pod metadata: na…
Serverless Kubernetes概述: 阿里云Serverless Kubernetes容器服务最新开放香港.新加坡.悉尼区域,同时全面开放2.0架构,帮助用户更加便捷.轻松地步入“以应用为中心”的全新架构.通过Serverless Kubernetes,用户50秒内可从零启动500应用容器,而无需关心底层服务器资源. Serverless Kubernetes 2.0新架构 Serverless Kubernetes 2.0对后台架构进行了彻底升级,从之前的基于Namespace的多…
目录 数据持久化-储存卷 官方文档 存储卷类型 1.emptyDir 2.hostpath 3.pv/pvc(推荐使用) nfs官方文档 安装测试nfs pv/pvc管理nfs 官方文档 pv/pvc解释 1. PV 的访问模式(accessModes) 2. PV 的回收策略(persistentVolumeReclaimPolicy) 3. PV 的状态 4.创建pv 5.pvc插件 官方文档 pvc使用pv-创建pvc pv-pvc.yaml 使用nfs 数据持久化-储存卷 我们知道,Po…
要求:先了解数据docker容器中数据卷的挂载等知识 参考网址: https://www.cnblogs.com/sanduzxcvbnm/p/13176938.html https://www.cnblogs.com/sanduzxcvbnm/p/13371254.html 容器中的存储都是临时的,因此Pod重启的时候,内部的数据会发生丢失.实际应用中,我们有些应用是无状态,有些应用则需要保持状态数据,确保Pod重启之后能够读取到之前的状态数据,有些应用则作为集群提供服务.这三种服务归纳为无状…
目录 一.emptyDir 二.hostPath 三.PV & PVC 1.NFS PersistentVolume 2.创建 PVC 3.创建 Pod 进行挂载 为了持久化保存容器的数据,可以使用 Kubernetes Volume. Volume 的生命周期独立于容器,Pod 中的容器可能被销毁和重建,但 Volume 会被保留. 本质上,Kubernetes Volume 是一个目录,这一点与 Docker Volume 类似.当 Volume 被 mount 到 Pod,Pod 中的所有…
因为pod是有生命周期的,pod一重启,里面的数据就没了.所以我们需要数据持久化存储. 在k8s中,存储卷不属于容器,而是属于pod.也就是说同一个pod中的容器可以共享一个存储卷. 存储卷可以是宿主机上的目录,也可以是挂载在宿主机上的外部设备. 存储卷类型  emptyDIR存储卷 :pod一重启,存储卷也删除,这叫emptyDir存储卷.一般用于当做临时空间或缓存关系   hostPath存储卷 :宿主机上目录作为存储卷,这种也不是真正意义实现了数据持久性. SAN(iscsi)或NAS(n…
一般删除步骤为:先删除pod再删除pvc最后删除pv 遇到的问题 但是遇到pv使用处于"Terminating"状态,而且删不掉.如下图: 解决办法 直接删除k8s中的记录: kubectl patch pv xxx -p '{"metadata":{"finalizers":null}}' 参考信息: This happens when persistent volume is protected. You should be able to…
1.准备mysql和xtrabackup镜像 下载mysql官方镜像并上传到本地harbor docker pull mysql:5.7 docker tag m ysql:5.7 192.168.1.110/base/mysql:5.7 docker push 192.168.1.110/base/mysql:5.7 下载xtrabackup镜像并上传到本地harbor docker pull registry.cn-hangzhou.aliyuncs.com/hxpdocker/xtraba…
PVC和PV之间没有依靠ID.名称或者label匹配,而是靠容量和访问模式,PVC的容量和访问模式需要是某个PV的子集才能自动匹配上.注意:PVC和PV是一对一的,也即一个PV被一个PVC自动匹配后,不会再被其它PVC匹配了,即使PVC需求能够完全满足. PV访问模式 ReadWriteMany:多路读写,卷能被集群多个节点挂载并读写 ReadWriteOnce:单路读写,卷只能被单个集群节点挂载读写 ReadOnlyMany:多路只读,卷能被多个集群节点挂载且只能读     StorageCl…
这个文档描述当前在k8s中PersistentVolumes的使用. 我们建议和volume一起进行了解   Introduction     管理存储和管理计算是截然不同的问题. 持久存储子系统对用户和管理者提供了API, 通过这API, 你可以了解存储是如何提供的,是如何消耗的,为了达到这样的效果,我们将介绍两个新的API:PersistenVolume和PersistenVolumeClaim     一个 PersistenVolume(PV)是一块在集群中被管理员划定好的网络存储,它就…
在Kubernetes中,容器化一个应用比较麻烦的地方莫过于对其"状态"的管理,而最常见的"状态",莫过于存储状态. 在[Kubernetes]深入理解StatefulSet这篇文章中,稍微提了一下PV(Persistent Volume)和PVC(Persistent Volume Claim),这篇文章详细说一说. 大概了解 我先大体说一下整个过程,有一个小小的认识,然后我再详细展开说. 用户提交请求创建Pod时,Kubernetes发现这个Pod声明使用了PV…
一般删除步骤为:先删pod再删pvc最后删pv 但是遇到pv始终处于“Terminating”状态,而且delete不掉.如下图: 解决方法: 直接删除k8s中的记录: kubectl patch pv xxx -p '{"metadata":{"finalizers":null}}'…
一.概述 1.我们在pvc申请的时候未必就有现成的pv能正好符合这个pvc在申请中指定的条件,毕竟上一次的成功是我们有意设定了有一些满足有一些不满足的前提下我们成功创建了一个pvc并且被pod绑定所使用了.但是正常情况下刚好让二者之间符合或者在一众pv中正好有存在符合需要的这么一个pv未必在多种情况下都能满足.所以k8s的设计者也注意到了这些问题,因此他们为此有意设计了一种工作逻辑能够让pvc在申请pv时不针对某个pv进行或者是我们可以直接针对某个存储类(k8s之上的标准资源之一,叫Storag…
storageclass [root@localhost specs]# cat storageclass.yaml kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: efs-sc provisioner: efs.csi.aws.com PV [root@localhost specs]# cat pv.yaml apiVersion: v1 kind: PersistentVolume metadata: nam…
Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足. 拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息: 当前 Volume 来自 AWS EBS. EBS Volume 已经提前创建,并且知道确切的 volume-id. Pod 通常是由应用的开发人员维护,而 Volume 则通常是由存储系统的管理员维护.开发人员要获得上面的信息: 要么询问管理员. 要么自己就是管理员. 这样就带来一个管理上的问题:应用开发人员和系统管理员的职责耦合在一…
Volume 提供了非常好的数据持久化方案,不过在可管理性上还有不足. 拿前面 AWS EBS 的例子来说,要使用 Volume,Pod 必须事先知道如下信息: 当前 Volume 来自 AWS EBS. EBS Volume 已经提前创建,并且知道确切的 volume-id. Pod 通常是由应用的开发人员维护,而 Volume 则通常是由存储系统的管理员维护.开发人员要获得上面的信息: 要么询问管理员. 要么自己就是管理员. 这样就带来一个管理上的问题:应用开发人员和系统管理员的职责耦合在一…
ReadWriteOnce:可读可写,只能被一个Node节点挂载 ReadWriteMany:可读可写,可以被多个Node节点挂载 ReadOnlyMany:只读,能被多个Node节点挂载…
1.在NFS SERVER上为tomcat.nginx创建相关目录 NFS SERVER的部署配置参考:https://www.cnblogs.com/yanql/p/15410308.html 1.3.1 部署NFS server # tomcat mkdir /data/k8s-data/tomcat/webapps/apps1 -p echo 'tomcat index' > /data/k8s-data/tomcat/webapps/apps1/index.html # nginx mk…
1. 获取资料 网址: https://blog.csdn.net/xts_huangxin/article/details/51494472  感谢原作者 这里面 按照自己的机器情况进行了学习模仿 并且mark一下. 2. 下载yaml 文件: https://github.com/FlyingShit-XinHuang/my-doc/blob/master/k8s/pv%26pvc/nfs.zip 3. 解压缩文件,然后根据实际情况进行修改. 4. 创建NFS mkdir -p /nfs/k…
pvc:资源需要指定:1.accessMode:访问模型:对象列表:    ReadWriteOnce – the volume can be mounted as read-write by a single node:  RWO - ReadWriteOnce一人读写    ReadOnlyMany – the volume can be mounted read-only by many nodes:          ROX - ReadOnlyMany 多人只读    ReadWrit…