Skip to content

Commit

Permalink
renterd 1.2.5
Browse files Browse the repository at this point in the history
  • Loading branch information
artur9010 committed Aug 7, 2024
1 parent 2add909 commit 875b11e
Show file tree
Hide file tree
Showing 5 changed files with 28 additions and 42 deletions.
Binary file added renterd-1.2.5.tgz
Binary file not shown.
4 changes: 2 additions & 2 deletions renterd/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ apiVersion: v2
name: renterd
description: renterd is a next-generation Sia renter, developed by the Sia Foundation. It aims to serve the needs of both everyday users — who want a simple interface for storing and retrieving their personal data — and developers — who want a powerful, flexible, and reliable API for building apps on Sia.
type: application
version: 1.2.4
appVersion: "1.0.8-beta.2"
version: 1.2.5
appVersion: "1.0.8"
home: https://sia.tech
icon: https://i.imgur.com/pWg0PRK.png
keywords:
Expand Down
20 changes: 16 additions & 4 deletions renterd/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,14 @@ Helm chart for [Sia renterd software](https://sia.tech/software/renterd).

```
helm repo add artur9010 https://charts.motyka.pro
helm install renterd artur9010/renterd --version 1.2.4
helm install renterd artur9010/renterd --version 1.2.5
```

## Requirements

- Kubernetes 1.28+ cluster, nodes should have at least 8GB of ram as renterd is memory hungry. It should work with older versions of k8s but I haven't tested it.
- Some kind of persistent storage (longhorn, ceph, aws-ebs etc.) and 50GB of available storage (mostly for blockchain copy). It's only required by `renterd-bus` pod which contains consensus (blockchain) copy and partial slabs. There is no support for hostPath, but [rancher local path provisioner](https://github.com/rancher/local-path-provisioner) should work fine

renterd can run with sqlite or mysql database, due to performance issues on sqlite one I decided to not include an option to use sqlite. This chart includes bitnami mysql chart which is enabled by default. If you already have mysql database, check the instructions below.

## Setup guide

Before you install this helm chart, create a secrets in destination namespace.
Expand All @@ -45,7 +43,7 @@ Now run `kubectl create secret generic <secret name from values> -n <your namesp

### How to use external mysql database

If you already have a mysql databse - just disable built-in chart (`mysql.enabled` set to `false`) and create secret named `renterd-mysql` (you can change secret name in values, see `databaseSecretName`) inside renterd namespace.
If you already have a mysql databse - just disable built-in chart (`mysql.enabled` set to `false`) and create secret named [here you should put `databaseSecretName` from values] inside renterd namespace.

Create an .txt file named mysql.txt and containing:
```
Expand Down Expand Up @@ -172,6 +170,15 @@ ingresses:
- renterd-s3.example.com
```
If using nginx make sure to set those annotations:
```
nginx.ingress.kubernetes.io/proxy-body-size: '0'
nginx.ingress.kubernetes.io/ssl-redirect: 'false'
```
First one disables limit for body size, second disables https redirect which for some reason broke rclone uploads(???)
## Values
See `values.yaml` file.
Expand All @@ -186,6 +193,11 @@ This chart:

## Changelog

### 1.2.5
- Added an option to use sqlite backend, just leave database secret name empty and disable built-in mysql.
- Disabled built-in mysql chart by default, to enable it set `mysql.enalbed` to true.
- Upgraded renterd to 1.0.8

### 1.2.4
- Added an option to disable autopilot if not needed (eq. you have some custom solution to form contracts) - `autopilot.enabled` (default: `true`)
- Changed default image from `renterd:1.0.8-beta.1` to `renterd:1.0.8-beta.2`
Expand Down
4 changes: 4 additions & 0 deletions renterd/templates/statefulset-renterd-bus.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ spec:
securityContext:
{{- toYaml . | nindent 8 }}
{{- end }}
{{ if .Values.databaseSecretName }}
initContainers:
- name: wait-for
image: artur9010/wait-for:v1.0.0
Expand All @@ -39,6 +40,7 @@ spec:
envFrom:
- secretRef:
name: {{ .Values.databaseSecretName | quote }}
{{ end }}
containers:
- name: renterd
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
Expand Down Expand Up @@ -72,8 +74,10 @@ spec:
envFrom:
- secretRef:
name: {{ .Values.secretName | quote }}
{{ if .Values.databaseSecretName }}
- secretRef:
name: {{ .Values.databaseSecretName | quote }}
{{ end }}
env:
- name: RENTERD_AUTOPILOT_ENABLED
value: "false"
Expand Down
42 changes: 6 additions & 36 deletions renterd/values.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
image:
repository: ghcr.io/siafoundation/renterd
pullPolicy: IfNotPresent
tag: "1.0.8-beta.2"
tag: "1.0.8"

service:
bus:
Expand All @@ -17,8 +17,10 @@ service:
# You need to create secret with seed and api passwords manually, check README.md for more info.
secretName: "renterd"

# If you decide to not use built-in mysql chart, you will need to create a secret manually. Check README.md for more info.
databaseSecretName: "renterd-mysql"
# If you decide to not use built-in mysql chart, you will need to create a secret manually and provide its name here. Check README.md for more info.
# If you want to use built-in mysql set secret name below and enable mysql.enabled in values.
# Leave empty and disable built-in mysql chart to use sqlite backend. (default)
databaseSecretName: ""

s3:
enabled: true
Expand Down Expand Up @@ -147,41 +149,9 @@ ingresses: []
# - renterd.example.com
# - s3.example.com

ingress:
enabled: false
className: "traefik"
annotations: {}
# cert-manager.io/cluster-issuer: letsencrypt
hosts:
- host: renterd.example.com
paths:
- path: /
pathType: ImplementationSpecific
svcName: renterd-bus
svcPort: 9980
- path: /api/worker
pathType: ImplementationSpecific
svcName: renterd-worker
svcPort: 9980
- path: /api/autopilot
pathType: ImplementationSpecific
svcName: renterd-autopilot
svcPort: 9980
- host: s3.example.com
paths:
- path: /
pathType: ImplementationSpecific
svcName: renterd-worker
svcPort: 8080
# tls:
# - secretName: ingress-tls
# hosts:
# - renterd.example.com
# - s3.example.com

# Bitnami mysql chart
mysql:
enabled: true
enabled: false
# TODO: this chart is hardcoded to use name "mysql"
fullnameOverride: "mysql"
auth:
Expand Down

0 comments on commit 875b11e

Please sign in to comment.