【k8s】pvc 配置的兩種方式volumeClaimTemplates 和 PersistentVolumeClaim

pvc配置實例? ?

實例1

在Deployment中配置 template:xxxxxxvolumeClaimTemplates:- metadata:name: dataspec:accessModes:- ReadWriteOnceresources:requests:storage: 1GistorageClassName: nfsdev-storageclass (創建好的storageClassName)

實例2

#先創建一個pvc 然后在 Deployment中引用
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: nacosserver-pvcnamespace: xxxdev
spec:storageClassName: course-nfs64storageaccessModes:- ReadWriteOnceresources:requests:storage: 1Gi##################################################containers........#創建了卷pvcdata,然后掛載到容器中的某個目錄volumeMounts:- name: pvcdatamountPath: /home/nacos/plugins/peer-findersubPath: peer-finder- name: pvcdatamountPath: /home/nacos/datasubPath: data- name: pvcdatamountPath: /home/nacos/logssubPath: logs# 修復點 2: volumes 定義在 Pod 級別(與 containers 同級)volumes:- name: pvcdatapersistentVolumeClaim:claimName: nacosserver-pvc

兩種pvc使用的不同

? ? ?這兩個配置涉及 Kubernetes 中兩種不同的 PVC(PersistentVolumeClaim)使用方式,主要區別在于創建方式使用場景


1.?volumeClaimTemplates?(動態模板方式)

volumeClaimTemplates:       # 用于 StatefulSet 的動態 PVC 模板- metadata:name: data           # 生成的 PVC 名稱前綴(如 data-0, data-1)spec:accessModes: [ "ReadWriteMany" ]  # 多節點讀寫storageClassName: "course-nfs64storag"  # 存儲類名稱(注意拼寫)resources:requests:storage: 20Gi    # 請求 20GB 存儲
? 特點:
  • 動態創建 PVC
    當?StatefulSet?被部署時,Kubernetes 會自動為每個 Pod 副本生成獨立的 PVC(如?data-<pod-name>-0,?data-<pod-name>-1)。

  • 綁定 StatefulSet 生命周期
    刪除 StatefulSet 時,關聯的 PVC 默認不會被刪除(需手動清理)。

  • 適用場景
    有狀態應用(如 MySQL、Redis 集群),每個 Pod 需要獨立的持久化存儲。


2.?獨立 PVC + 手動引用方式

# 先創建獨立的 PVC 資源
apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: nacosserver-pvc      # 固定名稱的 PVCnamespace: xxxdev     # 指定命名空間
spec:storageClassName: course-nfs64storage  # 存儲類名稱accessModes:- ReadWriteOnce         # 單節點讀寫resources:requests:storage: 1Gi          # 請求 1GB 存儲
---
# 在 Pod/Deployment 中引用已存在的 PVC
volumes:- name: pvcdatapersistentVolumeClaim:claimName: nacosserver-pvc  # 直接引用 PVC 名稱
? 特點:
  • 靜態創建 PVC
    手動提前創建?PVC 資源(通過?kubectl apply)。

  • 跨 Pod 共享存儲
    多個 Pod 可通過?claimName?引用同一個 PVC(需訪問模式支持,如?ReadWriteMany)。

  • 獨立生命周期
    PVC 與 Pod 解耦,刪除 Pod 不會刪除 PVC。

  • 適用場景
    通用存儲需求(如單實例應用、共享存儲目錄)。


🔍 關鍵區別總結:

特性volumeClaimTemplates?(StatefulSet)獨立 PVC +?claimName
PVC 創建方式動態生成(按 Pod 副本數自動創建)手動預先創建
PVC 命名規則自動生成(如?data-0,?data-1固定名稱(如?nacosserver-pvc
存儲隔離性每個 Pod 有獨立 PVC多個 Pod 可共享同一 PVC
訪問模式示例中為?ReadWriteMany(多節點讀寫)示例中為?ReadWriteOnce(單節點讀寫)
適用控制器專用于?StatefulSet適用于?Pod/Deployment/StatefulSet
生命周期管理隨 StatefulSet 創建/刪除(PVC 需手動刪)獨立管理

? 注意事項:

  1. 訪問模式沖突
    示例中?volumeClaimTemplates?使用?ReadWriteMany,而獨立 PVC 使用?ReadWriteOnce
    若多個 Pod 同時掛載獨立 PVC,必須使用?ReadWriteMany,否則會出現掛載錯誤

  2. 存儲類名稱拼寫
    volumeClaimTemplates?中為?course-nfs64storag(少字母?e),獨立 PVC 中為?course-nfs64storage
    需確保名稱一致,否則可能因存儲類不存在導致 PVC 掛起。

  3. 存儲大小差異
    動態模板申請 20Gi,獨立 PVC 申請 1Gi,根據實際需求調整。


💡 選擇建議:

  • 需要?為每個 Pod 提供獨立存儲(如數據庫集群)→?volumeClaimTemplates?+ StatefulSet

  • 需要?共享存儲卷(如配置文件目錄)→?獨立 PVC +?claimName
    (確保存儲類支持?ReadWriteMany,如 NFS)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/93186.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/93186.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/93186.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Logistic Loss Function|邏輯回歸代價函數

----------------------------------------------------------------------------------------------- 這是我在我的網站中截取的文章&#xff0c;有更多的文章歡迎來訪問我自己的博客網站rn.berlinlian.cn&#xff0c;這里還有很多有關計算機的知識&#xff0c;歡迎進行留言或…

計算機網絡技術-知識篇(Day.1)

一、網絡概述 1、網絡的概念 兩個不在同一地理位置的主機&#xff0c;通過傳輸介質和通信協議&#xff0c;實現通信和資源共享。 2、網絡發展史 第一階段&#xff08;20世紀60年代&#xff09; 標志性事件&#xff1a;ARPANET的誕生關鍵技術&#xff1a;分組交換技術 第二…

工業元宇宙:邁向星辰大海的“玄奘之路”

一、從認知革命到工業革命&#xff1a;文明躍遷的底層邏輯1.1 認知革命&#xff1a;人類協作的基石時間線&#xff1a;約7萬年前&#xff0c;智人通過語言和想象力構建共同虛擬現實&#xff0c;形成部落協作模式。核心突破&#xff1a;虛構能力&#xff1a;創造神、國家、法律等…

9. React組件生命周期

2. React組件生命周期 2.1. 認識生命周期 2.1.1. 很多事物都有從創建到銷毀的整個過程&#xff0c;這個過程稱之為生命周期&#xff1b;2.1.2. React組件也有自己的生命周期&#xff0c;了解生命周期可以讓我們在最合適的地方完成想要的功能2.1.3. 生命周期和生命周期函數的關系…

【單板硬件開發】關于復位電路的理解

閱讀紫光同創供應商提供的FPGA單板硬件開發手冊&#xff0c;發現復位電路他們家解釋的很通俗易懂&#xff0c;所以分享一下。如下圖&#xff0c;RST_N 是低有效的異步全芯片復位信號&#xff0c;一般外部連接電路有 3 種形式如圖 3–2&#xff0c;可根據實際需要選擇合適的電路…

《Unity Shader入門精要》學習筆記一

1、本書的源代碼 https://github.com/candycat1992/Unity_Shaders_Book 2、第1章 Shader是面向GPU的工作方式 3、第2章 渲染流水線 Shader&#xff1a;著色器 渲染流水線&#xff1a;目標是渲染一張二維紋理&#xff0c;輸入是一個虛擬攝像機、一些光源、一些Shader以及紋…

從零到一:TCP 回聲服務器與客戶端的完整實現與原理詳解

目錄 一、TCP 通信的核心邏輯 二、TCP 服務器編程步驟 步驟 1&#xff1a;創建監聽 Socket 步驟 2&#xff1a;綁定地址與端口&#xff08;bind&#xff09; 步驟 3&#xff1a;設置監聽狀態&#xff08;listen&#xff09; 步驟 4&#xff1a;接收客戶端連接&#xff08…

MyBatis-Plus核心內容

MyBatis-Plus MyBatis-Plus 是一個基于 MyBatis的增強工具&#xff0c;旨在簡化開發過程&#xff0c;減少重復代碼。它在MyBatis的基礎上增加了CRUD操作封裝&#xff0c;條件構造器、代碼生成器等功能。 一、核心特性與優勢 1. 核心特性 無侵入&#xff1a;只做增強不做改變&am…

計算機網絡摘星題庫800題筆記 第4章 網絡層

第4章 網絡層4.1 網絡層概述題組闖關1.在 Windows 的網絡配置中&#xff0c;“默認網關” 一般被設置為 ( ) 的地址。 A. DNS 服務器 B. Web 服務器 C. 路由器 D. 交換機1.【參考答案】C 【解析】只有在計算機上正確安裝網卡驅動程序和網絡協議&#xff0c;并正確設置 IP 地址信…

非root用戶在linux中配置zsh(已解決ncurses-devel報錯)

Zsh&#xff08;Z Shell&#xff09;是一款功能強大的交互式 Unix shell&#xff0c;以其高度可定制性和豐富的功能著稱&#xff0c;被視為 Bash 的增強替代品。它支持智能補全、主題美化、插件擴展&#xff08;如 Oh My Zsh 框架&#xff09;、自動糾錯、全局別名等特性&#…

《Foundations and Recent Trends in Multimodal Mobile Agents: A Survey》論文精讀筆記

論文鏈接&#xff1a;https://arxiv.org/pdf/2411.02006 摘要 文章首先介紹了核心組件&#xff0c;并探討了移動基準和交互環境中的關鍵代表性作品&#xff0c;旨在全面理解研究重點及其局限性。 接著&#xff0c;將這些進展分為兩種主要方法&#xff1a; 基于提示的方法&a…

npm安裝時一直卡住的解決方法

npm install 卡住通常是由于網絡問題或緩存問題導致的。以下是幾種解決方法&#xff1a; 方法1&#xff1a;清理npm緩存 npm cache clean --force npm install方法2&#xff1a;刪除node_modules和package-lock.json重新安裝 rm -rf node_modules package-lock.json npm instal…

[密碼學實戰]使用Java生成國密SM2加密證書等(四十三)

[密碼學實戰]使用Java生成國密SM2加密證書等(四十三) 本文將詳細介紹如何通過Java代碼生成符合國密標準的SM2加密證書,包括密鑰對生成、證書擴展屬性配置、PEM格式保存等關鍵步驟。 一. 運行結果示例 二. 國密算法與加密證書 國密算法(SM系列)是中國自主研發的密碼算法體…

從零開始之stm32之CAN通信

從小白的視角了解并實現簡單的STM32F103的CAN通信&#xff0c;直接上手。一、CAN協議簡介CAN總線上傳輸的信息稱為報文&#xff0c;當總線空閑時任何連接的單元都可以開始發送新的報文&#xff0c;有5種類型的幀&#xff1a;數據幀、遙控幀、錯誤幀、過載幀、幀間隔。數據幀有兩…

Java 課程,每天解讀一個簡單Java之利用條件運算符的嵌套來完成此題:學習成績>=90分的同學用A表示,60-89分之間的用B表示, * 60分以下

package ytr250812;/*題目&#xff1a;利用條件運算符的嵌套來完成此題&#xff1a;學習成績>90分的同學用A表示&#xff0c;60-89分之間的用B表示&#xff0c;* 60分以下*/import java.util.Scanner;public class GradeEvaluator {public static void main(String[] args) …

Word XML 批注范圍克隆處理器

該類用于處理 Word 文檔&#xff08;XML 結構&#xff09;中被批注標記的文本范圍&#xff0c; 實現指定內容的深度克隆&#xff0c;并將其插入到目標節點之后。 適用于在生成或修改 .docx 文件時復制批注內容塊。/*** Word XML 批注范圍克隆處理器* * 該類用于處理 Word 文檔&…

MQTT:Java集成MQTT

目錄Git項目路徑一、原生java架構1.1 導入POM文件1.2 編寫測試用例二、SpringBoot集成MQTT2.1 導入POM文件2.2 在YML文件中增加配置2.3 新建Properties配置文件映射配置2.4 創建連接工廠2.5 增加入站規則配置2.6 增加出站規則配置2.7 創建消息發送網關2.8 測試消息發送2.9 項目…

day 16 stm32 IIC

1.IIC概述1基于對話的形式完成&#xff0c;不需要同時進行發送和接收所以刪掉了一根數據線&#xff0c;變成半雙工2為了安全起見添加了應答機制3可以接多個模塊&#xff0c;且互不干擾4異步時序&#xff0c;要求嚴格&#xff0c;發送過程中不能暫停&#xff0c;所以需要同步時序…

AMD KFD的BO設計分析系列 0:開篇

開啟我始終不敢碰的GPU存儲系列&#xff0c;先上個圖把核心關系表達下&#xff0c;以此紀念。注&#xff1a;圖中kfdm_mm誤寫&#xff0c;應該為kfd_mm&#xff0c;不修改了&#xff0c;請大家不要介意。

EUDR的核心內容,EUDR認證的好處,EUDR意義

近年來&#xff0c;全球森林退化問題日益嚴峻&#xff0c;毀林行為不僅加劇氣候變化&#xff0c;還威脅生物多樣性和原住民權益。為應對這一挑戰&#xff0c;歐盟于2023年6月正式實施《歐盟零毀林法案》&#xff08;EU Deforestation-free Regulation, EUDR&#xff09;&#x…