摘要:的本身是無狀態(tài)的生命周期通常比較短,只要出現(xiàn)了異常,就會(huì)自動(dòng)創(chuàng)建一個(gè)新的來代替它。為了實(shí)現(xiàn)內(nèi)數(shù)據(jù)的存儲(chǔ)管理,引入了兩個(gè)資源持久卷,以下簡(jiǎn)稱和持久卷申請(qǐng),以下簡(jiǎn)稱。跟里的卷類似,不過會(huì)有獨(dú)立于的生命周期。
Kubernetes的pod本身是無狀態(tài)的(stateless),生命周期通常比較短,只要出現(xiàn)了異常,Kubernetes就會(huì)自動(dòng)創(chuàng)建一個(gè)新的Pod來代替它。
而容器產(chǎn)生的數(shù)據(jù),會(huì)隨著Pod消亡而自動(dòng)消失。
為了實(shí)現(xiàn)Pod內(nèi)數(shù)據(jù)的存儲(chǔ)管理,Kubernetes引入了兩個(gè)API資源:Persistent Volume(持久卷,以下簡(jiǎn)稱PV)和Persistent Volume Claim(持久卷申請(qǐng),以下簡(jiǎn)稱PVC)。
PV是Kubernetes集群中的一種網(wǎng)絡(luò)存儲(chǔ)實(shí)現(xiàn),跟Node一樣,也是屬于集群的資源。
PV跟Docker里的Volume(卷)類似,不過會(huì)有獨(dú)立于Pod的生命周期。
使用kubectl get pv查看列表:
而PVC是用戶的一個(gè)請(qǐng)求,跟Pod類似。Pod消費(fèi)Node的資源,PVC消費(fèi)PV的資源。
Pod 能夠申請(qǐng)?zhí)囟ǖ馁Y源(CPU和內(nèi)存);PVC能夠申請(qǐng)?zhí)囟ǖ某叽绾驮L問模式,例如可以加載一個(gè)讀寫實(shí)例或者多個(gè)只讀實(shí)例,(就是上圖kubectl get pvc返回結(jié)果的Access Mode這一列的值RWO, ROX等等)而無須感知這些實(shí)例背后具體的存儲(chǔ)實(shí)現(xiàn)。
我們來看一個(gè)具體的PVC實(shí)例,名稱為nginx-pvc:
kind: PersistentVolumeClaim apiVersion: v1 metadata: name: nginx-pvc spec: storageClassName: default accessModes: - ReadOnlyMany resources: requests: storage: 1Gi
使用命令kubectl create -f pvc.yaml創(chuàng)建這個(gè)yaml文件定義的persistent volume claim:
然后定義一個(gè)pod,消費(fèi)這個(gè)名為nginx-pvc的persistent volume claim:
使用kubectl describe pvc nginx-pvc查看這個(gè)persistent volume claim對(duì)應(yīng)生成的persistent volume:
現(xiàn)在我用命令kubectl cp train.jpg nginx-storage-pod:/usr/share/nginx/html將兩個(gè)文件train.jpg和index.html文件拷貝到pod內(nèi)部文件路徑/usr/share/nginx/html下面:
現(xiàn)在切換到nginx-storage-pod pod里,在/usr/share/nginx/html目錄下果然發(fā)現(xiàn)了這兩個(gè)文件:
接下來我定義了另一個(gè)pod,同樣適用nginx-pvc這個(gè)PVC:
創(chuàng)建完這個(gè)pod之后,then kubectl exec -ti another ash 進(jìn)入pod內(nèi)部/usr/share/nginx/html,同樣發(fā)現(xiàn)了index.html和train.jpg.
這個(gè)例子說明persistent volume claim能夠用于在多個(gè)pod間共享持久化數(shù)據(jù)。
要獲取更多Jerry的原創(chuàng)文章,請(qǐng)關(guān)注公眾號(hào)"汪子熙":
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/32773.html
摘要:的本身是無狀態(tài)的生命周期通常比較短,只要出現(xiàn)了異常,就會(huì)自動(dòng)創(chuàng)建一個(gè)新的來代替它。為了實(shí)現(xiàn)內(nèi)數(shù)據(jù)的存儲(chǔ)管理,引入了兩個(gè)資源持久卷,以下簡(jiǎn)稱和持久卷申請(qǐng),以下簡(jiǎn)稱。跟里的卷類似,不過會(huì)有獨(dú)立于的生命周期。 Kubernetes的pod本身是無狀態(tài)的(stateless),生命周期通常比較短,只要出現(xiàn)了異常,Kubernetes就會(huì)自動(dòng)創(chuàng)建一個(gè)新的Pod來代替它。 而容器產(chǎn)生的數(shù)據(jù),會(huì)隨著...
摘要:的本身是無狀態(tài)的生命周期通常比較短,只要出現(xiàn)了異常,就會(huì)自動(dòng)創(chuàng)建一個(gè)新的來代替它。為了實(shí)現(xiàn)內(nèi)數(shù)據(jù)的存儲(chǔ)管理,引入了兩個(gè)資源持久卷,以下簡(jiǎn)稱和持久卷申請(qǐng),以下簡(jiǎn)稱。跟里的卷類似,不過會(huì)有獨(dú)立于的生命周期。 Kubernetes的pod本身是無狀態(tài)的(stateless),生命周期通常比較短,只要出現(xiàn)了異常,Kubernetes就會(huì)自動(dòng)創(chuàng)建一個(gè)新的Pod來代替它。 而容器產(chǎn)生的數(shù)據(jù),會(huì)隨著...
摘要:作者,高級(jí)軟件工程師實(shí)施的容器存儲(chǔ)接口已在版本中升級(jí)為。功能受棄用政策保護(hù)。隨著容器存儲(chǔ)接口的采用,卷層變得真正可擴(kuò)展。年中國論壇提案征集現(xiàn)已開放論壇讓用戶開發(fā)人員從業(yè)人員匯聚一堂,面對(duì)面進(jìn)行交流合作。 showImg(https://segmentfault.com/img/bVbnBe1?w=620&h=340); 作者:Saad Ali,Google高級(jí)軟件工程師 Kuberne...
摘要:作者,高級(jí)軟件工程師實(shí)施的容器存儲(chǔ)接口已在版本中升級(jí)為。功能受棄用政策保護(hù)。隨著容器存儲(chǔ)接口的采用,卷層變得真正可擴(kuò)展。年中國論壇提案征集現(xiàn)已開放論壇讓用戶開發(fā)人員從業(yè)人員匯聚一堂,面對(duì)面進(jìn)行交流合作。 showImg(https://segmentfault.com/img/bVbnBe1?w=620&h=340); 作者:Saad Ali,Google高級(jí)軟件工程師 Kuberne...
摘要:如果我們的容器使用,文件如下在這個(gè)例子中,我們可以重復(fù)創(chuàng)建和銷毀,同一個(gè)持久存儲(chǔ)會(huì)被提供給新的,無論容器位于哪個(gè)節(jié)點(diǎn)上。 前言 臨時(shí)性存儲(chǔ)是容器的一個(gè)很大的買點(diǎn)。根據(jù)一個(gè)鏡像啟動(dòng)容器,隨意變更,然后停止變更重啟一個(gè)容器。你看,一個(gè)全新的文件系統(tǒng)又誕生了。 在docker的語境下: # docker run -it centos [root@d42876f95c6a /]# echo H...
閱讀 3564·2021-10-15 09:43
閱讀 3487·2021-09-02 15:21
閱讀 2193·2021-08-11 11:23
閱讀 3238·2019-08-30 15:54
閱讀 1923·2019-08-30 13:54
閱讀 3199·2019-08-29 18:35
閱讀 668·2019-08-29 16:58
閱讀 1736·2019-08-29 12:49