kube/longhorn-system/README.md

41 lines
1.5 KiB
Markdown
Raw Normal View History

2022-08-16 09:40:54 +00:00
# Longhorn distributed block storage system
2024-08-14 04:36:31 +00:00
## For users
2022-08-16 09:40:54 +00:00
2024-08-14 04:36:31 +00:00
You should really avoid using Longhorn as it has over time proven to be
unreliable system. Prefer using remote databases in your application via
the Kubernetes operator pattern.
Use Longhorn for applications that need persistent storage, but are unable
to provide replication in the application layer:
* Applications that insist writing into filesystem
* Applications that serve Git repositories (eg Gitea)
* Applications that check out Git repositories (eg Woodpecker, Drone and CI systems)
* Applications that need to use SQLite
Instead of using built-in `longhorn` storage class, please add new storage class
with suitable replication, data locality parameters and reclaim policy
2024-08-14 04:37:23 +00:00
[here](https://git.k-space.ee/k-space/kube/src/branch/master/storage-class.yaml)
2023-05-18 19:46:54 +00:00
2024-08-14 04:36:31 +00:00
Longhorn backups are made once per day and it's configured to be uploaded to
the Minio S3 bucket hosted at nas.k-space.ee
## For administrators
Longhorn was last upgraded with following snippet:
2022-08-16 09:40:54 +00:00
```
2024-08-14 04:36:31 +00:00
wget https://raw.githubusercontent.com/longhorn/longhorn/v1.6.2/deploy/longhorn.yaml
patch -p0 < changes.diff
kubectl -n longhorn-system apply -f longhorn.yml -f application-extras.yml -f backup.yaml
2022-08-16 09:40:54 +00:00
```
2024-08-14 04:36:31 +00:00
After initial deployment `dedicated=storage:NoSchedule` was specified
2022-08-16 09:40:54 +00:00
for `Kubernetes Taint Toleration` under `Setting -> General` on
[Longhorn Dashboard](https://longhorn.k-space.ee/).
2024-08-14 04:36:31 +00:00
Suitable nodes were tagged with `storage` and Longhorn scheduling was disabled on others.
Refer to `application.yaml` to see how backups are configured.