103 lines
1.8 KiB
Markdown
103 lines
1.8 KiB
Markdown
<!-- Note: we're "abusing" the classDiagram for the moment as we sketch this out -->
|
|
|
|
``` mermaid
|
|
classDiagram
|
|
|
|
%% TODO: replace classDiagram
|
|
|
|
Hardware --|> Storage
|
|
Hardware --|> Virtualization
|
|
Virtualization --|> Nixos
|
|
Virtualization --|> LinuxOS
|
|
Core_Services <|-- Services
|
|
Core_Services <|-- FediServices
|
|
Storage <|-- Services
|
|
Storage <|-- FediServices
|
|
Nixos --|> Services
|
|
Nixos --|> FediServices
|
|
Management_UI --|> NixOps
|
|
Management_UI --|> Administration
|
|
|
|
class Core_Services{
|
|
DNS
|
|
EMail
|
|
identity_management
|
|
secret_management
|
|
authentication()
|
|
SASL()
|
|
}
|
|
|
|
class Services {
|
|
NextCloud
|
|
secure_document_collaboration
|
|
Forgejo
|
|
webmail
|
|
HedgeDoc
|
|
project_planning
|
|
}
|
|
|
|
class FediServices {
|
|
Matrix
|
|
Pixelfed
|
|
Peertube
|
|
Mastadon %%GotoSocial
|
|
activityPub()
|
|
}
|
|
|
|
class Administration {
|
|
monitoring
|
|
alerting
|
|
graphing
|
|
restore_backups
|
|
}
|
|
|
|
class Management_UI {
|
|
human-oriented administration
|
|
replication()
|
|
migration()
|
|
}
|
|
|
|
class Storage {
|
|
exclusive_filesystem
|
|
shared_blob
|
|
zfs()
|
|
}
|
|
|
|
class Hardware {
|
|
Storage
|
|
Networking
|
|
Operating-system
|
|
Virtualization
|
|
}
|
|
|
|
class Virtualization {
|
|
Proxmox
|
|
}
|
|
|
|
class Nixos {
|
|
Application
|
|
}
|
|
|
|
class LinuxOS {
|
|
Application
|
|
}
|
|
|
|
class NixOps {
|
|
orchestration
|
|
}
|
|
```
|
|
* 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)
|