Ceph集群2025(Squid版)快速對接K8S cephFS文件存儲

ceph的塊存儲太簡單了。所以不做演示

查看集群

創建一個 CephFS 文件系統
# ceph fs volume create cephfs01
需要創建一個子卷# ceph fs subvolume create cephfs01 my-subvol
-----------------#以下全部自動創建好
# ceph fs ls       
name: cephfs01, metadata pool: cephfs.cephfs01.meta, data pools: [cephfs.cephfs01.data ]# ceph osd pool ls
.mgr
cephfs.cephfs01.meta
cephfs.cephfs01.data

最后配置K8S yaml即可

helm repo add ceph-csi https://ceph.github.io/csi-charts
helm install -n ceph-csi ceph-csi-cephfs ceph-csi-cephfs-3.13.1.tgz -f values.yaml

以下我的yaml參考

# egrep -v "^[[:space:]]*#|^$" values.yaml
---
rbac:create: trueleastPrivileges: true
serviceAccounts:nodeplugin:create: truename:provisioner:create: truename:
csiConfig:- clusterID: "51edffbe-03fd-11f0-8abe-000c29f6d983"monitors:- "172.16.8.100:6789"- "172.16.8.102:6789"- "172.16.8.103:6789"cephFS:subvolumeGroup: "myfsg"  ----你的子卷
encryptionKMSConfig: {}
commonLabels: {}
logLevel: 5
sidecarLogLevel: 1
logSlowOperationInterval: 30s
CSIDriver:fsGroupPolicy: "File"seLinuxMount: false
nodeplugin:name: nodepluginupdateStrategy: RollingUpdatepriorityClassName: system-node-criticalhttpMetrics:enabled: truecontainerPort: 8081service:enabled: trueservicePort: 8080type: ClusterIPannotations: {}clusterIP: ""externalIPs: []loadBalancerIP: ""loadBalancerSourceRanges: []imagePullSecrets: []profiling:enabled: falseregistrar:image:repository: registry.aliyuncs.com/google_containers/csi-node-driver-registrartag: v2.13.0pullPolicy: IfNotPresentresources: {}plugin:image:repository: quay.io/cephcsi/cephcsitag: canarypullPolicy: IfNotPresentresources: {}nodeSelector: {}tolerations: []affinity: {}annotations: {}podSecurityContext: {}podAnnotations: {}kernelmountoptions: ""fusemountoptions: ""
provisioner:name: provisionerreplicaCount: 1strategy:type: RollingUpdaterollingUpdate:maxUnavailable: 50%timeout: 60spriorityClassName: system-cluster-criticalenableHostNetwork: falsehttpMetrics:enabled: truecontainerPort: 8081service:enabled: trueservicePort: 8080type: ClusterIPannotations: {}clusterIP: ""externalIPs: []loadBalancerIP: ""loadBalancerSourceRanges: []imagePullSecrets: []profiling:enabled: falseprovisioner:image:repository: registry.aliyuncs.com/google_containers/csi-provisionertag: v5.1.0pullPolicy: IfNotPresentresources: {}args:extraArgs: []setmetadata: trueresizer:name: resizerenabled: trueimage:repository: registry.aliyuncs.com/google_containers/csi-resizertag: v1.13.1pullPolicy: IfNotPresentresources: {}args:extraArgs: []snapshotter:image:repository: registry.aliyuncs.com/google_containers/csi-snapshottertag: v8.2.0pullPolicy: IfNotPresentresources: {}args:enableVolumeGroupSnapshots: falseextraArgs: []nodeSelector: {}tolerations: []affinity: {}annotations: {}podSecurityContext: {}podAnnotations: {}
selinuxMount: false
storageClass:create: truename: csi-cephfs-scannotations: {}clusterID: 51edffbe-03fd-11f0-8abe-000c29f6d983fsName: cephfs01   ----------------------你的名字pool: "cephfs.cephfs01.data"  fuseMountOptions: ""kernelMountOptions: ""mounter: ""volumeNamePrefix: ""encrypted: ""encryptionKMSID: ""provisionerSecret: csi-cephfs-secretprovisionerSecretNamespace: ""controllerExpandSecret: csi-cephfs-secretcontrollerExpandSecretNamespace: ""nodeStageSecret: csi-cephfs-secretnodeStageSecretNamespace: ""reclaimPolicy: DeleteallowVolumeExpansion: truemountOptions:- _netdev  ------------------重點在這里cephfs必須使用這個參數 塊存儲 設置為discard 啟用 TRIM 功能 文件存儲中無效或冗余,可能導致掛載參數沖突(如 CephFS 報錯 Invalid argument)
secret:create: truename: csi-cephfs-secretannotations: {}adminID: admin  ###----------這里建議全部使用adminadminKey: AQDDddln7+UvHRAAwZVyl1UEJOpY3fWG2Oev+A==userID: "admin"userKey: "AQDDddln7+UvHRAAwZVyl1UEJOpY3fWG2Oev+A=="
cephconf: |[global]auth_cluster_required = cephxauth_service_required = cephxauth_client_required = cephx
extraDeploy: []
provisionerSocketFile: csi-provisioner.sock
pluginSocketFile: csi.sock
kubeletDir: /var/lib/kubelet
driverName: cephfs.csi.ceph.com
configMapName: ceph-csi-config
externallyManagedConfigmap: false
cephConfConfigMapName: ceph-config
kmsConfigMapName: ceph-csi-encryption-kms-config

