This microservice is part of the Merritt Preservation System.
This microservice performs ensures that every new file added to a primary cloud storage node within the Merritt Preservation System is replicated to secondary cloud storage nodes.
The work that this service performs is determined by querying the Merritt Inventory Database.
%%{init: {'theme': 'neutral', 'securityLevel': 'loose', 'themeVariables': {'fontFamily': 'arial'}}}%%
graph TD
RDS[(Inventory DB)]
REPLIC(Replication)
click REPLIC href "https://github.com/CDLUC3/mrt-replic" "source code"
subgraph flowchart
subgraph cloud_storage
CLOUD(("Cloud Storage - Primary Node"))
click CLOUD href "https://github.com/CDLUC3/mrt-cloud" "source code"
CLDS3[/AWS S3/]
CLDSDSC[/SDSC Minio/]
CLDWAS[/Wasabi/]
CLDGLC[/Glacier/]
end
RDS --> |acquire work| REPLIC
CLOUD --> |retrieve files| REPLIC
REPLIC --> |copy files| CLDS3
REPLIC --> |copy files| CLDGLC
REPLIC --> |copy files| CLDWAS
REPLIC --> |copy files| CLDSDSC
REPLIC -.-> |record copy| RDS
end
style CLOUD fill:#77913C
style CLDS3 fill:#77913C
style CLDGLC fill:#77913C
style CLDSDSC fill:#77913C
style CLDWAS fill:#77913C
style RDS fill:#F68D2F
style REPLIC stroke:red,stroke-width:4px
This code depends on the following Merritt Libraries.
This code is not intended to be run apart from the Merritt Preservation System.
See Merritt Docker for a description of how to build a test instnce of Merritt.
This code is deployed as a war file. The war file is built on a Jenkins server.
https://github.com/CDLUC3/mrt-doc-private/blob/main/uc3-mrt-replic.md