An open API service indexing awesome lists of open source software.

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

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:

```