Move Freshrss to longhorn
This commit is contained in:
parent
e791c1df9c
commit
7326dfd9e9
3 changed files with 13 additions and 7 deletions
|
@ -28,6 +28,7 @@
|
||||||
```
|
```
|
||||||
5. Use `kubectl cp` to copy the data from the local disk to the pod.
|
5. Use `kubectl cp` to copy the data from the local disk to the pod.
|
||||||
6. Delete the temporary pod.
|
6. Delete the temporary pod.
|
||||||
|
7. Be sure to set the group ownership of the mount to the correct GID.
|
||||||
7. Create the workload with updated volume mounts.
|
7. Create the workload with updated volume mounts.
|
||||||
8. Delete the data from local disk.
|
8. Delete the data from local disk.
|
||||||
|
|
||||||
|
@ -45,7 +46,9 @@ Follow these actions to create a Volume:
|
||||||
1. Using the Longhorn web UI, create a new Longhorn volume, keeping the following in mind:
|
1. Using the Longhorn web UI, create a new Longhorn volume, keeping the following in mind:
|
||||||
- The size can be some more than what we expect to reasonable use. We use storage-overprovisioning, so the total size of volumes can exceed real disk size.
|
- The size can be some more than what we expect to reasonable use. We use storage-overprovisioning, so the total size of volumes can exceed real disk size.
|
||||||
- The number of replicas should be 2.
|
- The number of replicas should be 2.
|
||||||
2. Create the PV, PVC and workload as usual.
|
2. Enable the "backup-nfs" recurring job for the Longhorn volume.
|
||||||
|
3. Disable the "default" recurring job group for the Longhorn volume.
|
||||||
|
4. Create the PV, PVC and workload as usual.
|
||||||
|
|
||||||
## Disaster recovery using Longhorn backups
|
## Disaster recovery using Longhorn backups
|
||||||
|
|
||||||
|
|
|
@ -19,8 +19,6 @@
|
||||||
metadata.labels.app = "freshrss";
|
metadata.labels.app = "freshrss";
|
||||||
|
|
||||||
spec = {
|
spec = {
|
||||||
volumes.data.persistentVolumeClaim.claimName = "freshrss";
|
|
||||||
|
|
||||||
containers.freshrss = {
|
containers.freshrss = {
|
||||||
# TODO: pin this to a release when a new one is released.
|
# TODO: pin this to a release when a new one is released.
|
||||||
image = "freshrss/freshrss:edge";
|
image = "freshrss/freshrss:edge";
|
||||||
|
@ -44,6 +42,13 @@
|
||||||
mountPath = "/var/www/FreshRSS/data";
|
mountPath = "/var/www/FreshRSS/data";
|
||||||
}];
|
}];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
volumes.data.persistentVolumeClaim.claimName = "freshrss";
|
||||||
|
|
||||||
|
securityContext = {
|
||||||
|
fsGroup = 33;
|
||||||
|
fsGroupChangePolicy = "OnRootMismatch";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -60,10 +65,11 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
lab = {
|
lab = {
|
||||||
nfsVolumes.freshrss.path = "freshrss/data";
|
longhornVolumes.freshrss.storage = "400Mi";
|
||||||
|
|
||||||
ingresses.freshrss = {
|
ingresses.freshrss = {
|
||||||
host = "rss.kun.is";
|
host = "rss.kun.is";
|
||||||
|
entrypoint = "localsecure";
|
||||||
|
|
||||||
service = {
|
service = {
|
||||||
name = "freshrss";
|
name = "freshrss";
|
||||||
|
|
|
@ -5,11 +5,8 @@ let
|
||||||
nfsShares = [
|
nfsShares = [
|
||||||
"/nextcloud/data"
|
"/nextcloud/data"
|
||||||
"/radicale"
|
"/radicale"
|
||||||
"/freshrss/data"
|
|
||||||
"/freshrss/extensions"
|
|
||||||
"/pihole/data"
|
"/pihole/data"
|
||||||
"/pihole/dnsmasq"
|
"/pihole/dnsmasq"
|
||||||
"/hedgedoc/uploads"
|
|
||||||
"/traefik/acme"
|
"/traefik/acme"
|
||||||
"/forgejo/data"
|
"/forgejo/data"
|
||||||
"/forgejo/runner/data"
|
"/forgejo/runner/data"
|
||||||
|
|
Loading…
Reference in a new issue