https://github.com/allanger/rustfs-manager-operator
Manage buckets and users on a RustFS instance through CRDs
https://github.com/allanger/rustfs-manager-operator
kubernetes minio rustfs rustfs-cli
Last synced: about 1 month ago
JSON representation
Manage buckets and users on a RustFS instance through CRDs
- Host: GitHub
- URL: https://github.com/allanger/rustfs-manager-operator
- Owner: allanger
- License: gpl-3.0
- Created: 2026-03-20T13:22:03.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-04-20T16:02:09.000Z (about 2 months ago)
- Last Synced: 2026-04-20T17:43:28.912Z (about 2 months ago)
- Topics: kubernetes, minio, rustfs, rustfs-cli
- Language: Rust
- Homepage: https://allanger.github.io/rustfs-manager-operator/
- Size: 205 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# RustFS Manager Operator
An operator to manage bucket and user on a RustFS instance through Kubernetes CRDs.
## Getting started
Find better docs here:
### Install the operator
```shell
helm install rustfs-manager-operator oci://ghcr.io/allanger/rustfs-manager-operator/helm/rustfs-manager-operator --version 0.1.2
```
### Connect it to a RustFS instance
1. Create a values file:
```yaml
# values.yaml
endpoint: https://your.rust.fs
username: admin
password: qwertyu9
```
2. Install the **rustfs-instance** helm chart
```shell
helm install rustfs-instance oci://ghcr.io/allanger/rustfs-manager-operator/helm/rustfs-instance --version 0.1.2 -f ./values.yaml
```
### Start creating Buckets and Users
#### Buckets
```yaml
apiVersion: rustfs.badhouseplants.net/v1beta1
kind: RustFSBucket
metadata:
name:
namespace:
spec:
# When cleanup is set to true, bucket will be removed from the instance
cleanup: false
# On which instance this bucket should be created
instance: rustfs-instance
# If true, bucket will be created with object locking
objectLock: false
# If true, bucket will be created with versioning
versioning: false
```
#### Users
```yaml
apiVersion: rustfs.badhouseplants.net/v1beta1
kind: RustFSBucketUser
metadata:
name:
namespace:
spec:
bucket:
# User will be removed from the RustFS instance if set to true
cleanup: false
access: readWrite # or readOnly
```
### Access credentials via ConfigMaps and Secrets
#### ConfigMap:
```shell
kubectl get configmap -bucket-info -o yaml
apiVersion: v1
kind: ConfigMap
data:
AWS_BUCKET_NAME:
AWS_ENDPOINT_URL:
AWS_REGION:
```
#### Secret:
```shell
kubectl get secret -bucket-creds -o yaml
apiVersion: v1
kind: ConfigMap
data:
AWS_ACCESS_KEY_ID:
AWS_SECRET_ACCESS_KEY:
```