k8s按需创建 PV和创建与使用 PVC

在 Kubernetes 中,PersistentVolume(PV)和 PersistentVolumeClaim(PVC)用于管理存储资源。PV 是集群中的存储资源,而 PVC 是 Pod 请求 PV 的方式。按需创建 PV 通常使用 StorageClass 实现动态存储分配,PVC 通过声明请求所需的存储量与访问模式来绑定相应的 PV。以下是按需创建 PV 和使用 PVC 的具体步骤。

1. 按需创建 PV(使用 StorageClass)

StorageClass 用于定义动态存储分配的策略,允许 Kubernetes 自动创建 PV,而无需手动预先配置。

创建 StorageClass

首先定义一个 StorageClass 资源,指定存储类型和配置参数。

apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:name: standard
provisioner: kubernetes.io/aws-ebs  # 选择适合您的云提供商或存储类型
parameters:type: gp2
reclaimPolicy: Delete  # PV 被释放后会删除存储(也可设置为 Retain,保留数据)
volumeBindingMode: WaitForFirstConsumer

2. 创建 PVC 以请求 PV

PersistentVolumeClaim 是 Pod 请求存储资源的声明。配置 PVC 时指定需要的存储大小和访问模式,Kubernetes 会使用指定的 StorageClass 动态创建匹配的 PV 并绑定到该 PVC。

PVC 配置示例

以下示例中,PVC 请求 5Gi 的存储,并使用之前创建的 StorageClassstandard)。

apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: my-pvc
spec:accessModes:- ReadWriteOnce  # 设置访问模式,可选 ReadOnlyMany、ReadWriteMany 等storageClassName: standard  # 指定使用的 StorageClassresources:requests:storage: 5Gi

当这个 PVC 申请存储时,Kubernetes 会根据 StorageClass 配置动态创建一个 PV 并绑定到 PVC。

3. 在 Pod 中使用 PVC

在 Pod 配置中引用 PVC 以挂载存储卷,从而使应用可以使用持久存储。

apiVersion: v1
kind: Pod
metadata:name: my-pod
spec:containers:- name: my-containerimage: nginxvolumeMounts:- mountPath: "/usr/share/nginx/html"name: my-storagevolumes:- name: my-storagepersistentVolumeClaim:claimName: my-pvc

各字段解析

  • volumeMounts:指定容器内部的挂载路径,此路径对应于卷绑定的位置。
  • volumes:引用 PVC 以将持久卷挂载到容器中。

验证

  1. 创建 StorageClass、PVC 和 Pod:使用 kubectl apply -f 命令应用所有配置文件。
  2. 检查 PVC 状态:运行 kubectl get pvc my-pvc,查看 PVC 是否已绑定(Bound 状态)。
  3. 检查 Pod 挂载:运行 kubectl describe pod my-pod,确认卷已挂载到指定路径。

注意事项

  • reclaimPolicy:定义 PV 释放后的处理方式,Delete 表示删除存储资源,而 Retain 表示保留。
  • volumeBindingModeWaitForFirstConsumer 表示 PV 会在 Pod 请求时创建,适合多节点调度环境。

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

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

相关文章

Oracle视频基础1.4.5练习

1.4.5 看bbk的框架 ls env | grep ORA cd /u01/oradata ls ll cd bbk ll cd /u01/admin/ ll ll bbk cd cd db cd dbs ls vi initbbk.ora clear ls ll env | grep ORA执行创建数据库语句。 sqlplus /nolog conn /as sysdba create spfile from pfile ! ls ll exit startup nom…

Spring Boot 与 Vue 共筑高校网上订餐卓越平台

作者介绍:✌️大厂全栈码农|毕设实战开发,专注于大学生项目实战开发、讲解和毕业答疑辅导。 🍅获取源码联系方式请查看文末🍅 推荐订阅精彩专栏 👇🏻 避免错过下次更新 Springboot项目精选实战案例 更多项目…

【设计模式系列】建造者模式(十)

目录 一、什么是建造者模式 二、建造者模式的角色 三、建造者模式的典型应用 四、建造者模式在StringBuilder中的应用 五、典型建造者模式的案例 一、什么是建造者模式 建造者模式(Builder Pattern)是一种创建型设计模式,用于构建复杂对…

H7-TOOL的LUA小程序教程第17期:扩展驱动AD7606, ADS1256,MCP3421, 8路继电器和5路DS18B20(2024-11-01)

LUA脚本的好处是用户可以根据自己注册的一批API(当前TOOL已经提供了几百个函数供大家使用),实现各种小程序,不再限制Flash里面已经下载的程序,就跟手机安装APP差不多,所以在H7-TOOL里面被广泛使用&#xff…

P10 Pytorch入门实战——Pytorch实现车牌识别

一、前期准备 1. 设置device # import the necessary libraries import torch import torch.nn as nn import torchvision.transforms as transforms from torchvision import transforms, datasets import matplotlib.pyplot as plt import PIL,pathlib from PIL import Im…

基于SSM+小程序的宿舍管理系统(宿舍1)

