日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

工作日志——k8s pvpvc

發布時間:2025/3/19 c/c++ 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 工作日志——k8s pvpvc 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

近期調研了k8s pv和pvc相關知識,特與大家分享

簡介

PersistentVolume(pv)和PersistentVolumeClaim(pvc)是k8s提供的兩種API資源,用于抽象存儲細節。管理員關注于如何通過pv提供存儲功能而無需關注用戶如何使用,同樣的用戶只需要掛載pvc到容器中而不需要關注存儲卷采用何種技術實現。

pvc和pv的關系與pod和node關系類似,前者消耗后者的資源。pvc可以向pv申請指定大小的存儲資源并設置訪問模式。

生命周期

pv和pvc遵循以下生命周期:

  • 供應準備。管理員在集群中創建多個pv供用戶使用。
  • 綁定。用戶創建pvc并指定需要的資源和訪問模式。在找到可用pv之前,pvc會保持未綁定狀態。
  • 使用。用戶可在pod中像volume一樣使用pvc。
  • 釋放。用戶刪除pvc來回收存儲資源,pv將變成“released”狀態。由于還保留著之前的數據,這些數據需要根據不同的策略來處理,否則這些存儲資源無法被其他pvc使用。
  • 回收。pv可以設置三種回收策略:保留(Retain),回收(Recycle)和刪除(Delete)。?
    • 保留策略允許人工處理保留的數據。
    • 刪除策略將刪除pv和外部關聯的存儲資源,需要插件支持。
    • 回收策略將執行清除操作,之后可以被新的pvc使用,需要插件支持。

pv類型

pv支持以下類型:

  • GCEPersistentDisk
  • AWSElasticBlockStore
  • NFS
  • iSCSI
  • RBD (Ceph Block Device)
  • Glusterfs
  • HostPath (single node testing only – local storage is not supported in any way and WILL NOT WORK in a multi-node cluster)

pv屬性

pv擁有以下屬性:

  • 容量。目前僅支持存儲大小,未來可能支持IOPS和吞吐量等。
  • 訪問模式。ReadWriteOnce:單個節點讀寫。ReadOnlyMany:多節點只讀。ReadWriteMany:多節點讀寫。掛載時只能使用一種模式。
  • 回收策略。目前NFS和HostPath支持回收。 AWS、EBS、GCE、PD和Cinder支持刪除。
  • 階段。分為Available(未綁定pvc)、Bound(已綁定)、Released(pvc已刪除但資源未回收)、Failed(自動回收失敗)

pvc屬性

  • 訪問模式。與pv的語義相同。在請求資源時使用特定模式。
  • 資源。申請的存儲資源數量

nfs示例

安裝nfs服務

以ubuntu為例,執行以下指令安裝nfs server;

sudo apt-get install nfs-kernel-server
  • 1

安裝后修改/etc/exports,在文件末尾添加以下內容:

/ *(rw,insecure,no_root_squash)
  • 1

重啟nfs server:

$ sudo service rpcbind restart rpcbind stop/waiting rpcbind start/running, process 10558$ sudo service nfs-kernel-server restart* Stopping NFS kernel daemon [ OK ] * Unexporting directories for NFS kernel daemon... [ OK ] * Exporting directories for NFS kernel daemon... exportfs: /etc/exports [2]: Neither 'subtree_check' or 'no_subtree_check' specified for export "*:/".Assuming default behaviour ('no_subtree_check').NOTE: this default has changed since nfs-utils version 1.0.x[ OK ]* Starting NFS kernel daemon [ OK ]
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

pv和pvc創建與使用

本例中使用的yaml可參考這里

  • 首先創建pv和pvc
  • 2.
  • $ kubectl create -f nfs-pv.yaml persistentvolume "nfs" created$ kubectl create -f nfs-pvc.yaml persistentvolumeclaim "nfs" created
    • 1
    • 2
    • 3
    • 4
    • 5
  • 接下來創建nfs-busybox rc。對應的pod會向存儲卷中不定期的更新index.html
  • $ kubectl create -f nfs-busybox-rc.yaml replicationcontroller "nfs-busybox" created
    • 1
    • 2
  • 再創建nfs-web rc和service。對應的pod會將存儲卷掛載到nginx的靜態目錄中,這樣我們可以通過service來訪問index.html。
  • $ kubectl create -f nfs-web-rc.yaml replicationcontroller "nfs-web" created$ kubectl create -f nfs-web-service.yaml service "nfs-web" created
    • 1
    • 2
    • 3
    • 4
    • 5
  • 查看結果。可以看到index.html會不定期的更新顯示時間。
  • # 查看nfs-web的ip $ kubectl get svc NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes 10.0.0.1 <none> 443/TCP 9h nfs-web 10.0.0.18 <none> 80/TCP 2m# 訪問nfs-web $ curl 10.0.0.18 Tue May 24 11:40:53 UTC 2016 nfs-busybox-c2vf2$ curl 10.0.0.18 Tue May 24 11:40:59 UTC 2016 nfs-busybox-c2vf2

    轉載于:https://my.oschina.net/xiaominmin/blog/1631454

    與50位技術專家面對面20年技術見證,附贈技術全景圖

    總結

    以上是生活随笔為你收集整理的工作日志——k8s pvpvc的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。