国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

k8s教程(Volume篇)-PV詳解

這篇具有很好參考價值的文章主要介紹了k8s教程(Volume篇)-PV詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

01 引言

聲明:本文為《Kubernetes權威指南:從Docker到Kubernetes實踐全接觸(第5版)》的讀書筆記

在上一篇博客《k8s教程(Volume篇)-持久卷工作原理》,我們了解了持久卷的工作原理,本文繼續(xù)深入學習PV。

02 PV詳解

PV作為對存儲資源的定義,主要涉及存儲能力、訪問模式、存儲類型、回收策略、后端存儲類型等關鍵信息的設置。

Kubernetes支持的PV類型如下:

類型 描述
AWSElasticBlockStore AWS公有云提供的Elastic Block Store
AzureFile Azure公有云提供的File
AzureDisk Azure公有云提供的Disk
CephFS 一種開源共享存儲系統(tǒng)
Cinder OpenStack塊存儲系統(tǒng)
FC (Fibre Channel) 光纖存儲設備
FlexVolume 一種插件式的存儲機制
Flocker 一種開源共享存儲系統(tǒng)
GCEPersistentDisk GCE公有云提供的Persistent Disk
Glusterfs 一種開源共享存儲系統(tǒng)
HostPath 宿主機目錄,僅用于單機測試
iSCSI iSCSI存儲設備
Local 本地存儲設備,從Kubernetes 1.7版本開始引入,到1.14版本時達到穩(wěn)定版本,目前可以通過指定塊設備(Block Device) 提供Local PV,或通過社區(qū)開發(fā)的sig-storage-local-static-provisioner插件管理Local PV的生命周期
NFS 網絡文件系統(tǒng)
Portworx Volumes Portworx提供的存儲服務
Quobyte Volumes Quobyte提供的存儲服務
RBD (Ceph Block Device) Ceph塊存儲
ScaleIO Volumes DellEMC的存儲設備
StorageOS StorageOS提供的存儲服務
VsphereVolume VMWare提供的存儲系統(tǒng)

2.1 示例配置詳解

下面的示例聲明的PV具有如下屬性:5GiB存儲空間,存儲卷模式為 Filesystem,訪問模式為ReadWriteOnce,存儲類型為slow(要求在系統(tǒng)中己存在名稱為“slow”的StorageClass),回收策略為Recycle,并且后端存儲類型為nfs (設置了 NFS ServerIP地址和路徑),同時設置了掛載選項 (mountOptions)。

apiVersion: v1
kind: PersistentVolume
metadata:
	name: pv1
spec:
	capacity:
		Storage: 5Gi
	volumeMode: Filesystem 
	accessModes:
		- ReadwriteOnce
	persistentVolumeReclaimPolicy: Recycle
	storageClassName: slow 
	mountoptions:
		- hard
		- nfsvers=4.1
	nfs:
		path: /tmp
		server: 172.17.0.2

PV資源對象需要設置的關鍵配置參數(shù)如下:

2.1.1 存儲容量 (Capacity)

描述存儲的容量,目前僅支持對存儲空間的設置 (storage=xx),未來可能加入IOPS、吞吐率等設置。

2.1.2 存儲卷模式 (Volume Modes)

可以設置的選項包括Filesystem(文件系統(tǒng),默認值)和Block(塊設備):

  • 文件系統(tǒng)模式的PV將以目錄(Directory)形式掛載到Pod內;
  • 塊設備,如果設備是空的,Kubernetes則會自動在塊設備上創(chuàng)建一個文件系統(tǒng)。支持塊設備的存儲類型會以裸設備 (Raw Block Device) 的形式掛載到容器內,并且不會創(chuàng)建任何文件系統(tǒng),適用于需要直接操作裸設備(速度最快)的應用程序。

目前有以下PV類型支持裸塊設備類型:AWSElasticBlockStore AzureDisk、 FC ( Fibre Channel ) 、 GCEPersistentDisk isCsI Local volume、 OpenStack Cinder、 RBD (Ceph Block Device) VsphereVolume。

下面的示例使用了塊設備的PV定義:

apiVersion: v1
kind: PersistentVolume 
metadata:
	name: block-pv
spec:
	capacity:
		storage: 10Gi 
	accessModes:
		- ReadWriteOnce
	persistentVolumeReclaimPolicy: Retain
	volumeMode: Block
	fd:
		targetWWNs: ["50060e801049cfd1"] 
		lun: 0
		readonly: false

2.1.3 訪問模式 (Access Modes)

