中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

k8s共享存儲(chǔ)之nfs

云計(jì)算

特別說(shuō)明:測(cè)試使用,不建議生產(chǎn)環(huán)境

創(chuàng)新互聯(lián)建站專注于科爾沁左翼網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供科爾沁左翼營(yíng)銷(xiāo)型網(wǎng)站建設(shè),科爾沁左翼網(wǎng)站制作、科爾沁左翼網(wǎng)頁(yè)設(shè)計(jì)、科爾沁左翼網(wǎng)站官網(wǎng)定制、小程序定制開(kāi)發(fā)服務(wù),打造科爾沁左翼網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供科爾沁左翼網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。

1、在master節(jié)點(diǎn)配置(node1)

1)yum安裝nfs

# yum -y install nfs-utils

NFS的關(guān)鍵工具包括:

主要配置文件:/etc/exports;

NFS文件系統(tǒng)維護(hù)命令:/usr/bin/exportfs;

共享資源的日志文件: /var/lib/nfs/*tab;

客戶端查詢共享資源命令: /usr/sbin/showmount;

端口配置: /etc/sysconfig/nfs。

2)新建共享目錄

# mkdir -p /data/volunes

3)設(shè)置Nfs權(quán)限

# cat /etc/exports

權(quán)限參數(shù)說(shuō)明:

ro ?只讀訪問(wèn)

rw ?讀寫(xiě)訪問(wèn)

sync ? ?所有數(shù)據(jù)在請(qǐng)求時(shí)寫(xiě)入共享

async ? nfs在寫(xiě)入數(shù)據(jù)前可以響應(yīng)請(qǐng)求

secure ?nfs通過(guò)1024以下的安全TCP/IP端口發(fā)送

insecure ? ?nfs通過(guò)1024以上的端口發(fā)送

wdelay ?如果多個(gè)用戶要寫(xiě)入nfs目錄,則歸組寫(xiě)入(默認(rèn))

no_wdelay ? 如果多個(gè)用戶要寫(xiě)入nfs目錄,則立即寫(xiě)入,當(dāng)使用async時(shí),無(wú)需此設(shè)置

hide ? ?在nfs共享目錄中不共享其子目錄

no_hide 共享nfs目錄的子目錄

subtree_check ? 如果共享/usr/bin之類(lèi)的子目錄時(shí),強(qiáng)制nfs檢查父目錄的權(quán)限(默認(rèn))

no_subtree_check ? ?不檢查父目錄權(quán)限

all_squash ?共享文件的UID和GID映射匿名用戶anonymous,適合公用目錄

no_all_squash ? 保留共享文件的UID和GID(默認(rèn))

root_squash root用戶的所有請(qǐng)求映射成如anonymous用戶一樣的權(quán)限(默認(rèn))

no_root_squash ?root用戶具有根目錄的完全管理訪問(wèn)權(quán)限(不安全)

anonuid=xxx 指定nfs服務(wù)器/etc/passwd文件中匿名用戶的UID

anongid=xxx 指定nfs服務(wù)器/etc/passwd文件中匿名用戶的GID

4)啟動(dòng)服務(wù)

# systemctl enable nfs.service

# systemctl start nfs.service

# exportfs ?-arv #不用重啟nfs服務(wù),配置文件就會(huì)生效

2、在節(jié)點(diǎn)node2和node3配置Nfs

1)安裝

yum -y install nfs-utils

2)在node3和node2上掛載:

# mount -t nfs 172.160.45.160:/data/volunes/ /mnt

3、檢查

1)#查看 RPC 服務(wù)的注冊(cè)狀況

rpcinfo -p localhost

2)#showmount測(cè)試

showmount -e 172.160.45.160

4、kubernetes使用NFS共享存儲(chǔ)有兩種方式:

#手動(dòng)方式靜態(tài)創(chuàng)建所需要的PV和PVC;

#通過(guò)創(chuàng)建PVC動(dòng)態(tài)地創(chuàng)建對(duì)應(yīng)PV,無(wú)需手動(dòng)創(chuàng)建PV;

################靜態(tài)創(chuàng)建#######################

1)靜態(tài)申請(qǐng)PV卷

PersistentVolumes,是k8s抽象化的存儲(chǔ)資源,主要包括存儲(chǔ)能力、訪問(wèn)模式、存儲(chǔ)類(lèi)型、回收策略等關(guān)鍵信息.PV是k8s實(shí)際對(duì)接存儲(chǔ)后端的真正入口;

#創(chuàng)建pv對(duì)應(yīng)目錄

# mkdir -p /data/volunes/v{1,2,3}

#配置exportrs

# cat /etc/exports

#立即生效

# exportfs ?-arv

2)創(chuàng)建pv文件

# vim nfs-pv1.yaml

apiVersion: v1

kind: PersistentVolume

metadata:

name: nfs-pv1

labels:

pv: nfs-pv1

spec:

capacity:

storage: 1Gi

accessModes:

- ReadWriteMany

persistentVolumeReclaimPolicy: Recycle

storageClassName: nfs

nfs:

path: /data/volunes/v1

server: 172.160.45.160

nfs-pv2.yaml類(lèi)似

配置說(shuō)明:

① capacity 指定 PV 的容量為 1G。

② accessModes 指定訪問(wèn)模式為 ReadWriteOnce,支持的訪問(wèn)模式有:

ReadWriteOnce(RWO):讀寫(xiě)權(quán)限,但是只能被單個(gè)節(jié)點(diǎn)掛載;

ReadOnlyMany(ROX):只讀權(quán)限,可以被多個(gè)節(jié)點(diǎn)掛載;

ReadWriteMany(RWX):讀寫(xiě)權(quán)限,可以被多個(gè)節(jié)點(diǎn)掛載;

③ persistentVolumeReclaimPolicy 指定當(dāng) PV 的回收策略為 Recycle,支持的策略有:

Retain(保留)- 保留數(shù)據(jù),不會(huì)再分配給pvc,需要管理員手工清理數(shù)據(jù);

Recycle(回收)- 清除 PV 中的數(shù)據(jù),保留pv資源,可以留供其他pvc使用;

Delete(刪除)- 刪除整個(gè)pv資源及內(nèi)部的數(shù)據(jù);

④ storageClassName 指定 PV 的 class 為 nfs。相當(dāng)于為 PV 設(shè)置了一個(gè)分類(lèi),PVC 可以指定 class 申請(qǐng)相應(yīng) class 的 PV。

⑤ 指定 PV 在 NFS 服務(wù)器上對(duì)應(yīng)的目錄。

#創(chuàng)建pv的pod

# kubectl create-f nfs-pv1.yaml

# kubectl get pv

狀態(tài)Available,表示 pv就緒,可以被 PVC 申請(qǐng);

3)創(chuàng)建PVC

PersistentVolumeClaims,是對(duì)PV資源的一種聲明,pvc綁定實(shí)體資源pv后,pod通過(guò)綁定pvc來(lái)使用pv資源.PVC是k8s的一種抽象化的聲明式綁定存儲(chǔ)資源的管理模式的中間層,pod無(wú)法直接通過(guò)pv使用存儲(chǔ)資源,必須經(jīng)過(guò)pvc,而pvc必須要綁定pv實(shí)體后,才可被pod使用;

# vim nfs-pvc2.yaml

apiVersion: v1

kind: PersistentVolumeClaim

metadata:

name: nfs-pvc2

spec:

accessModes:

- eadWriteMany

resources:

requests:

storage: 1Gi

storageClassName: nfs

selector:

matchLabels:

pv: nfs-pv2

執(zhí)行yaml文件創(chuàng)建 pvc

# kubectl create -f nfs-pvc1.yaml

查看pv資源

備注:pv對(duì)應(yīng)綁定的PVC

4)創(chuàng)建pod

[root@node1 yaml]# vim nfs-nginx.yaml

apiVersion: v1

kind: ReplicationController

metadata:

name: nginx-test

labels:

name: nignx-test

spec:

replicas: 3

selector:

name: nginx-test

template:

metadata:

labels:

name: nginx-test

spec:

containers:

- name: web01

image: docker.io/nginx:1.14.2

volumeMounts:

- mountPath: /usr/share/nginx/html/

name: nfs-pv1

- mountPath: /var/log/nginx/

name: nfs-pv2

ports:

- containerPort: 80

volumes:

- name: nfs-pv1

persistentVolumeClaim:

claimName: nfs-pvc1

- name: nfs-pv2

persistentVolumeClaim:

claimName: nfs-pvc2

備注:

# nfs-pv1存儲(chǔ)網(wǎng)頁(yè)文件,nfs-pv2日志文件

#執(zhí)行文件

# kubectl create -f nfs-nginx.yaml

# kubectl get pods -o wide

#創(chuàng)建nfs-nginx-server文件

# cat nfs-nginx-svc.yaml

apiVersion: v1

kind: Service

metadata:

name: nginx-test

labels:

name: nginx-test

spec:

type: NodePort

ports:

- port: 80

protocol: TCP

targetPort: 80

name: http

nodePort: 30088

selector:

name: nginx-test

#執(zhí)行文件

# kubectl create -f nfs-nginx-svc.yaml

# kubectl get svc

5)驗(yàn)證 PV 是否可用

測(cè)試頁(yè)面:

#內(nèi)部

#外網(wǎng)

備注說(shuō)明: nfs自身沒(méi)有冗余能力,數(shù)據(jù)盤(pán)損壞易丟失數(shù)據(jù);建議使用:glusterfs或cephfs分布式存儲(chǔ);

當(dāng)前標(biāo)題:k8s共享存儲(chǔ)之nfs
網(wǎng)站URL:http://www.rwnh.cn/article20/cpodjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)、Google自適應(yīng)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作、定制開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
固镇县| 建昌县| 肇源县| 岳池县| 务川| 辽宁省| 察隅县| 遵义县| 合作市| 沈阳市| 进贤县| 宣汉县| 麻栗坡县| 香格里拉县| 遂平县| 富宁县| 沅江市| 岚皋县| 肃北| 上虞市| 拜泉县| 潞西市| 手机| 大足县| 天台县| 青阳县| 泌阳县| 呼和浩特市| 龙里县| 固始县| 长阳| 裕民县| 定陶县| 明溪县| 洛宁县| 阆中市| 芦山县| 大洼县| 呼图壁县| 车险| 沧州市|