vi nfs-pv.yml
apiVersion: v1
kind: PersistentVolume
metadata:
name: nfs-pv
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy:
Retain
nfs:
path: /home/nfs
server: 172.16.135.240
readOnly: false
kubectl apply -f nfs-pv.yml
kubectl get pv
vi nfs-pvc.yml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
# any PVC name
name: nfs-pvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
kubectl apply -f nfs-pvc.yml
kubectl get pvc
vi nginx-nfs.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-nfs
labels:
name: nginx-nfs
spec:
replicas: 3
selector:
matchLabels:
app: nginx-nfs
template:
metadata:
labels:
app: nginx-nfs
spec:
containers:
- name: nginx-nfs
image: nginx
ports:
- name: web
containerPort: 80
volumeMounts:
- name: nfs-share
mountPath: /usr/share/nginx/html
volumes:
- name: nfs-share
persistentVolumeClaim:
claimName: nfs-pvc
kubectl get pods -o wide
kubectl expose deployment nginx-nfs --type="NodePort" --port 80
kubectl get service nginx-nfs
echo "nginx running" > /home/nfs/index.html
curl 10.107.76.140