k8s pvc + pv + nfs使用示例_经验分享
k8s pvc + pv + nfs使用示例_经验分享_02

deploy
[root@m-1 pv-pvc]# cat deploy.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-dep1
  namespace: default
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - image: nginx:1.14-alpine
        imagePullPolicy: IfNotPresent
        name: nginx
        volumeMounts:
        - mountPath: /usr/share/nginx/html
          name: wwwroot
      restartPolicy: Always
      volumes:
      - name: wwwroot
        persistentVolumeClaim:
          claimName: my-pvc
pvc
[root@m-1 pv-pvc]# cat pvc.yaml 
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-pvc
  namespace: default
spec:
  accessModes:
  - ReadWriteMany
  resources:
    requests:
      storage: 5Gi
  storageClassName: storage-nfs
  volumeMode: Filesystem
pv
[root@m-1 pv-pvc]# cat pv.yaml 
apiVersion: v1
kind: PersistentVolume
metadata:
  name: my-pv
spec:
  accessModes:
  - ReadWriteMany
  capacity:
    storage: 5Gi
  nfs:
    path: /home/NFS/nginx
    server: 192.168.116.101
  persistentVolumeReclaimPolicy: Retain
  volumeMode: Filesystem
svc
[root@m-1 pv-pvc]# cat svc.yaml 
apiVersion: v1
kind: Service
metadata:
  name: nginx-dep1
  namespace: default
spec:
  ports:
  - nodePort: 20665
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: nginx
  type: NodePort