https://github.com/src-d/kubernetes-local-pv-provisioner
Helping you setting up local persistent volumes
https://github.com/src-d/kubernetes-local-pv-provisioner
Last synced: about 2 months ago
JSON representation
Helping you setting up local persistent volumes
- Host: GitHub
- URL: https://github.com/src-d/kubernetes-local-pv-provisioner
- Owner: src-d
- License: apache-2.0
- Created: 2019-01-09T14:01:32.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-04-01T20:50:43.000Z (about 6 years ago)
- Last Synced: 2025-05-05T05:05:24.425Z (about 2 months ago)
- Language: Go
- Homepage:
- Size: 4.37 MB
- Stars: 7
- Watchers: 6
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Kubernetes Local PV Provisioner
Kubernetes Local PV Provisioner helps you setting up [local persistent volumes](https://kubernetes.io/docs/concepts/storage/volumes/#local) by looking at the state and creating an empty directory on the filesystem of the correct Kubernetes server if needed.
# Installation
This tool is made to run in cluster as a DaemonSet with the root file system mounted. For testing purposes it can also run locally with a connection to a Kubernetes cluster, however this is of no use since it can not create the directory on the server.
## Kubernetes manifests
This repository provides example manifests file you can use to deploy this. These contain a service account and RBAC configuration for the tool to be able to read the Persistent Volumes. As well as a DaemonSet to deploy this on all servers in a cluster.
```bash
~ $ cd manifests
~ $ kubectl apply -f rbac.yaml
~ $ kubectl apply -f daemonset.yaml
```## Helm
We also provide a Helm chart in our [Charts repository](https://github.com/src-d/charts).
```bash
~ $ helm repo add srcd https://src-d.github.io/charts/
~ $ helm install srcd/kubernetes-local-pv-provisioner --set image.tag=v1.0.0
```# Configuration
* envvar: `NODE_NAME` flag: `--node-name` This is the server's hostname it will look for in the PV's NodeSelector
* envvar: `ROOTFS_PATH` flag: `--rootfs-path` This is the prefix used in the path to locate where the root filesystem is mounted. Default: `/rootfs`
* envvar: `KUBERNETES_CONTEXT` flag: `--context` If this is set it will not attempt to load the in-cluster service account but loads the context value out of `$HOME/.kube/config`# Contribute
[Contributions](https://github.com/src-d/kubernetes-local-pv-provisioner/issues) are more than welcome, if you are interested please take a look to
our [Contributing Guidelines](CONTRIBUTING.md).# Code of Conduct
All activities under source{d} projects are governed by the [source{d} code of conduct](.github/CODE_OF_CONDUCT.md).
# License
Apache License Version 2.0, see [LICENSE](LICENSE).