Merge pull request 'newMermaid' (#14) from ronny/meta:newMermaid into main
Reviewed-on: Fediversity/meta#14
This commit is contained in:
		
						commit
						b872e88aa3
					
				
					 1 changed files with 102 additions and 0 deletions
				
			
		
							
								
								
									
										102
									
								
								architecture-docs/Fediversity-architecture-notes.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								architecture-docs/Fediversity-architecture-notes.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,102 @@ | ||||||
|  | <!-- 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) | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Hans van Zijst
						Hans van Zijst