㈠ 對比9大開源網盤程序,自建網盤指南
是否你已經受夠了各種在線網盤的各種限制,限速、和諧資源、付費價格高。那麼你可以考慮搭建一個自己專屬的網盤,完全掌控自己的所有數據,功能沒有限制。這個視頻我會給你介紹基本上所有常用的開源免費的網盤程序,大家趕緊收藏備用吧,一定有一款網盤適合你。當你哪天受夠了其他網盤,再次打開這個視頻,選一個適合自己的網盤程成搭建一個吧。後面我也會選擇熱度比較高的網盤做系列的部署教程,大家關注一下吧。
我先說一下,我對這些網盤介紹的順序是按照我個人評分從低到高的順序進行的,後面的網盤程序有更強的功能性或者更多的用戶。
我們要關注自建網盤最主要的功能點為:
網址:https://kohgylw.gitee.io/
想要運行kiftd,JAVA運行環境必不可少。配置 Java 環境很簡單,整體而言,搭建這個網盤十分的簡單。但是從2020年07月06日之後我看沒有更新過了。
網址:https://github.com/zhaojun1998/zfile
演示地址:https://zfile.vip/1/main
系統特點:
網址:https://onionshare.org/
網址:http://dzzoffice.com/
演示地址:http://demo.dzzoffice.com/
網址:https://tank-doc.eyeblue.cn/
演示地址:https://tanker.eyeblue.cn/
核心功能如下:
網址:https://www.seafile.com/home/
演示地址:https://demo.seafile.top/
特點:
網址:https://github.com/owncloud/
像本文列表裡的其他應用一樣, NextCloud 是自託管的,但是如果你不想在自己的 Linux 上安裝 NextCloud 伺服器,該公司與幾個提供商達成了夥伴合作,提供安裝和託管,並銷售伺服器、設備和服務支持。在市場中提供了大量的apps 來擴展它的功能。
網址:https://github.com/nextcloud/
小到個人可以使用 Cloudreve 搭建個人用網盤;大到公司團隊搭建公有雲系統和文件分享系統。該雲盤系統還配備了詳細的文檔和討論社區 Cloudreve 功能齊全:
網址:https://cloudreve.org/
演示地址:https://demo.cloudreve.org/home
網盤使用的場景我大體分為兩大類:文件存儲和分享的網盤,代表產品為網路網盤;另一種是文件增量同步的同步盤,代表產品為堅果雲。那麼我介紹的這些開源網盤程序那些可以勝任這兩種需求場景呢?我的建議為:
如果你還有其他的網盤自建的想法或思路,也可以在評論區分享討論。最後,如果你喜歡這篇文章,不要忘了點個關注,我們一起持續提升,這對我非常的重要, 我是格物時間,我們下期不見不散。
㈡ 什麼是共享存儲
共享存儲就是如果你連入區域網,區域網內的電腦可以共享共享存儲里的東西。
㈢ 開源推薦-C++開發的微服務框架Tars
Tars致力於建設微服務技術生態,在底層基礎設施、服務框架、上層應用以及DevOps等方面,都做了較為深入的研發。
2020年3月10日,Linux基金會正式宣布旗下的TARS開源項目成立TARS子基金會。這是一個 專注於微服務領域 的開源基金會,致力於幫助企業擁抱微服務體系架構,解決在使用微服務方面可能出現的問題。這是首個 起源於中國開源項目 的國際開源基金會,也是Linux基金會下 唯一聚焦微服務技術生態 的子基金會。
Tars基金會里目前收錄了9個項目,分為5部分:工具集(Tars Lab)、服務治理(Service Governance)、微服務開發框架(Development Framwork)、存儲(DCache)和基礎設施(Infrustructure)。
1、Tars Lab
Tars Lab項目提供了壓力測試TarsJMeter,基準測試集TarsBenchmark和一些開發工具包。TarsJavaStart,可以生成服務端和客戶端的TarsJava腳手架,快速開始Tars服務的開發。TarsTools,是一款支持多種IDE的JetBrains插件,為實現編輯Jce/Tars文件使用的(支持Intellij IDEA、Android Studio、PhpStorm、WebStorm、GoLand、CLion等)。
2、服務治理
服務治理包含了2個項目:TSeer專注於處理服務注冊與發現;TarsGateway是基於Tars框架開發的微服務網關,除具備網關的基礎功能外,還可以自動將HTTP轉換成Tars-RPC協議。
3、微服務開發框架
這部分只包含Tars一個項目,核心模塊由C++開發,提供了多語言開發框架,默認rpc調用,是Tars基金會的核心項目。其他項目都是圍繞這個項目研發的。
4、微服務存儲
這部分只包含DCache一個項目,它是基於Tars框架開發的 分布式共享內存存儲系統 ,支持常用的kv數據結構、支持二級索引、支持在線擴縮容、支持自動持久化到後端db等特性。DCache依賴Tars框架的運行,但也得益於Tars,使得存儲服務的運維成本幾乎為0。
5、微服務基礎設施
這是一個將Tars與K8S融合使用的項目,致力於將Tars融入到K8S生態中。
在這方面還有一個更優秀的項目K8SFramework,致力於將Tars與K8S深度融合,相信未來會納入到基金會中。
| Tars的前世今生
Tars的前身是騰訊內部的TAF框架,已經經過了10年的驗證,穩定運行與1.6w+伺服器,100多個業務線中。
據統計, Tars已在超過 120 家公司、 261200 台伺服器上穩定運行。
在分布式環境下,所有的微服務(包括DCache的服務)都可以通過框架自帶的控制台-TarsWeb進行管理, 可以做到所有服務狀態可監控,可以在控制台上進行啟停、修改配置、執行運維指令等操作。
在分布式部署的情況下,可以通過Web控制台實現一鍵升級、回退。
Tars自帶配置中心,分級配置,可以統一修改配置,做到「一點修改,全局生效」。
在服務部署時,可以在界面上填寫要發布的節點,一鍵部署、擴容。
框架提供了狀態監控的能力,可以監控服務的調用質量,如流量情況,平均耗時、超時率和異常率。
框架狀態可以在控制台上一鍵核查。
Tars提供配套的性能測試工具,這也是Tars基金會的子項目。性能測試工作不再依賴專業的測試人員。
| Tars優勢
1、原生RPC調用
Tars使用自研的RPC協議通信,服務之間建立長連接,在通信頻繁的場景下具備顯著的性能優勢。
2、多語言支持
除C++和Java外,Tars還支持NodeJs,PHP,Go等語言,提供了相應的SDK。當團隊技術棧多樣化時,可以多語言協同開發,無縫對接,開發者可以選擇自己熟悉的語言進行開發,提升團隊整體效率。
在這方面,Spring Cloud想要支持異構語言,需要藉助SideCar構建Service Mesh。 業界現在有一些比較流行的服務網格解決方案,但是 並沒有形成統一的標准 , 可移植性不高 。比較常見的像Istio,由於是代理模式,而且非長連接,會存在 更大的延遲 。另一方面,Istio的部署和運維都非常 復雜 ,需要更多的學習成本和運維成本。
3、內置服務治理功能
Tars框架內嵌了豐富的服務治理功能,包括熔斷、限流、負載均衡、認證、加密等。同時,在服務監控、數據採集,以及灰度部署、跨機房部署等方面,都原生支持,集成度高。
Spring Cloud要支持這些功能,要麼需要集成其他組件,要麼需要設計開發來實現。都需要付出額外的學習成本和研發成本。
4、運維監控
Tars為使用者提供了一體化的運維管理控制台,我們可以在Web上進行一鍵部署、擴容、升級、回退等運維操作。
Spring Cloud並沒有配套的工具。要實現Web管控, 需要藉助K8S和容器,同樣需要付出額外的成本。
5、國產化
Tars是國內公司主導的開源項目,這一點就不多說什麼了。
6、「套裝」優勢
Tars框架提供了微服務相關的一體化解決方案,常規情況下不需要再去集成其他組件,不存在兼容性問題。這就好比MacBook和兼容機的區別,兼容機你可能需要付出更多的試錯成本才能達到想要的效果。
| 劣勢
1、項目熱度
Tars開源較晚,到目前只有5年多時間,項目熱度不如Spring Cloud,應用也沒Spring Cloud廣泛。
2、Tars的雲原生之路
Tars和K8s的深度融合也開源不久(2020年7月,K8SFramework),還有待落地驗證。這個項目現在的更新頻率較高,不建議在生產中使用。但是從這一點也可以看到社區工作者對Tars與K8S融合的高漲熱情,相信未來這個項目一定會大放異彩!
Tars在微服務開發、運維、監控等方面提供了一體化的解決方案,可以幫助我們低成本構建企業級微服務。適用於各種規模的團隊,各種規模的系統。
在做技術選型時,如果團隊中有C++開發人員,或者有多語言開發的情況,而且團隊規模、資源有限的情況下,建議選擇Tars。它在運維、監控、測試等方面會為我們節約大量成本。
未來,隨著 K8SFramework 項目的日漸成熟,相信Tars生態會被更多的團隊熟知和使用。
㈣ Seafile 開源網盤
Seafile 是一款安全、高性能的開源網盤(雲存儲)軟體。Seafile 提供了主流網盤(雲盤)產品所具有的功能,包括文件同步、文件共享等。在此基礎上,Seafile 還提供了高級的安全保護功能以及群組協作功能。由於 Seafile 是開源的,你可以把它部署在私有雲的環境中,作為私有的企業網盤。Seafile 支持 Mac、Linux、Windows 三個桌面平台,支持 Android 和 iOS 兩個移動平台。
Seafile 是由國內團隊開發的國際型項目,目前已有50萬左右的用戶,以歐洲用戶為多。自發布以來,Seafile 一直保持開放、國際化、高質量的宗旨,受到國內外大型機構的信賴。目前主要的大型客戶包括卡巴斯基、中國平安,以及歐美多家知名大學和科研機構。
你可以把 Seafile 想像成是面向團隊的開源Dropbox。
㈤ 分布式存儲有哪些
問題一:當前主流分布式文件系統有哪些?各有什麼優缺點 目前幾個主流的分布式文件系統除GPFS外,還有PVFS、Lustre、PanFS、GoogleFS等。
1.PVFS(Parallel Virtual File System)項目是Clemson大學為了運行Linux集群而創建的一個開源項目,目前PVFS還存在以下不足:
1)單一管理節點:只有一個管理節點來管理元數據,當集群系統達到一定的規模之後,管理節點將可能出現過度繁忙的情況,這時管理節點將成為系統瓶頸;
2)對數據的存儲缺乏容錯機制:當某一I/O節點無法工作時,數據將出現不可用的情況;
3)靜態配置:對PVFS的配置只能在啟動前進行,一旦系統運行則不可再更改原先的配置。
2.Lustre文件系統是一個基於對象存儲的分布式文件系統,此項目於1999年在Carnegie Mellon University啟動,Lustre也是一個開源項目。它只有兩個元數據管理節點,同PVFS類似,當系統達到一定的規模之後,管理節點會成為Lustre系統中的瓶頸。
3.PanFS(Panasas File System)是Panasas公司用於管理自己的集群存儲系統的分布式文件系統。
4.GoogleFS(Google File System)是Google公司為了滿足公司內部的數據處理需要而設計的一套分布式文件系統。
5.相對其它的文件系統,GPFS的主要優點有以下三點:
1)使用分布式鎖管理和大數據塊策略支持更大規模的集群系統,文件系統的令牌管理器為塊、inode、屬性和目錄項建立細粒度的鎖,第一個獲得鎖的客戶將負責維護相應共享對象的一致性管理,這減少了元數據伺服器的負擔;
2)擁有多個元數據伺服器,元數據也是分布式,使得元數據的管理不再是系統瓶頸;
3)令牌管理以位元組作為鎖的最小單位,也就是說除非兩個請求訪問的是同一文件的同一位元組數據,對於數據的訪問請求永遠不會沖突.
問題二:分布式存儲是什麼?選擇什麼樣的分布式存儲更好? 分布式存儲系統,是將數據分散存儲在多 *** 立的設備上。傳統的網路存儲系統採用集中的存儲伺服器存放所有數據,存儲伺服器成為系統性能的瓶頸,也是可靠性和安全性的焦點,不能滿足大規模存儲應用的需要。分布式網路存儲系統採用可擴展的系統結構,利用多台存儲伺服器分擔存儲負荷,利用位置伺服器定位存儲信息,它不但提高了系統的可靠性、可用性和存取效率,還易於擴展。
聯想超融合ThinkCloud AIO超融合雲一體機是聯想針對企業級用戶推出的核心產品。ThinkCloud AIO超融合雲一體機實現了對雲管理平台、計算、網路和存儲系統的無縫集成,構建了雲計算基礎設施即服務的一站式解決方案,為用戶提供了一個高度簡化的一站式基礎設施雲平台。這不僅使得業務部署上線從周縮短到天,而且與企業應用軟體、中間件及資料庫軟體完全解耦,能夠有效提升企業IT基礎設施運維管理的效率和關鍵應用的性能
問題三:什麼是分布式存儲系統? 就是將數據分散存儲在多 *** 立的設備上
問題四:什麼是分布式數據存儲 定義:
分布式資料庫是指利用高速計算機網路將物理上分散的多個數據存儲單元連接起來組成一個邏輯上統一的資料庫。分布式資料庫的基本思想是將原來集中式資料庫中的數據分散存儲到多個通過網路連接的數據存儲節點上,以獲取更大的存儲容量和更高的並發訪問量。近年來,隨著數據量的高速增長,分布式資料庫技術也得到了快速的發展,傳統的關系型資料庫開始從集中式模型向分布式架構發展,基於關系型的分布式資料庫在保留了傳統資料庫的數據模型和基本特徵下,從集中式存儲走向分布式存儲,從集中式計算走向分布式計算。
特點:
1.高可擴展性:分布式資料庫必須具有高可擴展性,能夠動態地增添存儲節點以實現存儲容量的線性擴展。
2 高並發性:分布式資料庫必須及時響應大規模用戶的讀/寫請求,能對海量數據進行隨機讀/寫。
3. 高可用性:分布式資料庫必須提供容錯機制,能夠實現對數據的冗餘備份,保證數據和服務的高度可靠性。
問題五:分布式文件系統有哪些主要的類別? 分布式存儲在大數據、雲計算、虛擬化場景都有勇武之地,在大部分場景還至關重要。munity.emc/message/655951 下面簡要介紹*nix平台下分布式文件系統的發展歷史:
1、單機文件系統
用於操作系統和應用程序的本地存儲。
2、網路文件系統(簡稱:NAS)
基於現有乙太網架構,實現不同伺服器之間傳統文件系統數據共享。
3、集群文件系統
在共享存儲基礎上,通過集群鎖,實現不同伺服器能夠共用一個傳統文件系統。
4、分布式文件系統
在傳統文件系統上,通過額外模塊實現數據跨伺服器分布,並且自身集成raid保護功能,可以保證多台伺服器同時訪問、修改同一個文件系統。性能優越,擴展性很好,成本低廉。
問題六:分布式文件系統和分布式資料庫有什麼不同 分布式文件系統(dfs)和分布式資料庫都支持存入,取出和刪除。但是分布式文件系統比較暴力,可以當做key/value的存取。分布式資料庫涉及精煉的數據,傳統的分布式關系型資料庫會定義數據元組的schema,存入取出刪除的粒度較小。
分布式文件系統現在比較出名的有GFS(未開源),HDFS(Hadoop distributed file system)。分布式資料庫現在出名的有Hbase,oceanbase。其中Hbase是基於HDFS,而oceanbase是自己內部實現的分布式文件系統,在此也可以說分布式資料庫以分布式文件系統做基礎存儲。
問題七:分布式存儲有哪些 華為的fusionstorage屬於分布式 您好,很高興能幫助您,首先,FusionDrive其實是一塊1TB或3TB機械硬碟跟一塊128GB三星830固態硬碟的組合。我們都知道,很多超極本同樣採用了混合型硬碟,但是固態硬碟部分的容量大都只有8GB到32GB之間,這個區間無法作為系統盤來使用,只能作
問題八:linux下常用的分布式文件系統有哪些 這他媽不是騰訊今年的筆試題么
NFS(tldp/HOWTO/NFS-HOWTO/index)
網路文件系統是FreeBSD支持的文件系統中的一種,也被稱為NFS。
NFS允許一個系統在網路上與它人共享目錄和文件。通過使用NFS, 用戶和程序可以象訪問本地文件一樣訪問遠端系統上的文件。它的好處是:
1、本地工作站使用更少的磁碟空間,因為通常的數據可以存放在一台機器上而且可以通過網路訪問到。
2、用戶不必在每個網路上機器裡面都有一個home目錄。home目錄可以被放在NFS伺服器上並且在網路上處處可用。
3、諸如軟碟機、CDROM、和ZIP之類的存儲設備可以在網路上面被別的機器使用。可以減少整個網路上的可移動介質設備的數量。
開發語言c/c++,可跨平台運行。
OpenAFS(openafs)
OpenAFS是一套開放源代碼的分布式文件系統,允許系統之間通過區域網和廣域網來分享檔案和資源。OpenAFS是圍繞一組叫做cell的文件伺服器組織的,每個伺服器的標識通常是隱藏在文件系統中,從AFS客戶機登陸的用戶將分辨不出他們在那個伺服器上運行,因為從用戶的角度上看,他們想在有識別的Unix文件系統語義的單個系統上運行。
文件系統內容通常都是跨cell復制,一便一個硬碟的失效不會損害OpenAFS客戶機上的運行。OpenAFS需要高達1GB的大容量客戶機緩存,以允許訪問經常使用的文件。它是一個十分安全的基於kerbero的系統,它使用訪問控制列表(ACL)以便可以進行細粒度的訪問,這不是基於通常的Linux和Unix安全模型。開發協議IBM Public,運行在linux下。
MooseFs(derf.homelinux)
Moose File System是一個具備容錯功能的網路分布式文件統,它將數據分布在網路中的不同伺服器上,MooseFs通過FUSE使之看起來就 是一個Unix的文件系統。但有一點問題,它還是不能解決單點故障的問題。開發語言perl,可跨平台操作。
pNFS(pnfs)
網路文件系統(Network FileSystem,NFS)是大多數區域網(LAN)的重要的組成部分。但NFS不適用於高性能計算中苛刻的輸入書櫥密集型程序,至少以前是這樣。NFS標準的罪行修改納入了Parallel NFS(pNFS),它是文件共享的並行實現,將傳輸速率提高了幾個數量級。
開發語言c/c++,運行在linu下。
googleFs
據說是一個比較不錯的一個可擴展分布式文件系統,用於大型的,分布式的,對大量數據進行訪問的應用。它運行於廉價的普通硬體上,但可以提供容錯功能,它可以給大量的用戶提供性能較高的服務。google自己開發的。
問題九:分布式存儲都有哪些,並闡述其基本實現原理 神州雲科 DCN NCS DFS2000(簡稱DFS2000)系列是面向大數據的存儲系統,採用分布式架構,真正的分布式、全對稱群集體系結構,將模塊化存儲節點與數據和存儲管理軟體相結合,跨節點的客戶端連接負載均衡,自動平衡容量和性能,優化集群資源,3-144節點無縫擴展,容量、性能歲節點增加而線性增長,在 60 秒鍾內添加一個節點以擴展性能和容量。
問題十:linux 分布式系統都有哪些? 常見的分布式文件系統有,GFS、HDFS、Lustre 、Ceph 、GridFS 、mogileFS、TFS、FastDFS等。各自適用於不同的領域。它們都不是系統級的分布式文件系統,而是應用級的分布式文件存儲服務。
GFS(Google File System)
--------------------------------------
Google公司為了滿足本公司需求而開發的基於Linux的專有分布式文件系統。。盡管Google公布了該系統的一些技術細節,但Google並沒有將該系統的軟體部分作為開源軟體發布。
下面分布式文件系統都是類 GFS的產品。
HDFS
--------------------------------------
Hadoop 實現了一個分布式文件系統(Hadoop Distributed File System),簡稱HDFS。 Hadoop是Apache Lucene創始人Doug Cutting開發的使用廣泛的文本搜索庫。它起源於Apache Nutch,後者是一個開源的網路搜索引擎,本身也是Luene項目的一部分。Aapche Hadoop架構是MapRece演算法的一種開源應用,是Google開創其帝國的重要基石。
Ceph
---------------------------------------
是加州大學聖克魯茲分校的Sage weil攻讀博士時開發的分布式文件系統。並使用Ceph完成了他的論文。
說 ceph 性能最高,C++編寫的代碼,支持Fuse,並且沒有單點故障依賴, 於是下載安裝, 由於 ceph 使用 btrfs 文件系統, 而btrfs 文件系統需要 Linux 2.6.34 以上的內核才支持。
可是ceph太不成熟了,它基於的btrfs本身就不成熟,它的官方網站上也明確指出不要把ceph用在生產環境中。
Lustre
---------------------------------------
Lustre是一個大規模的、安全可靠的,具備高可用性的集群文件系統,它是由SUN公司開發和維護的。
該項目主要的目的就是開發下一代的集群文件系統,可以支持超過10000個節點,數以PB的數據量存儲系統。
目前Lustre已經運用在一些領域,例如HP SFS產品等。
㈥ Kubernetes存儲
在 Docker的設計 實現中, 容器中的數據是臨時性的,當容器銷毀或重新啟動時存儲在容器內部的數據將會全部丟失 ,但實際上很多容器化應用是需要持久化保存的數據,這就需要使用Docker數據卷掛載宿主機上的文件或者目錄到容器中以保證數據的持久化存儲。在 Kubernetes中Pod重建如同Docker銷毀一樣,數據就會丟失 ,Kubernetes也通過掛載數據卷方式為Pod數據提供持久化能力,這些數據卷以Pod為最小單位進行存儲,通過共享存儲或分布式存儲在各個Pod之間實現共享。
Kubernetes是由Master節點及Node節點組成的,在Master節點中通過etcd存儲了Kubernetes集群的節點信息、Pod信息、容器信息、配置信息。Node節點主要對外提供容器服務,著重描述Node節點與存儲相關的內容。
Kubernetes以Pod為單位對外提供容器服務,真正的服務是通過Service進行訪問的。 Kubernetes中的服務按類型分成三種:無狀態服務(stateless)、普通有狀態服務、有狀態集群服務 。
無狀態服務:不需要持久化存儲的,即使Pod重建也不會受影響,只要確保服務的可靠性便可,Kubernetes通過ReplicationSet來保證某個服務的實例數量。
普通有狀態服務:這類服務需要保留服務的狀態,通常通過Kubernetes提供的Volume及Persistent Volume、Persistent Volume Claim來保存狀態。
有狀態的集群服務:這類服務除了保存服務狀態的同時還需要提供集群管理的功能,集群管理過程中也涉及臨時數據的保存、集群內數據共享等。
Kubernetes中涉及存儲的主要使用場景 :
1) 容器集群相關配置信息及運行時信息保存,這類信息存儲在etcd中。
2) 服務的基本配置文件及證書文件。
3) 服務的狀態存儲、數據存儲信息。
4) 集群內不同服務交換共享的數據信息。
1) 臨時文件形式 :同一個Pod內不同容器間通過共享內存方式訪問,會創建一個空目錄,交換完信息後會刪除這個空目錄。
2) HostPath方式 :同一個Node內不同的Pod間進行信息共享使用HostPath方式(比如時區timezone)。如果Pod配置了EmptyDir數據卷,則它在Pod的生命周期內都會存在。當Pod被分配到Node上的時候,會在Node上創建EmptyDir數據卷,並掛載到Pod的容器中。
3) PV及PVC: Kubernetes的持久化存儲機制的核心是PV(Persistent Volume)、PVC (Persistent Volume Claim)。PV是Volume插件,關聯到真正的後端存儲系統,PVC是從PV中申請資源,而不需要關心存儲的提供方。PVC和PV的關系就如同Pod和Node一樣,Pod是消費Node提供的資源,PVC是消費PV提供的存儲資源。PVC和PV通過匹配完成綁定關系,PVC可以被Pod里的容器掛載。
4) 網路方式 :不同Node節點之間的數據共享通過網路方式使用,通常採用分布式存儲方式。開源的分布式文件系統比較流行的選擇有GlusterFS和Ceph,還有一些其他的分布式文件系統(NFS)選擇。
5) 自定義插件方式 :Kubernetes提供了豐富的Volume的插件來進行存儲管理。如果存儲管理介面不夠用,用戶可以通過CSI或Flex Volume進行擴展。
存儲管理組件(存儲組件)主要是接收北向API收到的Rest請求,維護持久卷的生命周期管理。如創建、刪除卷, 存儲組件負責與後端存儲軟體交互完成實際的創建、刪除卷等操作;並負責調用Kubernetes原生介面創建對應的PVC和PV 。
存儲後端系統提供數據文件的實際持久化能力,不僅需要實現數據文件的讀寫、副本復制等存儲操作,通常還需具備多節點高可用的能力。
當需要為自己的微服務應用掛載持久卷時,只需要通過存儲組件創建持久卷,存儲組件會在Kubernetes業務集群創建PVC/PV,並到後端存儲系統(如GlusterFS)上創建真正的物理Volume,同時維護好PVC/PV/Volume之間的一一映射對應關系。這樣,用戶部署容器時就可以選擇掛載相應的持久卷,部署後相應的卷就可以掛載到對應的容器。應用掛載持久卷後,進行讀寫時就類似於本地目錄的讀寫操作。
在Pod進行重建或者遷移到其他節點時,Pod可以自動掛回原來對應的持久卷,繼續使用原先的數據。多個Pod可以共享一個持久卷,從而達到容器間文件共享的目的。
摘抄自陸平的《基於Kubernetes的容器雲平台實戰》一書的第11章Kubernetes存儲