Jinja-Compose storage upgrade

This commit is contained in:
Daniel Langbein 2023-10-09 19:02:16 +02:00
parent 3c81fc5439
commit d7dc132fbc
Signed by: langfingaz
GPG Key ID: 6C47C753F0823002
4 changed files with 58 additions and 18 deletions

View File

@ -1,4 +1,4 @@
# Migration to NixOS ## Migration to NixOS
TODOs: TODOs:
@ -8,3 +8,24 @@ TODOs:
- Drive monitoring - Drive monitoring
- Could `smartd` be an option? - Could `smartd` be an option?
- Probably I don't need to run full device scans as I run `btrfs scrub` each month? - Probably I don't need to run full device scans as I run `btrfs scrub` each month?
## Jinja-Compose storage upgrade
- [x] Stop `Jinja-Compose` and `btrbk` systemd units
- [x] `./docker-compose down`
- [x] Rename and move live data
- [x] Move snapshots @yodaNas, @pi3bplus
- [x] Run Jinja-Compose `setup.sh`
- [x] Test `./docker-compose up`
- [x] Adjust and start `Jinja-Compose` and `btrbk` systemd units
- [x] Adjust `btrbk` config @pi3bplus
Volume sizes:
- 5.8GB arch.p1st.de
- 5.3GB blogger.privacy1st.de
- 2.3GB git.privacy1st.de
- 0.7GB music.privacy1st.de
- 0.3GB money.p1st.de
- 0.2GB recipe.privacy1st.de
- 0.02GB play.privacy1st.de
- 0.01GB changedetection.p1st.de

View File

@ -132,8 +132,8 @@ in
]; ];
script = '' script = ''
set -eu -o pipefail set -eu -o pipefail
/mnt/data/docker-compose/docker-compose pull /jc-config/docker-compose pull
/mnt/data/docker-compose/docker-compose up -d --wait /jc-config/docker-compose up -d --wait
''; '';
# Start after login. # Start after login.
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];

View File

@ -259,19 +259,25 @@ target_preserve 7d 4w 6m
snapshot_preserve_min all snapshot_preserve_min all
snapshot_create no snapshot_create no
volume ssh://rootnas/mnt/data/data volume ssh://rootnas/jc-data
snapshot_dir /mnt/data/snap snapshot_dir /snap
target /mnt/backup/snap target /mnt/backup/snap
subvolume arch.p1st.de subvolume arch.p1st.de
subvolume blogger.privacy1st.de subvolume blogger.privacy1st.de
subvolume changedetection.p1st.de subvolume changedetection.p1st.de
subvolume cloud.media-kollektiv.eu
subvolume cloud.privacy1st.de subvolume cloud.privacy1st.de
subvolume git.privacy1st.de subvolume git.privacy1st.de
subvolume mastodon-toot-follower.privacy1st.de
subvolume money.p1st.de subvolume money.p1st.de
subvolume music.privacy1st.de subvolume music.privacy1st.de
subvolume paste.p1st.de
subvolume proxy subvolume proxy
subvolume recipe.privacy1st.de subvolume recipe.privacy1st.de
subvolume traggo.privacy1st.de subvolume traggo.privacy1st.de
volume ssh://rootnas/mnt/data/jc-data
snapshot_dir /mnt/data/snap
target /mnt/backup/snap2
subvolume cloud.privacy1st.de
subvolume cloud.media-kollektiv.eu
EOF EOF
``` ```

View File

@ -30,25 +30,31 @@
snapshot_preserve_min = "2d"; snapshot_preserve_min = "2d";
snapshot_preserve = "24h 7d 4w 6m"; snapshot_preserve = "24h 7d 4w 6m";
volume."/mnt/data/data" = { volume."/jc-data" = {
snapshot_dir = "/mnt/data/snap"; snapshot_dir = "/snap";
subvolume = { subvolume = {
"arch.p1st.de" = {}; "arch.p1st.de" = {};
"blogger.privacy1st.de" = {}; "blogger.privacy1st.de" = {};
"changedetection.p1st.de" = {}; "changedetection.p1st.de" = {};
# MediaKollektiv: 796 GiB
"cloud.media-kollektiv.eu" = {};
"cloud.privacy1st.de" = {}; "cloud.privacy1st.de" = {};
"git.privacy1st.de" = {}; "git.privacy1st.de" = {};
#"mastodon-toot-follower.privacy1st.de" = {}; "mastodon-toot-follower.privacy1st.de" = {};
"money.p1st.de" = {}; "money.p1st.de" = {};
"music.privacy1st.de" = {}; "music.privacy1st.de" = {};
#"paste.p1st.de" = {}; "paste.p1st.de" = {};
"proxy" = {}; "proxy" = {};
"recipe.privacy1st.de" = {}; "recipe.privacy1st.de" = {};
"traggo.privacy1st.de" = {}; "traggo.privacy1st.de" = {};
}; };
}; };
volume."/mnt/data/jc-data" = {
snapshot_dir = "/mnt/data/snap";
subvolume = {
"cloud.privacy1st.de" = {};
# MediaKollektiv: 796 GiB
"cloud.media-kollektiv.eu" = {};
};
};
}; };
}; };
@ -68,26 +74,33 @@
snapshot_preserve_min = "all"; snapshot_preserve_min = "all";
snapshot_create = "no"; snapshot_create = "no";
volume."/mnt/data/data" = { volume."/jc-data" = {
snapshot_dir = "/mnt/data/snap"; snapshot_dir = "/snap";
target = "/mnt/backup/snap"; target = "/mnt/backup/snap";
subvolume = { subvolume = {
"arch.p1st.de" = {}; "arch.p1st.de" = {};
"blogger.privacy1st.de" = {}; "blogger.privacy1st.de" = {};
"changedetection.p1st.de" = {}; "changedetection.p1st.de" = {};
# MediaKollektiv: 796 GiB
"cloud.media-kollektiv.eu" = {};
"cloud.privacy1st.de" = {}; "cloud.privacy1st.de" = {};
"git.privacy1st.de" = {}; "git.privacy1st.de" = {};
#"mastodon-toot-follower.privacy1st.de" = {}; "mastodon-toot-follower.privacy1st.de" = {};
"money.p1st.de" = {}; "money.p1st.de" = {};
"music.privacy1st.de" = {}; "music.privacy1st.de" = {};
#"paste.p1st.de" = {}; "paste.p1st.de" = {};
"proxy" = {}; "proxy" = {};
"recipe.privacy1st.de" = {}; "recipe.privacy1st.de" = {};
"traggo.privacy1st.de" = {}; "traggo.privacy1st.de" = {};
}; };
}; };
volume."/mnt/data/jc-data" = {
snapshot_dir = "/mnt/data/snap";
target = "/mnt/backup/snap2";
subvolume = {
"cloud.privacy1st.de" = {};
# MediaKollektiv: 796 GiB
"cloud.media-kollektiv.eu" = {};
};
};
}; };
}; };