下面測試

apiVersion: v1
kind: PersistentVolumeClaim
metadata:name: csi-cephfs-pvc
spec:accessModes:- ReadWriteManyresources:requests:storage: 1GistorageClassName: csi-cephfs-sc
---
apiVersion: v1
kind: Pod
metadata:name: fs-pod
spec:containers:- name: web-serverimage: docker.1ms.run/nginx:alpinevolumeMounts:- name: mypvcmountPath: /usr/share/nginx/htmlvolumes:- name: mypvcpersistentVolumeClaim:claimName: csi-cephfs-pvcreadOnly: false

在這里插入圖片描述
默認是開啟內核掛載模式的
在這里插入圖片描述

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

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

相關文章

Python中數據結構元組詳解

在Python中,元組(Tuple)是一種不可變的序列類型,常用于存儲一組有序的數據。與列表(List)不同,元組一旦創建,其內容無法修改。本文將詳細介紹元組的基本操作、常見運算、內置函數以及…

游戲引擎學習第183天

回顧和今天的計劃 我對接下來的進展感到非常興奮。雖然我們可能會遇到一些問題,但昨天我們差不多完成了將所有內容遷移到新的日志系統的工作,我們正在把一些內容整合進來,甚至是之前通過不同方式記錄時間戳的舊平臺層部分,現在也…

Spring 如何處理循環依賴

在 Spring 框架里,循環依賴指的是多個 Bean 之間相互依賴,從而形成一個閉環。例如,Bean A 依賴 Bean B,而 Bean B 又依賴 Bean A。Spring 主要通過三級緩存機制來處理循環依賴,下面詳細介紹相關內容。 1. 三級緩存的定…

Android開發layer-list

Android開發layer-list 它的用處可以在drawable上進行多圖拼接&#xff0c;比如啟動頁&#xff0c;不想圖片被拉伸就這么做。還有做某些線突出來。 示例代碼&#xff1a; <?xml version"1.0" encoding"utf-8"?> <layer-list xmlns:android&q…

手機測試,工作中學習

要學習各種機型的截圖方式、開發模式在哪。 榮耀機型&#xff1a;截圖&#xff1a;關節快速敲兩下。開發者模式在“系統和更新”里。 1.出現缺陷&#xff0c;需要獲取日志。 學習adb生成日志&#xff1a;當測試中出現缺陷的&#xff0c;使用adb logcat -d > d:/log.txt …

OBS虛擬背景深度解析:無需綠幕也能打造專業教學視頻(附插件對比)

想要錄制教學視頻卻苦于背景雜亂&#xff1f;本文將手把手教你用OBS實現專業級虛擬背景效果&#xff0c;無需綠幕也能輕松營造沉浸式教學場景。文末附6個提升畫面質感的免費背景資源&#xff01; 一、虛擬背景的核心價值&#xff1a;從「教師宿舍」到「虛擬講堂」的蛻變 我們調…

零基礎搭建智能法律知識庫!騰訊云HAI實戰教程

為什么需要法律知識庫&#xff1f; 想象一下&#xff0c;你的所有法律文件都在手邊&#xff0c;隨時可以搜索和分析。這就是法律知識庫的魅力所在。對于法律專業人士、處理大量法律文檔的企業&#xff0c;甚至是希望了解法律事項的普通人來說&#xff0c;法律知識庫都是一個不…

Rust從入門到精通之進階篇:19.Rust 生態系統

Rust 生態系統 Rust 擁有一個豐富而活躍的生態系統&#xff0c;提供了各種庫和框架來支持不同領域的開發。在本章中&#xff0c;我們將探索 Rust 生態系統中的主要組件&#xff0c;了解常用的庫和工具&#xff0c;以及如何在項目中有效地使用它們。 Rust 包管理&#xff1a;C…

前端面試:如何去衡量用戶操作過程中否卡頓?

衡量用戶在應用中的操作是否卡頓是前端開發中的一個關鍵任務&#xff0c;涉及用戶體驗的各個方面。以下是一些常用的方法和工具&#xff0c;可以幫助你有效地評估用戶操作中的卡頓情況&#xff1a; 1. 使用性能分析工具 瀏覽器開發者工具&#xff1a;大多數現代瀏覽器&#xf…

Python技術棧與數據可視化創意實踐詳解(三)

Python在數據可視化領域憑借豐富的庫和靈活的生態系統&#xff0c;能夠實現從基礎圖表到復雜交互式可視化的全場景覆蓋。以下從技術選型、創意實現到實戰優化進行系統化解析&#xff0c;并提供可直接落地的代碼示例。 一、Python數據可視化技術棧 1. 基礎與統計可視化 Matplotl…

訂票系統|基于Java+vue的火車票訂票系統(源碼+數據庫+文檔)

訂票系統目錄 基于Springbootvue的火車票訂票系統 一、前言 二、系統設計 三、系統功能設計 1會員信息管理 2 車次信息管理 3訂票訂單管理 4留言板管理 四、數據庫設計 五、核心代碼 六、論文參考 七、最新計算機畢設選題推薦 八、源碼獲取&#xff1a; 博主介紹…

Snowflake 算法的實現

snowflake(雪花算法)是一個開源的分布式 ID 生成算法&#xff0c;結果是一個 long 型的 ID。snowflake 算法將 64bit 劃分為多段&#xff0c;分開來標識機器、時間等信息&#xff0c;具體組成結構如下圖所示&#xff1a; snowflake 算法的核心思想是使用 41bit 作為毫秒數&…

C 語言中, scanf 函數在哪些情況下會結束輸入讀取:

在 C 語言中&#xff0c; scanf 函數在以下幾種情況下會結束輸入讀取&#xff1a; &#xff1a; 1. 遇到指定格式匹配失敗&#xff1a; scanf 按照格式字符串要求讀取輸入。當輸入數據格式與格式字符串不匹配時&#xff0c;就會結束讀取。例如 scanf(“%d”, &num) 要求輸…

括號合法題

一、括號合法題 2116. 判斷一個括號字符串是否有效 //采用從左往右和從右往左遍歷的貪心算法&#xff0c;分別保證前綴合法&#xff0c;后綴合法。public boolean canBeValid(String s, String locked) {int ns.length();if (n%21) return false;int num0;// 從左到右掃描&…

圖生生AI商品圖:一鍵更換商品,保留原背景

圖生生AI商品圖工具&#xff0c;推出 “更換商品”功能&#xff0c;只需上傳一張參考圖和自己的商品圖&#xff0c;AI自動完成商品替換&#xff0c;保留原背景&#xff0c;3秒生成專業級電商圖&#xff01;無需PS技能&#xff0c;無需復雜操作&#xff0c;真正實現 “一鍵換商品…

[7-01-03].SpringBoot3集成MinIo

MinIO學習大綱 一、Spingboot整合MinIo 第1步&#xff1a;搭建SpringBoot項目&#xff1a; 第2步&#xff1a;引入minio依賴 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi&q…

Gradle Project import Eclipse

Gradle Project import Eclipse

一些SQL優化經驗(非添加索引版)

SQL 優化核心策略 偽代碼示例&#xff0c;現實比這個復雜 1. 子查詢優化 (1) 避免低效的 IN 和 NOT IN 問題&#xff1a; NOT IN 可能導致全表掃描&#xff0c;尤其是子查詢結果集較大時。 優化方案&#xff1a; 替換為 LEFT JOIN&#xff1a; -- 原查詢&#xff08;低效&am…

<項目> 高并發服務器的HTTP協議支持

目錄 HTTP模塊 模塊劃分與介紹 模塊實現 Util模塊 HTTPRequest模塊 HTTPResponse模塊 HTTPContext模塊 ParseHttpLine RecvHttpLine RecvHttpHead ParseHttpHead RecvHttpBody 對外接口 HttpServer模塊 OnConnected OnMessage Route IsFileHandler FileHandler Dispatcher …

基于Spring Boot + Vue的銀行管理系統設計與實現

基于Spring Boot Vue的銀行管理系統設計與實現 一、引言 隨著金融數字化進程加速&#xff0c;傳統銀行業務向線上化轉型成為必然趨勢。本文設計并實現了一套基于Spring Boot Vue的銀行管理系統&#xff0c;通過模塊化架構滿足用戶、銀行職員、管理員三類角色的核心業務需求…