Skip to content
Snippets Groups Projects
Commit a9d95883 authored by Hahn Axel (hahn)'s avatar Hahn Axel (hahn)
Browse files

docs: add mermaid graphs

parent 72bb7559
Branches
No related tags found
1 merge request!71docs: add mermaid graphs
...@@ -14,9 +14,21 @@ For backup it makes ...@@ -14,9 +14,21 @@ For backup it makes
* locally encrypted files will be transferred to a mounted dir, ssh, rsync, https, (the available backaneds depend on the used backup tool) ... to a backup target system * locally encrypted files will be transferred to a mounted dir, ssh, rsync, https, (the available backaneds depend on the used backup tool) ... to a backup target system
* on the backup target each system has its own subdirectory or repository to store its data * on the backup target each system has its own subdirectory or repository to store its data
```mermaid
graph LR
Start((Start)) --> | Cronjob<br>in the night | backup.sh(backup.sh:<br><br>init config)
backup.sh --> localdump.sh(localdump.sh:<br><br>Dump<br>local<br>databases)
localdump.sh --> transfer.sh(transfer.sh:<br><br>Secure<br>file backup<br>using Restic<br>or Duplicity)
transfer.sh --> End((End))
```
<html><!--
![overview: How does it work?](./images/iml-backup-clientactions-simple.drawio.png) ![overview: How does it work?](./images/iml-backup-clientactions-simple.drawio.png)
--></html>
# Database backup # # Dump local databases #
Before starting the backup of local files to a backup target there is a step to dump a local Before starting the backup of local files to a backup target there is a step to dump a local
database. If one of the supported database types is detected it will be dumped. database. If one of the supported database types is detected it will be dumped.
...@@ -34,6 +46,44 @@ Limited support: ...@@ -34,6 +46,44 @@ Limited support:
* couchdb (using a config with naming convention) * couchdb (using a config with naming convention)
* ldap (without restore so far) * ldap (without restore so far)
```mermaid
graph LR
%% --- define nodes ----------
localdump.sh(localdump.sh)
loopdbs((Loop over<br>dabase types))
db1[(mysql)]
db2[(pgsql)]
db3[(...)]
db1A[db A]
db1B[db B]
db1C[db C]
subgraph /var/iml-backup/mysql/
dump1A[dump A]
dump1B[dump B]
dump1C[dump C]
end
%% --- connect nodes ----------
localdump.sh --> loopdbs
loopdbs --> db1
loopdbs --> db2
loopdbs --> db3
db1 --> db1A
db1 --> db1B
db1 --> db1C
db1A --> dump1A
db1B --> dump1B
db1C --> dump1C
```
# File backup # # File backup #
It is a classic backup a set of directories. Includes and excludes can be defined (but I prefer to backup all files). It is a classic backup a set of directories. Includes and excludes can be defined (but I prefer to backup all files).
...@@ -42,6 +92,46 @@ The backup target for local database backups is included automatically. ...@@ -42,6 +92,46 @@ The backup target for local database backups is included automatically.
Additionally there is a flag for a local Samba: if enabled all found shares will treated as directory to backup. Additionally there is a flag for a local Samba: if enabled all found shares will treated as directory to backup.
```mermaid
graph LR
%% --- define nodes ----------
transfer.sh(transfer.sh)
loopdirs((Loop over<br>set of dirs))
dir1(/etc)
dir2(/home)
dir3(/var/www)
dirA(/var/iml-backup/mysql)
dirB(...)
backup(Backup<br>Restic or<br>Duplicity)
backuptarget(Remote Backup target<br>in the cloud<br>or on another<br>physical location)
verify(Verify<br>written<br>data)
%% --- connect nodes ----------
transfer.sh --> loopdirs
loopdirs --> dir1
loopdirs --> dir2
loopdirs --> dir3
loopdirs --> dirA
loopdirs --> dirB
dir1 --> backup
dir2 --> backup
dir3 --> backup
dirA --> backup
dirB --> backup
backup --> |transfers<br>encrypted<br>files| backuptarget
backuptarget --> verify
```
# Backup tools # # Backup tools #
## Restic ## ## Restic ##
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment