Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/simplyzee/kube-rclone
kube-rclone is a rclone mount solution for Kubernetes
https://github.com/simplyzee/kube-rclone
kubernetes plex rclone
Last synced: about 2 months ago
JSON representation
kube-rclone is a rclone mount solution for Kubernetes
- Host: GitHub
- URL: https://github.com/simplyzee/kube-rclone
- Owner: simplyzee
- License: apache-2.0
- Created: 2019-06-26T18:12:06.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-08-22T12:27:43.000Z (over 1 year ago)
- Last Synced: 2024-10-28T01:12:57.862Z (3 months ago)
- Topics: kubernetes, plex, rclone
- Language: Mustache
- Homepage:
- Size: 33.2 KB
- Stars: 143
- Watchers: 3
- Forks: 20
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- stars - simplyzee/kube-rclone - rclone is a rclone mount solution for Kubernetes (HarmonyOS / Windows Manager)
README
# kube-rclone
## Introduction
kube-rclone is a rclone mount solution for Kubernetes. It allows you to sync files and directories to and from different cloud storage providers i.e Google Drive. It creates a Daemonset across the Kubernetes cluster which mounts a volume on the `hostPath` that can be used with other services such as [kube-plex](https://github.com/munnerz/kube-plex)
## Prerequisites
* rclone config that has the cloud storage drive definedThis can be created by running `rclone config` which will take you through an interactive configuration session to generate the `rclone.conf` file.
## Setup
The setup guide will help you get rclone running as a Daemonset on Kubernetes.1. Add the contents of the `rclone.conf` file into `files/rclone.conf`
2. Deploy the kube-rclone chart with the correct remote and path defined from the `rclone.conf` file```bash
> helm install ./kube-rclone --name rclone \
--namespace rclone \
--set rclone.remote=[insert remote to mount here] \
--set rclone.path=[insert mount path for remote] \
--set rclone.readOnly=true
```This will deploy a Daemonset across the Kubernetes cluster that will run rclone with the mounted remote i.e Google Drive on the `hostPath` of the node which can be used with other services.
Additional arguments can be set to customise `rclone mount` depending on the Kubernetes node resources. Some additional arguments have been commented out which are based on several user set-ups. They can be used based on user preference. Mount options can be found [here](https://rclone.org/commands/rclone_mount/#options)
Example of pod logs:
```bash
2019/06/28 22:15:58 INFO : gcache: Cache DB path: /home/rclone/rclone-cache/cache.db
2019/06/28 22:15:58 INFO : gcache: Cache chunk path: /home/rclone/rclone-cache/cache
2019/06/28 22:15:58 INFO : gcache: Chunk Memory: true
2019/06/28 22:15:58 INFO : gcache: Chunk Size: 16M
2019/06/28 22:15:58 INFO : gcache: Chunk Total Size: 20G
2019/06/28 22:15:58 INFO : gcache: Chunk Clean Interval: 1m0s
2019/06/28 22:15:58 INFO : gcache: Workers: 4
2019/06/28 22:15:58 INFO : gcache: File Age: 2d
```## Constraints
It has only been tested with [kube-plex](https://github.com/munnerz/kube-plex) so far. There's still more work to be done to make it stable for other services e.g [Radarr](https://github.com/Radarr/Radarr) and [Sonarr](https://github.com/Sonarr/Sonarr/).
## Contributing
Please raise an issue or pull request if you have any issues, questions or features.
## Credits
Full credit list at: [https://github.com/zee-ahmed/kube-rclone/CREDITS.md](https://github.com/zee-ahmed/kube-rclone/blob/master/CREDITS.md)