namespace.yamlapiVersion: v1kind: Namespacemetadata: name: redis labels: app.kubernetes.io/name: redis app.kubernetes.io/instance: redis config.yamlkind: ConfigMapapiVersion: v1metadata: name: redis-config namespace: redis labels: app: redisdata: redis.conf: |- dir /data port 6379 bind 0.0.0.0 appendonly yes protected-mode no requirepass pf6O9iC7fN7GaeCKutY4ZBHRXqJNY7ixUtx1tHs8Dfc= pidfile /data/redis-6379.pid Pvc.yamlapiVersion: v1kind: PersistentVolumeClaimmetadata: name: redis-pvc namespace: redis labels: app: redisspec:==storageClassName: nfs-storage accessModes: - ReadWriteOnce resources: requests: storage: 50Gi Deployment.yaml---apiVersion: v1kind: Servicemetadata: name: redis namespace: redis labels: app: redisspec: type: NodePort ports: - name: redis port: 6379 targetPort: 6379 nodePort: 30002 selector: app: redis---apiVersion: apps/v1kind: Deploymentmetadata: name: redis namespace: redis labels: app: redisspec: replicas: 1 selector: matchLabels: app: redis template: metadata: labels: app: redis spec: containers: - name: redis image: redis command: - "sh" - "-c" - "redis-server /usr/local/etc/redis/redis.conf" ports: - containerPort: 6379 resources: limits: cpu: 1000m memory: 1024Mi requests: cpu: 1000m memory: 1024Mi livenessProbe: tcpSocket: port: 6379 initialDelaySeconds: 300 timeoutSeconds: 1 periodSeconds: 10 successThreshold: 1 failureThreshold: 3 readinessProbe: tcpSocket: port: 6379 initialDelaySeconds: 5 timeoutSeconds: 1 periodSeconds: 10 successThreshold: 1 failureThreshold: 3 volumeMounts: - name: data mountPath: /data - name: config mountPath: /usr/local/etc/redis/redis.conf subPath: redis.conf volumes: - name: data persistentVolumeClaim: claimName: redis-pvc - name: config configMap: name: redis-config - name: sys hostPath: path: /sys