0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

PV和PVC是什么

汽車電子技術(shù) ? 來源:碼農(nóng)與軟件時代 ? 作者:碼農(nóng)與軟件時代 ? 2023-02-20 16:03 ? 次閱讀

一、概述

Docker使用數(shù)據(jù)卷和數(shù)據(jù)卷容器來進行數(shù)據(jù)的持久化。

Pod是Kubernetes的基本單位,包含一個或多個容器。

Pod內(nèi)部的容器存在共享數(shù)據(jù)存儲的需求,Kubernetes給出了類似容器Volum(卷)的概念,與Pod具有相同的生命周期。

使用Volum,就需要知道存儲方案的技術(shù)細節(jié),通常由運維人員來維護。而對開發(fā)人員來說,只想知道我需要多大的存儲空間、I/O是否能滿足要求等等這些細節(jié)。

為此,Kubernetes在Volum的基礎(chǔ)上做了進一步抽象,提出了PV(PersistentVolume,持久化卷)、PVC(PersistentVolumeClaim,持久化卷聲明)。

PV相當于一塊硬盤,由運維人員提供。

PVC是對存儲需求的聲明,由開發(fā)人員提供。

PVC可類比POD來理解,POD申請的是CPU和內(nèi)存資源,而PVC則是申請存儲資源。

PV一般是預(yù)先手動創(chuàng)建的,開發(fā)人員每次都申請,則比較麻煩。是否可以根據(jù)PVC的要求,自動創(chuàng)建呢?

Kubernetes提出了 Sotrage Class ,實現(xiàn)PV的動態(tài)供給。

**二、實踐

**

(一)配置NFS服務(wù)器

NFS(Network File System)是一種分布式文件系統(tǒng)協(xié)議,可以通過網(wǎng)絡(luò),讓不同的客戶端,可以彼此訪問共同的文件系統(tǒng) ,來實現(xiàn)文件的共享。NFS服務(wù)器提供可以掛載的目錄,客戶端直接掛載在本地端的目錄。

  1. 安裝NFS服務(wù)器
apt-get install nfs-kernel-server
  1. 配置NFS服務(wù)器

/etc/exports為NFS服務(wù)器的配置文件。

root@linux:/tmp# vi /etc/exports 
# /etc/exports: the access control list for filesystems which may be exported
#to NFS clients.  See exports(5).
# 訪問控制列表,以便NFS客戶端配置
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
/tmp *(rw,no_root_squash,sync)

參數(shù)說明:

rw:設(shè)置目錄可讀寫;

no_root_squash:客戶端連接服務(wù)端時,如果是root用戶,那么,將擁有服務(wù)端目錄的root權(quán)限;

sync:將數(shù)據(jù)同步寫入內(nèi)存緩沖區(qū)與磁盤中,效率低,但可以保證數(shù)據(jù)的一致性;

  1. NFS服務(wù)器的啟動
root@linux:/# service nfs-kernel-server start
  1. NFS客戶端配置

(1)安裝nfs-common

root@linux:/# apt install nfs-common
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following package was automatically installed and is no longer required:
  grub-pc-bin
Use 'apt autoremove' to remove it.
The following additional packages will be installed:
  keyutils libnfsidmap2 libtirpc1 rpcbind
Suggested packages:
  watchdog
The following NEW packages will be installed:
  keyutils libnfsidmap2 libtirpc1 nfs-common rpcbind
0 upgraded, 5 newly installed, 0 to remove and 345 not upgraded.
Need to get 399 kB of archives.
...

(2)將本地/mnt/nfs目錄掛載在NFS服務(wù)器上/tmp

root@linux:/# mount -t nfs 30.0.1.90:/tmp /mnt/nfs
root@linux:/#

(5)新建測試文件:

root@linux:/# cd /mnt/nfs/
root@linux:/mnt/nfs# touch 1.txt
root@linux:/mnt/nfs# echo this is nfs test > 1.txt
root@linux:/mnt/nfs# ls
1.txt

(6)登錄NFS服務(wù)器,便可查到文件:

root@linux:/tmp# ll
total 72
-rw-r--r--  1 root    root       1.txt
root@linux:/tmp# cat 1.txt
this is nfs test
root@linux:/tmp#

(二)Kubernetes掛載NFS

編寫一個yaml文件,需要記住server地址和可供掛載的目錄

apiVersion: v1
kind: Pod
metadata:
  name: mountnfstest
  namespace: kubetest #
spec:
  containers:
  - name: nginx
    image: nginx:1.21.0
    ports:
    - containerPort: 80
    volumeMounts:
    - name: logs-volume
      mountPath: /var/log/nginx  
  volumes:
  - name: logs-volume
    nfs:
      server: 30.0.1.90 # NFS服務(wù)器地址
      path: /tmp/ #可供掛載的目錄
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 容器
    +關(guān)注

    關(guān)注

    0

    文章

    492

    瀏覽量

    22027
  • Docker
    +關(guān)注

    關(guān)注

    0

    文章

    453

    瀏覽量

    11792
