# K3s cluster | Name | Usage | Accessibility | Host | DB type | Automated backups | Configured | | -- | -- | -- | -- | -- | -- | -- | | therbron.com | Personal website | Public | Socrates | - | Nothing to backup | No | | Traefik | Reverse proxy and load balancer | Public* | Socrates | - | Git configuration | Yes | | Adguard | DNS ad blocker and custom DNS server | Private | Socrates | - |
?
| Yes | | Owncloud Infinity Scale | File hosting webUI | Public | Plato | PostgreSQL |
?
| No | | Home assistant | Home automation and monitoring | Private | Pythagoras-a | PostgreSQL |
?
| No | | Vikunja | To-do and Kanban boards | Public | Pythagoras-b | - |
?
| No (To be integrated in Gitlab) | | Gitlab | Version control system | Public | Pythagoras-b | PostgreSQL |
?
| No | | Wiki | Documentation manager | Public | Pythagoras-b | - |
?
| No (Migrate to VuePress and Gitlab) | | Vaultwarden | Password manager | Public | Pythagoras-b | PostgreSQL |
?
| No | | Synapse | Matrix server - Message centralizer | Public | Pythagoras-b | PostgreSQL |
?
| No | | PaperlessNG | PDF viewer and organiser | Public | Pythagoras-b | PostgreSQL |
?
| No | | Raspsnir | Bachelor memorial website | Public | Pythagoras-b | PostgreSQL |
?
| No | | Jellyfin | Media streaming | Public | Archimedes | - |
?
| No | | Sonarr | TV shows collection manager | Private | Plato | SQLite** |
?
| No | | Radarr | Movie collection manager | Private | Plato | SQLite** |
?
| No | | Jackett | Torrent indexer | Private | Plato | - |
?
| No | | Deluge | Torrent client | Private | Plato | - |
?
| No | | Minecraft | Vanilla minecraft server for friends | Public | Archimedes | - | Longhorn snapshots | Yes | | Satisfactory | Satisfactory server for friends | Public | Archimedes | - | Longhorn snapshots | No | | Space engineers | Space engineers server for friends | Public | Archimedes | - | Longhorn snapshots | No | \* Configuration panel only available internally
** Current implementation only support SQLite, making manual backups a necessity ## Completed - Add TLS certificates for every http applications ## TODO - Change host/deployment specific variables to use environment variables - Write CI/CD pipeline to create environment loaded files - Write CI/CD pipeline to deploy cluster - Setup internal traefik with nodeport as reverse proxy for internal only services - Setup DB container sidecars for automated backups to Longhorn volume - ~~Look into CockroachDB for redundant database~~ Judged too complicated, moving to a 1 to 1 relationship between services and databases - ~~Configure IP range accessibility through Traefik (Internal vs external services)~~ Impossible because of flannel ip-masq ## Notes Add node to the list of available load balancer `kubectl label node svccontroller.k3s.cattle.io/enablelb=true` Install traefik through helm ``` helm repo add traefik https://helm.traefik.io/traefik helm repo update helm install -f helm/traefik/values.yaml traefik traefik/traefik ``` Install longhorn ``` kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/master/deploy/longhorn.yaml ```