PV存儲卷在掛載到宿主機系統(tǒng)上時,可以設置不同的訪問模式 (Access Modes。PV支持哪些訪問模式由存儲提供商提供支持,例如NFS可以支持多個客戶端同時讀寫(ReadWriteMany)模式,但一個特定的NFS PV也可以以只讀(Read-only)模式導出到服務器上。

Kubernetes支持的訪問模式如下:

  • ReadWriteOnce (RWO):讀寫權限,并且只能被單個Node掛載;
  • ReadOnlyMany (ROX):只讀權限,允許被多個Node掛載;
  • ReadWriteMany(RWX):讀寫權限,允許被多個Node掛載。

某些PV可能支持多種訪問模式,但PV在掛載時只能使用一種訪問模式,多種訪問模式不能同時生效。
k8s pv retain,# k8s,kubernetes,云原生,容器化技術

2.1.4 存儲類別(Class)

PV可以設定其存儲的類別,通過 storageClassName 參數(shù)指定一個 StorageClass 資源對象的名稱。具有特定類別的PV只能與請求了該類別的PVC綁定。未設定類別的PV則只能與不請求任何類別的PVC綁定。

2.1.5 回收策略 (Reclaim Policy)

通過PV定義中的persistentVolumeReclaimPolicy字段進行設置,可選項如下:

  • Retain保留數(shù)據(jù),需要手工處理;
  • Recycle簡單清除文件的操作(例如運行rm -rf /thevolume/*命令),只有 NFS 和 HostPath 兩種類型的 PV支持 Recycle 策略。
  • DeletePV相連的后端存儲完成Volume的刪除操作,AWSElasticBlockStore、 GCEPersistentDis、 AzureDisk和Cinder類型的PV支持 Delete策略。

2.1.6 掛載選項 (Mount Options)

在將PV掛載到一個Node上時,根據(jù)后端存儲的特點,可能需要設置額外的掛載選項的參數(shù),這個可以在PV定義中的mountOptions字段進行設置。

下面的例子為對一個類型為gcePersistentDiskPV設置掛載選項的參數(shù):

apiVersion: "V1"
kind: "PersistentVolume" 
metadata:
	name: gce-disk-1 
spec:
	capacity:
		storage: "10Gi" 
	accessModes:
		- "ReadwriteOnce" 
	mountoptions:
		- hard
		- nolock
		- nfsvers=3
	gcePersistentDisk:
		fsType: "ext4"
		pdName: "gce-disk-1"

目前,以下PV類型支持設置掛載選項:AWSElasticBlockStore AzureDisk、 AzureFile、 CephFS、 Cinder ( OpenStack block storage) GCEPersistentDisk、 Glusterfs、 NFS、 Quobyte Volumes、 RBD ( Ceph Block Device)、 StorageOS、 VsphereVolume、 iSCSI

注意Kubernetes不會對掛載選項進行驗證,如果設置了錯誤的掛載選項, 則掛載將會失敗。

2.1.6 節(jié)點親和性 (Node Affinity)

PV可以設置節(jié)點親和性來限制只能通過某些Node訪問Volume,可以在PV定義的nodeAffinity字段中進行設置。使用這些Volume的Pod將被調度到滿足條件的 Node上。

公有云提供的存儲卷(如:AWSElasticBlockStore、GCEPersistentDisk、 AzureDisk等)都由公有云自動完成節(jié)點親和性設置,無須用戶手工設置。

對于 Local類型的PV,需要手工設置,例如:

apiVersion: v1
kind: PersistentVolume 
metadata:
	name: example-local-pv 
spec:
	capacity:
		storage: 5Gi 
	accessModes:
	- ReadwriteOnce
	persistentVolumeReclaimPolicy: Delete 
	storageclassName: local-storage 
	1ocal:
		path: /mnt/disks/ssal
	nodeAffinity:
		required:
		nodeSelectorTerms:
		- matchExpressions:
		  - key: kubernetes.io/hostname 
			operator: In 
			values:
			- my-node

某個PV在生命周期中可能處于以下4個階段(Phase)之一:

  • Available:可用狀態(tài),還未與某個PVC綁定;
  • Bound:已與某個PVC綁定;
  • Released:與之綁定的PVC已被刪除,但未完成資源回收,不能被其他 PVC使用;
  • Failed:自動資源回收失敗。

在定義了PV資源之后,就需要通過定義PVC來使用PV資源了。

03 文末

本文主要講解了PV的一些概念以及配置詳解,希望能幫助到大家,謝謝大家的閱讀,本文完!文章來源地址http://www.zghlxwxcb.cn/news/detail-604697.html

到了這里,關于k8s教程(Volume篇)-PV詳解的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【云原生】K8S存儲卷:PV、PVC詳解

    【云原生】K8S存儲卷:PV、PVC詳解

    容器磁盤上的文件的生命周期是短暫的,這就使得在容器中運行重要應用時會出現(xiàn)一些問題。首先,當容器崩潰時,kubelet 會重啟它,但是容器中的文件將丟失——容器以干凈的狀態(tài)(鏡像最初的狀態(tài))重新啟動。其次,在Pod中同時運行多個容器時,這些容器之間通常需要共

    2024年02月12日
    瀏覽(21)
  • Kubernetes(k8s)實戰(zhàn):深入詳解Volume,詳解k8s文件同步存儲

    Kubernetes(k8s)實戰(zhàn):深入詳解Volume,詳解k8s文件同步存儲

    Volume官網:https://kubernetes.io/docs/concepts/storage/volumes/ On-disk files in a Container are ephemeral, which presents some problems for non-trivial applications when running in Containers. First, when a Container crashes, kubelet will restart it, but the files will be lost - the Container starts with a clean state. Second, when running Containers to

    2024年02月13日
    瀏覽(21)
  • K8S動態(tài)PV

    pv和pvc存儲卷 存儲卷: emptyDir容器內部,隨著pod銷毀,emptyDir也會消失,不能做數(shù)據(jù)持久化 hostPath:持久化存儲數(shù)據(jù),可以和節(jié)點上目錄做掛載。pod被銷毀了數(shù)據(jù)還在 NFS:一臺機器,提供pod內容器所有的掛載點 pv和pvc: pvc就是pod發(fā)起得掛載得請求 pv:持久化存儲得目錄,Re

    2024年01月23日
    瀏覽(16)
  • k8s pv與pvc

    k8s pv與pvc

    1.前言 PV 是 Kubernetes 集群中的一種資源對象,它代表著一塊物理存儲設備,例如磁盤、網絡存儲或云存儲等。PV 可以被多個 Pod 共享,并且可以獨立于 Pod 存在。PV 可以配置不同的訪問模式 (Access Modes),例如 ReadWriteOnce 、 ReadOnlyMany 或 ReadWriteMany ,以確定 PV 可以被多少個 Pod 同

    2024年01月21日
    瀏覽(20)
  • K8s中的PV的介紹

    PV 的生命周期 ?PV 生命周期總共四個階段 : Available(可用) —— 可用狀態(tài),尚未被 PVC 綁定。 Bound(已綁定 )—— 綁定狀態(tài),已經與某個 PVC 綁定。 Released(已釋放) —— 與之綁定的 PVC 已經被刪除,但資源尚未被集群回收。 Failed(失敗 )—— 當刪除 PVC 清理資源,自動

    2024年02月08日
    瀏覽(24)
  • k8s存儲卷-動態(tài)PV

    k8s存儲卷-動態(tài)PV

    存儲卷: EmptyDir:容器內部,隨著pod銷毀,emptyDir也會消失,不能做數(shù)據(jù)持久化 HostPath:持久化存儲數(shù)據(jù),可以和節(jié)點上目錄做掛載,pod被銷毀了數(shù)據(jù)還在 NFS:一臺機器,提供pod發(fā)起的掛載的請求 PVC就是pid發(fā)起掛載的反請求: PV持久化存儲的目錄,ReadWriteMary ??????????

    2024年01月17日
    瀏覽(15)
  • k8s中強制刪除pv

    k8s中強制刪除pv

    K8s?集群內有一個已經不再使用的?PV,雖然已經刪除了與其關聯(lián)的?Pod 及?PVC,并對其執(zhí)行了刪除命令,但仍無法正常刪除,一直處于?Terminating 狀態(tài): ?解決辦法: 1. 獲取pv信息 ?2. 解除pv鎖定 ?3. 解除pvc鎖定 4. 【如果還沒刪掉】刪除PV 5. 【如果還沒刪掉】刪除PVC

    2024年02月15日
    瀏覽(15)
  • PV & PVC in K8s

    在Kubernetes中,PV(Persistent Volume)和PVC(Persistent Volume Claim)是用于管理持久化存儲的重要資源對象。PV表示存儲的實際資源,而PVC表示對PV的聲明性要求。當應用程序需要使用持久化存儲時,它可以通過創(chuàng)建PVC來請求和使用PV。以下是使用PV和PVC時的一些注意事項: 定義存儲類

    2024年02月09日
    瀏覽(24)
  • k8s ------存儲卷(PV、PVC)

    k8s ------存儲卷(PV、PVC)

    目錄 一:為什么需要存儲卷? 二:emptyDir存儲卷? ?三:hostPath存儲卷? 四:nfs共享存儲卷? ?五:PVC 和 PV 1、PVC 和 PV介紹 2、PV和PVC之間的相互作用遵循的生命周期 3、PV 的4 種狀態(tài) 4、一個PV從創(chuàng)建到銷毀的具體流程 六:靜態(tài)創(chuàng)建pv和pvc資源由pod運用過程 ?1、配置nfs存儲 ?

    2024年02月13日
    瀏覽(19)
  • k8s--動態(tài)pvc和pv

    k8s--動態(tài)pvc和pv

    目錄 前情回顧 動態(tài)pv 實驗模擬 步驟一:在stor01節(jié)點上安裝nfs,并配置nfs服務 接下來在matser01上配置 步驟二:創(chuàng)建 Service Account,用來管理 NFS Provisioner 在?k8s?集群中運行的權限和動態(tài)規(guī)則 步驟三:使用 Deployment 來創(chuàng)建 NFS Provisioner? 部署nfs-provisioners插件: 步驟四:創(chuàng)建 St

    2024年01月24日
    瀏覽(38)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包