儲存分類:
直連式儲存,集中式共享儲存,分布式儲存
檔案儲存,塊儲存,物件儲存
das,nas,san
das屬於直連式儲存,將儲存裝置通過scsi介面或者光纖通道直接和主機板連線,不能實現資料共享
nas和san屬於集中式共享儲存
nas使用nfs和cifs(原來叫smb,微軟的)協議
san分為fc san和ip san
ip san使用iscsi技術
nfs實現linux之間共享,smaba基於cifs協議,實現linux和windows之間檔案共享
ceph屬於分布式共享系統
k8s集群中支援的持久儲存主要包括:
1、node節點儲存
又分為:隨機卷emptydir和固定卷hostpath
2、集中式儲存nfs
3、分布式儲存ceph
4、特殊卷configmap和secret
建立pod時,欄位volumes支援的儲存型別主要包括:
$ kubectl explain pod.spec.volumes
cephfs
cinder
configmap
emptydir
glusterfs
hostpath
iscsi
nfspersistentvolumeclaim
rbdsecret
建立pod或控制器時,可以直接使用某個後端儲存(如nfs)作為其volumes
也可以使用pvc作為其後端volumes,pvc和上面的nfs等是平級關係
使用pvc作為其後端volumes時,訪問順序是pvc---pv---後端儲存
建立使用隨機卷emptydir的pod
apiversion: v1
kind: pod
metadata:
labels:
run: nginx
name: podxx
spec:
volumes:
- name: vol1
emptydir: {} #使用節點目錄,並且隨機
containers:
- image: nginx
name: nginx
volumemounts:
- mountpath: /xx #在容器內部掛載的目錄
name: vol1
- image: busybox
name: busybox
command: ['sh','-c','sleep 5000']
volumemounts:
- mountpath: /yy
name: vol1
建立使用固定卷的pod
apiversion: v1
kind: pod
metadata:
labels:
run: nginx
name: podxx
spec:
volumes:
- name: vol1
hostpath:
path: /aa #自動在pod所在的節點上建立
containers:
- image: nginx
name: nginx
volumemounts:
- mountpath: /xx
name: vol1
- image: busybox
name: busybox
command: ['sh','-c','sleep 5000']
volumemounts:
- mountpath: /yy
k8s 資料持久化儲存
pod重啟,資料依然存在 1 找一台伺服器作為nfs服務端 1 安裝nfs yum install y nfs utils 2 設定掛載路徑 vi etc exports data nfs rw,no root squash 3 設定的掛載路徑首先保證有這個路徑,沒有則建立 mkdir data m...
k8s持久化儲存PV PVC部署
安裝nfs utils rpcbindyum install nfs utils rpcbind nfs utils所有節點都需要安裝 啟動systemctl restart rpcbind nfs編輯共享配置檔案 在主機節點編輯 vim etc exports寫入 mnt share rw 如果沒...
K8S持久化儲存PV PVC筆記
kubernetes 使用persistent volume和persistent volume claim 兩種api資源來管理儲存。可以通過兩種方式配置pv 靜態或動態。關於persistentvolume的訪問方式 在cli 命令列介面 中,訪問模式縮寫為 特別注意 卷只能一次使用一種訪問模式...