Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PV和PVC的Kubernetes NFS存储_Kubernetes_Redis_Persistent Volumes_Persistent Volume Claims - Fatal编程技术网

使用PV和PVC的Kubernetes NFS存储

使用PV和PVC的Kubernetes NFS存储,kubernetes,redis,persistent-volumes,persistent-volume-claims,Kubernetes,Redis,Persistent Volumes,Persistent Volume Claims,我在VirtualBox中运行了一个3节点集群,我试图使用PV和PVC创建一个NFS存储,但似乎我做错了什么 我有以下资料: apiVersion: v1 kind: PersistentVolume metadata: name: redis-pv labels: type: nfs spec: capacity: storage: 100Mi volumeMode: Filesystem accessModes: - ReadWriteOnce

我在VirtualBox中运行了一个3节点集群,我试图使用PV和PVC创建一个NFS存储,但似乎我做错了什么

我有以下资料:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis-pv
  labels:
    type: nfs
spec:
  capacity:
    storage: 100Mi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: slow
  mountOptions:
    - hard
    - nfsvers=4.1
  nfs:
    path: /redis/data
    server: 192.168.56.2 #ip of my master-node
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redis-pvc
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 100Mi
  storageClassName: slow
  selector:
    matchLabels:
      type: nfs
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis-master
  labels:
    app: redis
spec:
  selector:
    matchLabels:
      app: redis
      role: master
      tier: backend
  replicas: 1
  template:
    metadata:
      labels:
        app: redis
        role: master
        tier: backend
    spec:
      containers:
      - name: master
        image: redis
        resources:
          requests:
            cpu: 100m
            memory: 100Mi
        volumeMounts:
        - name: data
          mountPath: "/redis/data"
        ports:
        - containerPort: 6379
      volumes:
      - name: data
        persistentVolumeClaim:
          claimName: redis-pvc
Warning  FailedMount  30s    kubelet, kubenode02  MountVolume.SetUp failed for volume "redis-pv" : mount failed: exit status 32
Mounting command: systemd-run
Mounting arguments: --description=Kubernetes transient mount for /var/lib/kubelet/pods/9326d818-b78a-42cc-bcff-c487fc8840a4/volumes/kubernetes.io~nfs/redis-pv --scope -- mount -t nfs -o hard,nfsvers=4.1 192.168.56.2:/redis/data /var/lib/kubelet/pods/9326d818-b78a-42cc-bcff-c487fc8840a4/volumes/kubernetes.io~nfs/redis-pv
Output: Running scope as unit run-rc316990c37b14a3ba24d5aedf66a3f6a.scope.
mount.nfs: Connection timed out
我已经在我的所有节点中安装了
nfs common

每当创建PV、PVC和POD时,POD不会启动,我得到以下信息:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis-pv
  labels:
    type: nfs
spec:
  capacity:
    storage: 100Mi
  volumeMode: Filesystem
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: slow
  mountOptions:
    - hard
    - nfsvers=4.1
  nfs:
    path: /redis/data
    server: 192.168.56.2 #ip of my master-node
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redis-pvc
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 100Mi
  storageClassName: slow
  selector:
    matchLabels:
      type: nfs
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis-master
  labels:
    app: redis
spec:
  selector:
    matchLabels:
      app: redis
      role: master
      tier: backend
  replicas: 1
  template:
    metadata:
      labels:
        app: redis
        role: master
        tier: backend
    spec:
      containers:
      - name: master
        image: redis
        resources:
          requests:
            cpu: 100m
            memory: 100Mi
        volumeMounts:
        - name: data
          mountPath: "/redis/data"
        ports:
        - containerPort: 6379
      volumes:
      - name: data
        persistentVolumeClaim:
          claimName: redis-pvc
Warning  FailedMount  30s    kubelet, kubenode02  MountVolume.SetUp failed for volume "redis-pv" : mount failed: exit status 32
Mounting command: systemd-run
Mounting arguments: --description=Kubernetes transient mount for /var/lib/kubelet/pods/9326d818-b78a-42cc-bcff-c487fc8840a4/volumes/kubernetes.io~nfs/redis-pv --scope -- mount -t nfs -o hard,nfsvers=4.1 192.168.56.2:/redis/data /var/lib/kubelet/pods/9326d818-b78a-42cc-bcff-c487fc8840a4/volumes/kubernetes.io~nfs/redis-pv
Output: Running scope as unit run-rc316990c37b14a3ba24d5aedf66a3f6a.scope.
mount.nfs: Connection timed out
以下是kubectl get pv、pvc的状态

NAME                        CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM               STORAGECLASS   REASON   AGE
persistentvolume/redis-pv   100Mi      RWO            Retain           Bound    default/redis-pvc   slow                    8s

NAME                              STATUS   VOLUME     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
persistentvolumeclaim/redis-pvc   Bound    redis-pv   100Mi      RWO            slow           8s

您知道我缺少什么吗?

1-您需要安装NFS服务器:按照此链接中的说明进行操作:


2-在要保存数据的位置创建共享文件夹1-您需要安装NFS服务器:按照此链接中的说明操作:


2-在您希望保存数据的位置创建共享文件夹此命令的状态是什么:
kubectl get pv,pvc
,您可以更新问题中的结果吗?添加在问题@BMW中,已绑定。这能解决您的问题吗@JulianoCosta嗨,上面的建议解决了你的问题吗?@willrof按照Yuri上面建议的步骤,我能够解决这个问题。感谢您的帮助此命令的状态是什么:
kubectl get pv,pvc
,您可以更新问题中的结果吗?添加到问题@BMW中,已绑定。这会解决您的问题吗@JulianoCosta嗨,上面的建议解决了你的问题吗?@willrof按照Yuri上面建议的步骤,我能够解决这个问题。谢谢你的帮助