小記相關東西。
HostPath
一個 Kubernetes 內建功能。把節點(node)把路徑分享到Pod。
但這個方法無法多節點(Node)共享檔案。
Storage Read/Write
讀跟寫機制:
- Read Only Many
同時很多人讀不能寫 - Read Write Once
同時只能一個用,他可以讀可以寫 - Read Write Many
他可以很多人使用,可同時讀寫。
NFS 是Read Write Many
安全機制
PodSecurityPolicy
docker 的 volumes
各節點都可以取得 volumes 問題
- volume
- container 加入 volumeMounts 設定
私有雲
azureDisk
awsElasticBlockStore
gcePersistentDisk
GephFS
Glusters
iscsi
nfs
Volume Type:
- CSI
- downwardAPI
- emptyDir
- hostPath
- configMap
- Secret
Flexible management - persistentVolumeClaim
persistentVolume 好處
一般掛載 Volume 掛載NFS ,修改Volume,能不能讓所有Pod不需要重啟,透過PV抽象出來。
有兩種可以使用
- PV
- PVC
在 POD 裡面我們使用PVC,儲存設備有什麼資源、儲存大小、儲存模式(Readwrite Readonly One/Many),以Clinet端角度去思考。PVC會找符合PV條件使用。
PV 沒 namespace,PVC有 namespace。
PVC 移掉
Retain
Delete
Recelile
bind 問題
無法選最優的選擇。
可以強制使用哪一個PV。
- 安裝NFS
- PV去使用NFS
- PVC去綁PV
- Pod 曲榜 PVC
取決StorageProvider 是否有支援PVC/PV。
如NFS沒有Capacity 概念,不會管硬碟空間多大。
CSI
PV/PVC
PV,PVC都是靜態部屬(static Provisioning)。管理不需要手動建立PV,而根據PVC需求自動建置。
StorageClass
NFS StorageClass Provisioner
NFS Server 不是 Provisioner。