2024-10-24 15:26:44 +02:00
|
|
|
<!-- Note: we're "abusing" the classDiagram for the moment as we sketch this out -->
|
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
```mermaid
|
|
|
|
graph TB
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Core[<b>Core-services</b><br><small>DNS<br>Email<br>identity_management<br>secret_management<br>authentication<br>SASL</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Services[<b>Services</b><br><small>NextCloud<br>secure_document_collaboration<br>Forgejo<br>webmail<br>HedgeDoc<br>project_planning</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
FediServices[<b>FediServices</b><br><small>Matrix<br>Pixelfed<br>Peertube<br>Mastadon<br>GotoSocial<br>activityPub</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Administration[<b>Administration</b><br><small>monitoring<br>alerting<br>graphing<br>restore_backups</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Management_UI[<b>Management_UI</b><br><small>human-oriented<br>administration<br>replication<br>migration</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Storage[<b>Storage</b><br><small>exclusive_filesystem<br>shared_blob<br>zfs</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Hardware[<b>Hardware</b><br><small>Storage<br>Networking<br>Operating-system<br>Virtualization</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Virtualization[<b>Virtualization</b><br><small>Proxmox</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Nixos[<b>Nixos</b><br><small>Application</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
LinuxOS[<b>LinuxOS</b><br><small>Application</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
NixOps[<b>NixOps</b><br><small>orchestration</small>]
|
2024-10-24 15:26:44 +02:00
|
|
|
|
2024-10-31 13:39:53 +01:00
|
|
|
Hardware --> Storage
|
|
|
|
Hardware --> Virtualization
|
|
|
|
Virtualization --> Nixos
|
|
|
|
Virtualization --> LinuxOS
|
|
|
|
Services --> Core
|
|
|
|
FediServices --> Core
|
|
|
|
Services --> Storage
|
|
|
|
FediServices --> Storage
|
|
|
|
Nixos --> Services
|
|
|
|
Nixos --> FediServices
|
|
|
|
Management_UI --> NixOps
|
|
|
|
Management_UI --> Administration
|
2024-10-24 15:26:44 +02:00
|
|
|
```
|
2024-10-31 13:39:53 +01:00
|
|
|
|
2024-10-24 15:26:44 +02:00
|
|
|
* human-centric
|
|
|
|
* easy, automated, replication and migration to different datacenter provider
|
|
|
|
* blob storage replicated generically
|
|
|
|
* files on the exclusive filesystems replicated via application-aware process, e.g.:
|
|
|
|
* asynchronous, but "live" database replication
|
|
|
|
* shutdown app then rsync directories
|
|
|
|
* ZFS replication and snapshot-ing
|
|
|
|
* Strengths, Weaknesses, Opportunities, and Threats awareness for all apps
|
|
|
|
* Not everything needs to start on Nix, NixOs, or with NixOps
|
|
|
|
* Do not use "Open Core"
|
|
|
|
* GitLab
|
|
|
|
* Dovcot
|
|
|
|
* Zimbra
|
|
|
|
* LXC containers (not Docker-style)
|