需求:
在k8s集群里的某個模塊生成的目錄文件或者更新的目錄文件,存儲到外面某台服務器上
1.安裝nfs服務(192.168.1.2 Ubuntu 16.04)
apt-get install nfs-kernel-server nfs-common
2.配置nfs掛載目錄
vi /etc/exports /data *(rw,sync,no_root_squash)
/data:共享目錄
*:所有主機能訪問
rw:讀寫權限
ro:只讀
sync:同步
no_root_squash:不降低root的權限
3.重啟nfs
/etc/init.d/nfs-kernel-server restart
4.查看
showmount
showmount -e
5.另外,特別注意,開放端口,不然其他主機不能訪問
tcp 111 udp 111 tcp 2049 udp 4046
6.更新k8s模塊的yaml
apiVersion: apps/v1 kind: Deployment metadata: name: newshomebg namespace: mod labels: app: newshomebg spec: replicas: 1 selector: matchLabels: app: newshomebg template: metadata: labels: app: newshomebg spec: containers: - name: newshomebg image: xxx ports: - containerPort: 8080 env: - name: SPRING_DATASOURCE_USERNAME value: 'root' volumeMounts: - name: nfs-volume #設置的名稱,和下面的name要一樣的 mountPath: /home/uploads #需要掛載的目錄 subPath: newshomebg #卷的子目錄,也就是在nfs服務目錄里生成這個子目錄 volumes: - name: nfs-volume #這個卷的名稱,和上面的name要一樣的 nfs: #這里是nfs掛載 server: 192.168.1.2 #nfs服務器的ip或者域名 path: "/data" #nfs服務配置的掛載目錄 imagePullSecrets: - name: xxx
以上紅色標記的就等同於命令:mount 192.168.1.2:/data/newshomebg /home/uploads
