updated after session with Koen
This commit is contained in:
parent
cd1c411310
commit
ec70ff1022
|
@ -1,4 +1,3 @@
|
|||
<!-- Note: we're "abusing" the classDiagram for the moment as we sketch this out -->
|
||||
|
||||
```mermaid
|
||||
graph TB
|
||||
|
@ -7,15 +6,21 @@ Core[<b>Core-services</b><br/><small>DNS<br/>Email<br/>identity_management<br/>s
|
|||
|
||||
|
||||
subgraph Management
|
||||
Administration[<b>Administration</b><br/><small>monitoring<br/>alerting<br/>graphing<br/>restore_backups</small>]
|
||||
Management_UI[<b>Management_UI</b><br/><small>human-oriented<br/>administration<br/>replication<br/>migration</small>]
|
||||
NixOps[<b>NixOps</b><br/><small>orchestration</small>]
|
||||
A[Nix-panel] --> I
|
||||
Z[(central database / netbox)]--> B[NixOps] --> D[Proxmox]
|
||||
B --> E[Nix-configuration]
|
||||
B --> G[DNS]
|
||||
B --> F[Email]
|
||||
B --> J[Garage]
|
||||
B --> H[IdentityManagement]
|
||||
I[Nix-Panel API] --> Z
|
||||
H --> I
|
||||
end
|
||||
|
||||
|
||||
subgraph Hardware
|
||||
Systems[<b>Systems</b><br/><small>Storage<br/>Networking<br/>Operating-system<br/>Virtualization</small>]
|
||||
Storage[<b>Storage</b><br/><small>exclusive_filesystem<br/>shared_blob<br/>zfs</small>]
|
||||
Storage[<b>Storage</b><br/><small>exclusive_filesystem<br/>shared_blob Garage<br/>zfs</small>]
|
||||
end
|
||||
|
||||
subgraph Virtualization
|
||||
|
@ -35,10 +40,15 @@ FediServices --> Core
|
|||
Core --> Hardware
|
||||
Nixos --> Services
|
||||
Nixos --> FediServices
|
||||
Management_UI --> NixOps
|
||||
Management_UI --> Administration
|
||||
F --> Core
|
||||
G --> Core
|
||||
J --> Storage
|
||||
D --> Virtualization
|
||||
E --> Nixos
|
||||
H --> Core
|
||||
```
|
||||
|
||||
|
||||
* human-centric
|
||||
* easy, automated, replication and migration to different datacenter provider
|
||||
* blob storage replicated generically
|
||||
|
@ -53,3 +63,27 @@ Management_UI --> Administration
|
|||
* Dovcot
|
||||
* Zimbra
|
||||
* LXC containers (not Docker-style)
|
||||
* zfs-snapshots + replicatie (send/receive)
|
||||
* s3 replicatie naar 3rd party
|
||||
* locatie-mirorring? (buiten scope?)
|
||||
* (maar dan Linstore op zfs)
|
||||
|
||||
### Working session: Architecture discussion
|
||||
|
||||
Attendees: Robert, Valentin, Koen, Kevin
|
||||
|
||||
- Robert: NixOps should handle backup creation and restore, since it knows all the details for that
|
||||
- There will be an interface to plug Nix expressions with scripts that can access all the resources
|
||||
- Once should be able to build domain-specific applications around that
|
||||
- Valentin: Backups seem to be morally equivalent to deployments "to a file"
|
||||
- Koen walked us through myprotagio.nl
|
||||
- Kevin will share source code with Valentin
|
||||
- It's a role-based-permission and billing UI wrapping PowerDNS, Postfix Admin, and InvoiceNinja
|
||||
- Written in Laravel and Tailwind
|
||||
- To build a UI for deployment we'd primarily need a REST API to a database
|
||||
- Primary work would be to do the architecture and design
|
||||
- Valentin: Maybe we could add just the APIs for the deployment workflows from a completely new service, and connect the front-end to that
|
||||
- Won't have to touch the PHP then
|
||||
- But for the full integration to work one will have to understand the whole system anyway
|
||||
- At that point one may as well keep maintaining it or rewrite it
|
||||
- Koen: The existing thing needs work regardless, and would like to move away from PHP to Python anyway
|
||||
|
|
Loading…
Reference in a new issue