收藏 人收藏

    評論

    相關(guān)推薦

    Kubernetes存儲體系解析 淺談Volume概念的由來

    Volume、PV、PVC、StorageClass由來 先思考一個問題,為什么會引入Volume這樣一個概念? 答案很簡單,為了實現(xiàn)數(shù)據(jù)持久化,數(shù)據(jù)的生命周期不隨著容器的消亡而消亡。 在沒有介紹
    的頭像 發(fā)表于 10-15 16:45 ?2514次閱讀
    Kubernetes存儲體系解析 淺談Volume概念的由來

    PVC電纜料的配方是什么?

    通常來講,PVC電纜料的常用填充料輕鈣、陶土的加入量與電纜料的抗拉強度成反比關(guān)系,但由于目前PVC樹脂的價格一路攀升。
    發(fā)表于 09-11 11:30

    從零開始入門 K8s | 應(yīng)用存儲和持久化數(shù)據(jù)卷:核心知識

    在容器中,讓容器中的程序可以通過 POSIX 接口來訪問配置數(shù)據(jù);PVPVC 就是今天要重點介紹的內(nèi)容。 Persistent Volumes接下來看一下 PV(Persistent
    發(fā)表于 10-15 14:55

    從零開始入門 K8s | 應(yīng)用存儲和持久化數(shù)據(jù)卷:存儲快照與拓撲調(diào)度

    -Snapshot我們知道,K8s 中通過 pvc 以及 pv 的設(shè)計體系來簡化用戶對存儲的使用,而存儲快照的設(shè)計其實是仿照pvc & pv 體系的設(shè)計思想。當用戶需要存儲快照的功能時
    發(fā)表于 10-15 15:07

    從零開始入門 K8s | 應(yīng)用存儲和持久化數(shù)據(jù)卷:核心知識

    secret/configmap 用卷的形式掛載在容器中,讓容器中的程序可以通過 POSIX 接口來訪問配置數(shù)據(jù);PVPVC 就是今天要重點介紹的內(nèi)容。Persistent Volumes接下來
    發(fā)表于 10-16 10:10

    pv8651應(yīng)用電路

    pv
    發(fā)表于 05-22 09:39 ?1566次閱讀
    <b class='flag-5'>pv</b>8651應(yīng)用電路

    電纜材料PVC和PUR有什么區(qū)別

    本文開闡述了PVC的概念,其中包括PVC的組成結(jié)構(gòu)以及PVC的分類,其次闡述了pur的市場需求以及PUR熱熔膠優(yōu)點,最后則詳細的分析了電纜材料PVC和PUR兩者之間的區(qū)別。
    發(fā)表于 03-21 14:13 ?2.8w次閱讀

    pvc軟板有什么特性_pvc老化時間是多久

    pvc的英文全稱為poly vinyl chloride( PVC分子結(jié)構(gòu))的縮寫。通俗的來說我們常見的pvc是塑料裝飾材料的一種。它的化學(xué)名稱為聚氯乙烯。它是由氯乙烯單體經(jīng)聚合反應(yīng)而制成的無定形
    發(fā)表于 03-28 14:10 ?2.5w次閱讀
    <b class='flag-5'>pvc</b>軟板有什么特性_<b class='flag-5'>pvc</b>老化時間是多久

    光伏測試儀PV150/PV200/PV210數(shù)據(jù)導(dǎo)出手冊

    光伏測試安規(guī)儀PV150, 光伏IV曲線測試儀PV200,PV210, Solar Utility Pro or Survey 200R數(shù)據(jù)導(dǎo)出手冊。
    的頭像 發(fā)表于 08-24 17:04 ?2144次閱讀
    光伏測試儀<b class='flag-5'>PV</b>150/<b class='flag-5'>PV</b>200/<b class='flag-5'>PV</b>210數(shù)據(jù)導(dǎo)出手冊

    我們該如何正確使用PVC電工膠帶呢?

    PVC電工膠帶的主要作用是在電路、線路中起到絕緣、捆綁固定的保護作用,所以使用PVC電工膠帶時要能突出PVC電工膠帶的保護作用特點。
    的頭像 發(fā)表于 01-12 10:02 ?2638次閱讀

    PV88080 評估板

    PV88080 評估板
    發(fā)表于 03-14 19:49 ?0次下載
    <b class='flag-5'>PV</b>88080 評估板

    PV88090 評估板

    PV88090 評估板
    發(fā)表于 03-14 19:49 ?0次下載
    <b class='flag-5'>PV</b>88090 評估板

    如果有多個PV時,PVC又是如何匹配PV的呢?

    PersistentVolume(PV)是對具體存儲資源的描述,比如NFS、Ceph、GlusterFS等,通過PV可以訪問到具體的存儲資源;
    發(fā)表于 05-08 14:09 ?1822次閱讀

    PV88080 評估板

    PV88080 評估板
    發(fā)表于 07-05 20:16 ?0次下載
    <b class='flag-5'>PV</b>88080 評估板

    PV88090 評估板

    PV88090 評估板
    發(fā)表于 07-05 20:16 ?0次下載
    <b class='flag-5'>PV</b>88090 評估板