使用PV和PVC的Kubernetes NFS存储 [英] Kubernetes NFS storage using PV and PVC

查看:54
本文介绍了使用PV和PVC的Kubernetes NFS存储的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在VirtualBox中运行了一个3节点的群集,我正在尝试使用PV和PVC创建NFS存储,但是看来我做错了.

I have a 3 nodes cluster running in VirtualBox and I'm trying to create a NFS storage using PV and PVC, but it seems that I'm doing something wrong.

我有以下内容:

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

我已经在所有节点上安装了 nfs-common .

I've already installed nfs-common in all my nodes.

每当创建PV,PVC和POD时,窗格都不会启动,并且我得到以下信息:

Whenever creating the PV, PVC and POD the pod does not start and I get the following:

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

关于我想念什么的任何想法吗?

Any ideas of what am I missing?

推荐答案

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

1 - you need to install your NFS Server: Follow the instructions in this link:

https://vitux.com/install-nfs-ubuntu上的服务器和客户端/

2-在您要保留数据的位置创建共享文件夹<

2- Create your sharedfolder where you want to persist your data<

mount 192.168.56.2:/mnt/sharedfolder /mnt/shared/folder_client

3-更改PV.yaml中的以下说明:

3- Change in PV.yaml the following instructions:

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: /mnt/sharedfolder
        server: 192.168.56.2 #ip of my master-node

这篇关于使用PV和PVC的Kubernetes NFS存储的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