👉文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1、项目介绍 本宿舍管理系统小程序有管理员和学生两个角色。 1、管理员功能有个人中心,公告信息管理,班级管理,学生管理,宿舍信息管理,宿舍…

基于 JavaWeb 的宠物商城系统(附源码,文档)

博主介绍:✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇…

.NET周刊【11月第1期 2024-11-03】

国内文章 .NET 9 AOT的突破 - 支持老旧Win7与XP环境 https://www.cnblogs.com/lsq6/p/18519287 .NET 9 引入了 AOT 支持,使得应用程序能够在编译时优化,以在老旧 Windows 系统上运行。这项技术通过静态编译,消除运行时的 JIT 编译&#xf…

iptables 规则备份和恢复

保存IPiptables规则 使用 service 命令: 在 CentOS 7 中,您可以使用 service 命令来保存当前的 iptables 规则: iptables save 这将把当前的 iptables 规则保存到 /etc/sysconfig/iptables 文件中。 使用 iptables-save 命令: 另一种方法是使用 iptab…

知乎信息流广告推广开户流程及攻略!

无论是品牌推广、产品营销还是获取精准流量,知乎信息流广告都能成为企业和营销者的有力武器。云衔科技作为专业的服务提供商,为企业提供知乎广告开户及代运营服务。 一、知乎信息流广告 知乎拥有海量的高质量用户,他们来自各行各业&#xf…

6-解决Ubuntu系统与Windows系统双系统时间不同步问题

引言 : 你是不是每次切换系统之后,系统时间就混乱了?想设置一致但又无从下手。看完这篇文章,你就全懂了!! 学习目标: 帮助开发者理解并解决 Ubuntu 与 Windows 双系统中时间不同步的问题。通…

【大数据学习 | kafka】kafka的偏移量管理

1. 偏移量的概念 消费者在消费数据的时候需要将消费的记录存储到一个位置,防止因为消费者程序宕机而引起断点消费数据丢失问题,下一次可以按照相应的位置从kafka中找寻数据,这个消费位置记录称之为偏移量offset。 kafka0.9以前版本将偏移量信…

基于梯度的快速准确头部运动补偿方法在锥束CT中的应用|文献速递-基于深度学习的病灶分割与数据超分辨率

Title 题目 A gradient-based approach to fast and accurate head motion compensation in cone-beam CT 基于梯度的快速准确头部运动补偿方法在锥束CT中的应用 01 文献速递介绍 锥束计算机断层扫描(CBCT)系统在灵活性方面比螺旋多排探测器计算机断…

语音识别ic赋能烤箱,离线对话操控,引领智能厨房新体验

一、智能烤箱产品的行业背景 随着科技的飞速发展,智能家居已经成为现代家庭的新宠。智能烤箱作为智能家居的重要组成部分,正逐渐从高端市场走向普通家庭。消费者对于烤箱的需求不再仅仅局限于基本的烘焙功能,而是更加注重其智能化、便捷化和…

qt QWizard详解

1、概述 QWizard是Qt框架中提供的一个功能强大的向导对话框类。它帮助用户逐步完成复杂的任务或流程,通过一系列页面组成的向导界面,实现了交互式和响应式的用户体验。QWizard可以应用于多种场景,如安装向导、配置向导、数据导入向导等&…

如何看待AI技术的应用场景:现状与未来的全面解析

人工智能(AI)正在以惊人的速度改变我们的世界。从医疗诊断到自动驾驶,从虚拟助手到金融分析,AI的应用场景正日益扩展,影响着几乎每个行业。然而,AI的广泛应用也引发了关于隐私、安全、伦理等多方面的讨论。…

ONLYOFFICE 8.2深度体验:高效协作与卓越性能的完美融合

📝个人主页🌹:Eternity._ 🌹🌹期待您的关注 🌹🌹 ❀ONLYOFFICE 8.2 🔍引言📒1. ONLYOFFICE 产品简介📚2. 功能与特点🍁协作编辑 PDF🍂…

使用SQLark如何将Oracle迁移到达梦数据库

​ 以上对话源于某位负责数据库适配的 ISV 工程师,他正在将数据从 Oracle 迁移到某国产数据库中。像这样的基础问题,每天在各个适配群、各个社区不断出现,比如: Oracle 迁移到 DM 后,数据有乱码,达梦如何设…

Unity3D学习FPS游戏(9)武器音效添加、创建敌人模型和血条

前言:虽然已经实现了基本玩家操作,但是游戏运行起来并没有音效。既然是FPS游戏有了玩家和武器,肯定还得有敌人。本篇演示如何给武器添加音效和创建敌人。 武器音效添加和创建敌人 武器音效添加Audio Source代码控制 创建敌人目标敌人模型敌人…

【算法】Floyd多源最短路径算法

目录 一、概念 二、思路 三、代码 一、概念 在前面的学习中,我们已经接触了Dijkstra、Bellman-Ford等单源最短路径算法。但首先我们要知道何为单源最短路径,何为多源最短路径 单源最短路径:从图中选取一点,求这个点到图中其他…