frmscoe / General-Issues

This repo exists to track current work and any issues within the FRMS CoE
2 stars 0 forks source link

ArangoDB Cluster Deployment #362

Closed vorsterk closed 2 months ago

vorsterk commented 5 months ago

Story Statement:

As a system administrator,
I want to deploy an ArangoDB cluster to my Kubernetes instance,
So that I can provide a scalable, distributed database service for my applications.

Acceptance Criteria:

  1. Cluster Configuration: The ArangoDB cluster configuration should match the specifications for the intended workload in terms of memory, CPU, and storage resources.

  2. Deployment Method: The ArangoDB cluster should be deployed using Kubernetes manifests or Helm charts, ensuring that the deployment process is repeatable and version-controlled.

  3. Persistent Storage: The deployment should include persistent storage to ensure that the data is retained even if the pods are destroyed.

  4. Networking: Proper networking rules should be established, allowing for communication between ArangoDB pods and application pods while ensuring security.

  5. High Availability: The cluster must be configured for high availability with multiple replicas of ArangoDB pods to ensure service reliability.

  6. Monitoring and Logging: Integrate monitoring and logging solutions to track the performance of the ArangoDB cluster and to troubleshoot potential issues.

  7. Access Control: Set up appropriate access controls, so only authorized users and applications can interact with the database.

  8. Documentation: Provide comprehensive documentation on the deployment process, configurations used, and how to scale, update, or maintain the ArangoDB cluster.

  9. Clean Teardown: Ensure there is a process for a clean teardown of the cluster that can remove all components without leaving residual configurations or data.

Definition of Done:

vorsterk commented 2 months ago

Cluster deployment completed and tested on Azure for performance benchmarking .

Deployment yaml files changed for the processors to accept the arango cert into their container while communicating with clustered version of arango.

Documentation

https://frmscoe.atlassian.net/wiki/spaces/FRMS/pages/144965641/Arango+clustering+Discussion+Outcomes https://frmscoe.atlassian.net/wiki/spaces/FRMS/pages/148996099/ArangoDB+Cluster+Explained https://developer.sybrin.com/books/kyle-vorster/chapter/arangodb