首页 > 其他分享 >K8S-卷

K8S-卷

时间:2023-06-12 15:35:51浏览次数:44  
标签:存储 PV PVC API 集群 管理员 K8S

一、持久卷(PresistenceVolumes)

1.介绍

PersistentVolume(PV)是集群中由管理员提供的一段存储。它是集群中的资源,就像节点是集群资源一样。PV 持久卷和普通的 Volume 一样, 也是使用卷插件来实现的,只是它们拥有独立于任何使用 PV 的 Pod 的生命周期。这个API对象捕获存储实现的细节,无论是NFS、iSCSI还是特定于云提供商的存储系统。

PersistentVolumeClaim (PVC)是用户对存储的请求。它类似于pod。pod消耗节点资源,而PVC消耗PV资源。pod可以请求特定级别的资源(CPU和内存)。Claim(声明)可以请求特定的大小和访问模式(例如,可以挂载一次读/写或多次只读)。

虽然PersistentVolumeClaim允许用户使用抽象存储资源,但是对于不同的问题,用户通常需要具有不同属性(比如性能)的持久卷。集群管理员需要能够提供不同于大小和访问模式的各种持久性卷,而不需要让用户了解这些卷是如何实现的。对于这些需求,有一个StorageClass资源。

PV是集群中的资源。PVC是对这些资源的请求,也充当对资源的索赔检查。

2.卷和申领的生命周期

制备
绑定
使用
保护使用中的存储对象
回收(Reclaiming)
PersistentVolume 删除保护 finalizer
预留 PersistentVolume
扩充 PVC 申领

制备:

提供PV有两种方式:静态方式和动态方式

静态: 集群管理员创建许多PV。它们携带了可供集群用户使用的真实存储的详细信息。它们存在于Kubernetes API中,可以使用
动态: 当管理员创建的静态PV都不匹配用户的PersistentVolumeClaim时,集群可能会尝试动态地为PVC提供一个专门的卷。此供应基于Storageclasses: PVC必须请求一个存储类,管理员必须创建并配置了该类,以便进行动态供应。声明请求类(class) "" 有效地禁用了自己的动态供应。
要启用基于存储类(storage class)的动态存储供应,集群管理员需要在API服务器上启用DefaultStorageClass准入控制器。例如,可以通过确保DefaultStorageClass位于API服务器组件
的--enable-admission-plugins选项的以逗号分隔的有序值列表中来实现。有关API服务器命令行标志的更多信息,请查看kube-apiserver文档。

绑定:

使用:

 

标签:存储,PV,PVC,API,集群,管理员,K8S
From: https://www.cnblogs.com/dxtx/p/17475124.html

相关文章

  • 【Kubernetes学习笔记】-使用Minikube快速部署K8S单机学习环境
    介绍minikube.sigs.k8s.io/docs/Minikube用于快速在本地搭建Kubernetes单节点集群环境,它对硬件资源没有太高的要求,方便开发人员学习试用,或者进行日常的开发。其支持大部分kubernetes的功能,列表如下DNSNodePortsConfigMapsandSecretsDashboardsContainerRuntime:Docker,and......
  • K8S-SidecarSet详解
    K8S-SidecarSetSidecarSet是Kubernetes的一个CRD(CustomResourceDefinition),扩展自DeploymentsAPIGroup,主要用于在Pod里注入一个或多个辅助容器(sidecarcontainer)。Sidecar容器是一种特殊的容器,它和主应用容器共享同一个网络、存储等资源,并在需要时协助主应用完成一些额外的......
  • k8s查看资源的api版本
    #方法1[root@test-masterdeployment]#kubectlexplaindeploymentKIND:DeploymentVERSION:apps/v1DESCRIPTION:DeploymentenablesdeclarativeupdatesforPodsandReplicaSets.FIELDS:apiVersion <string>APIVersiondefinesthever......
  • 5分钟打通办公网与K8S集群网络
    在K8S的使用中,我们经常有通过办公网访问K8S集群的诉求,虽然可以通过NodePort等方式访问K8S,但在访问多副本中间件等情况下NodePort就捉襟见肘了。今天我们给大家介绍一个快捷的网络打通方案,可通过域名来轻松访问K8S集群。首先跟大家介绍一个开源工具:telepresence,我们可以使用它为......
  • 24 k8s安全认证
    一、安全认证1、访问控制概述客户端进行认证和鉴权操作。客户端在Kubernetes集群中,客户端通常有两类:UserAccount:一般是独立于kubernetes之外的其他服务管理的用户账号。ServiceAccount:kubernetes管理的账号,用于为Pod中的服务进程在访问Kubernetes时提供身份标识。2、认证、授权......
  • k8s 1.26.5 Ingress-nginx 的高可用部署
    1.安装部署ingress-nginx本次部署使用了高可用的形式,会在每个node节点做亲和性(master不部署),让每一个pod都部署上去,然后加入NGINX去过负载,这样我们之后用NGINX的80端口访问域名就可以了。主机地址端口k8s-node01192.168.80.48nginx启动端口:3080,负载均衡端口:根据ingre......
  • K8S 证书详解(认证)
    K8S证书介绍在Kube-apiserver中提供了很多认证方式,其中最常用的就是TLS认证,当然也有BootstrapToken,BasicAuth认证等,只要有一个认证通过,那么Kube-apiserver即认为认证通过。下面就主要讲解TLS认证。如果你是使用kubeadm安装的Kubernetes,则会自动生成集群所需的证......
  • k8s 升级 cka
    题目:GivenanexistingKubernetesclusterrunningversion1.18.8upgradealloftheKubernetescontrolplaneandnodeComponentsonthemasternodeonlytoversion1.19.0.Youarealsoexpectedtoupgradekubeletandkubectlonthemasternode.Besuretod......
  • 基于k8s环境部署RabbitMQ集群
    一、前言本次案例是基于Statefulset部署RabbitMQ集群,同时基于StorageClass(存储类)来作为集群数据的持久化后端,因此在此之前已经部署好了NSF作为后端存储  1、创建服务命名空间Namespace#kubectlcreatensrabbitmq2、创建rbac权限ServiceAccount是kubernetesPod中的......
  • 【k8s】服务选配及部署
    服务选配及部署焱牛平台服务选配焱牛开放平台https://open.hand-china.com/home猪齿鱼代码仓库创建应用服务修改配置配置完成后推送至git仓库进行部署如果pod详情加载失败检查deployment的路径流程为:maven编译【pom】-doker加载【dockerF......