nfs-subdir-external-provisioner | Dynamic sub-dir volume provisioner on a remote NFS server | Storage library

 by   kubernetes-sigs Shell Version: nfs-subdir-external-provisioner-4.0.18 License: Apache-2.0

kandi X-RAY | nfs-subdir-external-provisioner Summary

kandi X-RAY | nfs-subdir-external-provisioner Summary

nfs-subdir-external-provisioner is a Shell library typically used in Storage, Docker applications. nfs-subdir-external-provisioner has no bugs, it has no vulnerabilities, it has a Permissive License and it has medium support. You can download it from GitHub.

NFS subdir external provisioner is an automatic provisioner that use your existing and already configured NFS server to support dynamic provisioning of Kubernetes Persistent Volumes via Persistent Volume Claims. Persistent volumes are provisioned as ${namespace}-${pvcName}-${pvName}.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              nfs-subdir-external-provisioner has a medium active ecosystem.
              It has 1900 star(s) with 636 fork(s). There are 31 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 25 open issues and 159 have been closed. On average issues are closed in 136 days. There are 7 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of nfs-subdir-external-provisioner is nfs-subdir-external-provisioner-4.0.18

            kandi-Quality Quality

              nfs-subdir-external-provisioner has 0 bugs and 0 code smells.

            kandi-Security Security

              nfs-subdir-external-provisioner has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              nfs-subdir-external-provisioner code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              nfs-subdir-external-provisioner is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              nfs-subdir-external-provisioner releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.
              It has 430 lines of code, 15 functions and 3 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of nfs-subdir-external-provisioner
            Get all kandi verified functions for this library.

            nfs-subdir-external-provisioner Key Features

            No Key Features are available at this moment for nfs-subdir-external-provisioner.

            nfs-subdir-external-provisioner Examples and Code Snippets

            No Code Snippets are available at this moment for nfs-subdir-external-provisioner.

            Community Discussions

            QUESTION

            K3S SQLite slow on NFS
            Asked 2022-Feb-20 at 19:47

            I have an application running on my home cluster.
            My cluster is running K3S.
            The cluster exists of 5 Raspberry Pi's 3B and 1 Ubuntu VM.
            One of my deployments is Domoticz.
            This uses a SQLite database to store data.
            I'm using this as a StorageClass. https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner
            The NFS is hosted in OpenMediaVault with arguments subtree_check,insecure,no_root_squash

            When I store this database (14MB) on a PV volume linked to an NFS Storage Class, the applications becomes very slow.
            When I use the Storage Class local-path, the application is as fast.
            Problem is now that when that node dies, the Deployment doesn't start because of the node-affinity linked to the PVC.
            I'm out of idea's to fix this issue.

            Is there another SC better suited to my setup?
            Is there a tweak to the SC local-path, so it's not linked to a node? (yes I know, database will not be transferred to the new node)

            ...

            ANSWER

            Answered 2022-Feb-20 at 19:47

            I fixed this by using longhorn instead of NFS. Thanks Andrew Skorkin for the tip

            Source https://stackoverflow.com/questions/71122901

            QUESTION

            ingress-nginx not working when using ingressClassName instead of kubernetes.io/ingress.class in annotations
            Asked 2021-Nov-16 at 13:42

            I have a baremetal cluster deployed using Kubespray with kubernetes 1.22.2, MetalLB, and ingress-nginx enabled. I am getting 404 Not found when trying to access any service deployed via helm when setting ingressClassName: nginx. However, everything works fine if I don't use ingressClassName: nginx but kubernetes.io/ingress.class: nginx instead in the helm chart values.yaml. How can I get it to work using ingressClassName?

            These are my kubespray settings for inventory/mycluster/group_vars/k8s_cluster/addons.yml

            ...

            ANSWER

            Answered 2021-Nov-16 at 13:42

            Running kubectl get ingressclass returned 'No resources found'.

            That's the main reason of your issue.

            Why?

            When you are specifying ingressClassName: nginx in your Grafana values.yaml file you are setting your Ingress resource to use nginx Ingress class which does not exist.

            I replicated your issue using minikube, MetalLB and NGINX Ingress installed via modified deploy.yaml file with commented IngressClass resource + set NGINX Ingress controller name to nginx as in your example. The result was exactly the same - ingressClassName: nginx didn't work (no address), but annotation kubernetes.io/ingress.class: nginx worked.

            (For the below solution I'm using controller pod name ingress-nginx-controller-86c865f5c4-qwl2b, but in your case it will be different - check it using kubectl get pods -n ingress-nginx command. Also keep in mind it's kind of a workaround - usually ingressClass resource should be installed automatically with a whole installation of NGINX Ingress. I'm presenting this solution to understand why it's not worked for you before, and why it works with NGINX Ingress installed using helm)

            In the logs of the Ingress NGINX controller I found (kubectl logs ingress-nginx-controller-86c865f5c4-qwl2b -n ingress-nginx):

            Source https://stackoverflow.com/questions/69878685

            QUESTION

            Is there a best practice when using nfs over GCEPersistentDisk?
            Asked 2021-Aug-16 at 11:38

            I'm a software developer who got to a point where I need to mount a Persistent Volume with ReadWriteMany access mode in multiple nodes, in my GKE Cluster.

            I'm well aware that GCEPersistentDisk does not support such access mode, so I turned to NFS instead.

            My main question is what considered best practice to overcome this GCEPersistentDisk limitation?

            I did a some research before posting this question, but I could not find a clear fit solution. Allow me to list some of the options found and their respective cons:

            • Nfs using helm chart - seems great but it's deprecated. Why? What's wrong with this method?
            • nfs-subdir-external-provisioner chart - requires an NFS server installed and I'm not sure how to. In addition it's pitfalls are a major concern.
            • Google Filestore - seems easy to use but its minimum size is 1 Tb which will result in expensive & major unused memory.
            • Turn to GlusterFs instead of NFS - seems complicated to install & maintain.

            Many Thanks to all involved!

            ...

            ANSWER

            Answered 2021-Aug-16 at 11:38

            I eventually found out that you can mount GCS and then access blobs in it using: gcsfuse

            For future references - there are equivalents in s3fs-fuse (which supports also GCS, minio, etc).

            Sorry if I spammed.

            Source https://stackoverflow.com/questions/68792001

            QUESTION

            MountVolume.SetUp failed for volume "deployer-conf" : object "pgo"/"pgo-deployer-cm" not registered
            Asked 2021-Aug-13 at 12:57

            Trying to install Crunchydata postgres-operator. My pgo-deploy pod is failing with error. I have setup default nfs storage running the following commands, # kubectl create -f rbac.yaml the content is,

            ...

            ANSWER

            Answered 2021-Aug-13 at 12:57

            The error you provided says what is wrong:

            Source https://stackoverflow.com/questions/68752116

            QUESTION

            Mounting External NFS share on Pod and permission denied to access files
            Asked 2021-Aug-04 at 15:44

            I have tried to read all the questions and answers in Stack Overflow, and doing a lot of googling, ask some of my Kubernetes Guru around me, but to not available... I am becoming crazy with that problem...

            Here is my problem, we have several environment, with different tenant, and each of them has an NFS server (on AIX, Solaris, Linux, Windows,... depending on the tenant). And want to mount the NFS share on our Kubernetes deployement on a specific POD.

            For now, that works, we can mount the NFS share, with NFS V4. And that for everyone of our external NFS servers.

            I am using that Kubernetes Provisioner (https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner) and that works.

            Here are my configuration to make it work:

            ...

            ANSWER

            Answered 2021-Aug-04 at 11:18

            I know how frustrated it is, I have used this on centos 8, Ubuntu 18, 20 on baremetal and digital ocean, and we have to install nfs tools on host server, than it worked like a charm. We even not have to touch user security uuid etc.

            Source https://stackoverflow.com/questions/68649682

            QUESTION

            Kubernetes nfs provider selfLink was empty
            Asked 2020-Dec-21 at 14:26

            Yesterday I created a new kubernetes cluster (v1.20.1, on prem) and I wanted to add NFS provisioning. The only NFS provisioner available (and still maintained) seems to be https://github.com/kubernetes-sigs/nfs-subdir-external-provisioner.

            It does say to use your own provisioner and the default (quay.io/external_storage/nfs-client-provisioner:latest) is two years old, but I don't have my own provisioner.

            When I follow the deployment guide without the helm chart and check the nfs-client-provisioner log I see the following:

            ...

            ANSWER

            Answered 2020-Dec-21 at 09:52

            You are seeing this error beacause of this: KEP-1164: Deprecate and Remove SelfLink

            Quote from mentioned KEP:

            In v1.16, we will deprecate the SelfLink field in both ObjectMeta and ListMeta objects by: documenting in field definition that it is deprecated and is going to be removed adding a release-note about field deprecation We will also introduce a feature gate to allow disabling setting SelfLink fields and opaque the logic setting it behind this feature gate.

            In v1.20 (12 months and 4 release from v1.16) we will switch off the feature gate which will automatically disable setting SelfLinks. However it will still be possible to revert the behavior by changing value of a feature gate.

            In v1.21, we will get rid of the whole code propagating those fields and fields themselves. In the meantime, we will go over places referencing that field (see below) and get rid of those too.

            As you see, you can enable it back with featureGate: RemoveSelfLink=false although its not recommented and SelfLink will be permamently removed in v1.21

            Also check this issue on github: Using Kubernetes v1.20.0, getting "unexpected error getting claim reference: selfLink was empty, can't make reference

            Source https://stackoverflow.com/questions/65376314

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install nfs-subdir-external-provisioner

            To build your own custom container image from this repository, you will have to build and push the nfs-subdir-external-provisioner image using the following instructions.
            In a forked repository you can use GitHub Actions pipeline defined in .github/workflows/release.yml. The pipeline builds Docker images for linux/amd64, linux/arm64, and linux/arm/v7 platforms and publishes them using a multi-arch manifest. The pipeline is triggered when you add a tag like gh-v{major}.{minor}.{patch} to your commit and push it to GitHub. The tag is used for generating Docker image tags: latest, {major}, {major}:{minor}, {major}:{minor}:{patch}.
            org.opencontainers.image.title=${{ github.event.repository.name }}
            org.opencontainers.image.description=${{ github.event.repository.description }}
            org.opencontainers.image.url=${{ github.event.repository.html_url }}
            org.opencontainers.image.source=${{ github.event.repository.clone_url }}
            org.opencontainers.image.created=${{ steps.prep.outputs.created }}
            org.opencontainers.image.revision=${{ github.sha }}
            org.opencontainers.image.licenses=${{ github.event.repository.license.spdx_id }}
            The pipeline performs the docker login command using REGISTRY_USERNAME and REGISTRY_TOKEN secrets, which have to be provided.
            You also need to provide the DOCKER_IMAGE secret specifying your Docker image name, e.g., quay.io/[username]/nfs-subdir-external-provisioner.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link

            Explore Related Topics

            Consider Popular Storage Libraries

            localForage

            by localForage

            seaweedfs

            by chrislusf

            Cloudreve

            by cloudreve

            store.js

            by marcuswestin

            go-ipfs

            by ipfs

            Try Top Libraries by kubernetes-sigs

            kind

            by kubernetes-sigsGo

            kustomize

            by kubernetes-sigsGo

            kubebuilder

            by kubernetes-sigsGo

            external-dns

            by kubernetes-sigsGo

            krew

            by kubernetes-sigsGo