kubernetes nfs storageclass 创建
修改nfs ip和路径即可
---
apiVersion: v1
kind: PersistentVolume
metadata:
finalizers:
- kubernetes.io/pv-protection
name: nfs-pv-nfs-bak
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 500Gi
nfs:
path: /data
server: 172.16.0.13
persistentVolumeReclaimPolicy: Retain
storageClassName: nfs-storageclass-provisioner
volumeMode: Filesystem
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
finalizers:
- kubernetes.io/pvc-protection
name: nfs-pvc-nfs-bak
namespace: kube-system
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 500Gi
storageClassName: nfs-storageclass-provisioner
volumeMode: Filesystem
volumeName: nfs-pv-nfs-bak
---
apiVersion: v1
kind: ServiceAccount
metadata:
name: eip-nfs-client-provisioner
namespace: kube-system
resourceVersion: '1594241'
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: eip-nfs-client-provisioner-runner
resourceVersion: '1594242'
rules:
- apiGroups:
- ''
resources:
- persistentvolumes
verbs:
- get
- list
- watch
- create
- delete
- apiGroups:
- ''
resources:
- persistentvolumeclaims
verbs:
- get
- list
- watch
- update
- apiGroups:
- storage.k8s.io
resources:
- storageclasses
verbs:
- get
- list
- watch
- apiGroups:
- ''
resources:
- events
verbs:
- create
- update
- patch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: eip-run-nfs-client-provisioner
resourceVersion: '1594243'
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: eip-nfs-client-provisioner-runner
namespace: kube-system
subjects:
- kind: ServiceAccount
name: eip-nfs-client-provisioner
namespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: eip-leader-locking-nfs-client-provisioner
namespace: kube-system
resourceVersion: '1594244'
rules:
- apiGroups:
- ''
resources:
- endpoints
verbs:
- get
- list
- watch
- create
- update
- patch
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: eip-leader-locking-nfs-client-provisioner
namespace: kube-system
resourceVersion: '1594245'
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: eip-leader-locking-nfs-client-provisioner
namespace: kube-system
subjects:
- kind: ServiceAccount
name: eip-nfs-client-provisioner
namespace: kube-system
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: eip-nfs-nfs-bak
name: eip-nfs-nfs-bak
namespace: kube-system
spec:
replicas: 1
selector:
matchLabels:
app: eip-nfs-nfs-bak
strategy:
type: Recreate
template:
metadata:
labels:
app: eip-nfs-nfs-bak
spec:
containers:
- env:
- name: PROVISIONER_NAME
value: nfs-nfs-bak
- name: NFS_SERVER
value: 172.16.0.13
- name: NFS_PATH
value: /data
image: 'eipwork/nfs-client-provisioner:v3.1.0-k8s1.11'
name: nfs-client-provisioner
volumeMounts:
- mountPath: /persistentvolumes
name: nfs-client-root
serviceAccountName: eip-nfs-client-provisioner
volumes:
- name: nfs-client-root
persistentVolumeClaim:
claimName: nfs-pvc-nfs-bak
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
annotations:
k8s.eip.work/storageType: nfs_client_provisioner
name: nfs-bak
parameters:
archiveOnDelete: 'false'
provisioner: nfs-nfs-bak
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer