# Outils de déploiement Mojaloop

Ce document présente les trois options de déploiement de Mojaloop, classées par complexité et maturité production. Chaque outil correspond à des cas d’usage et des scénarios de déploiement précis.

# Core Test Harness

Environnement de développement et de test

Le Core Test Harness fournit un environnement de développement sur un seul nœud avec docker-compose. Il met en œuvre une pile Mojaloop minimale sans les composants production, ce qui le rend adapté au développement et aux tests.

Documentation technique :
LACUNE — Pas de documentation technique dédiée identifiée pour le Core Test Harness. Références associées dans :

# Détails de mise en œuvre

Le Core Test Harness s’exécute sur une machine unique en s’appuyant sur docker-compose pour l’orchestration. Il déploie les services cœur et les services sous-jacents sans composants de niveau production (passerelles, entrée/sortie, pile IAM, etc.). La mise en œuvre s’appuie sur des profils configurables pour gérer différents scénarios de déploiement.

Les besoins en ressources correspondent à un portable ou poste de travail milieu de gamme avec une mémoire suffisante pour l’orchestration des conteneurs. L’outil s’intègre aux pipelines CI pour les tests et validations automatisés.

# Flux de travail de développement

Les développeurs interagissent avec le Core Test Harness via les commandes docker-compose. L’outil prend en charge le développement local avec rechargement à chaud. La configuration passe par des variables d’environnement et des fichiers d’override docker-compose.

# Capacités de test

Le Core Test Harness permet les tests unitaires, d’intégration et de bout en bout des composants Mojaloop. Il offre un environnement contrôlé pour tester les interactions entre services et valider la logique métier.

# Déploiement HELM

Solution de déploiement en production

Le déploiement HELM fournit des capacités prêtes pour la production via les charts HELM. Cette mise en œuvre exige un cluster Kubernetes préconfiguré et satisfait aux exigences de sécurité et de performances de production.

Documentation technique :

# Exigences d’infrastructure

Le déploiement requiert :

  • Un cluster Kubernetes durci
  • Des politiques réseau et des paramètres de sécurité
  • Des définitions de classes de stockage
  • Des quotas et limites de ressources

# Spécifications de performance

La mise en œuvre doit respecter les critères suivants :

  • Plus de 1000 TPS soutenus pendant une heure
  • Latence au 99e percentile inférieure à 1 seconde pour :
    • Les opérations de compensation (clearing)
    • Les recherches (lookup)
    • L’accord sur les conditions (Agreement of Terms)
  • Disponibilité de 99,99 %
  • RTO/RPO nuls pour les opérations critiques

# Mise en œuvre de la sécurité

La sécurité comprend notamment :

  • Application des politiques réseau
  • Politiques de sécurité des pods
  • Intégration d’un service mesh
  • Gestion des secrets
  • Gestion des certificats

# Infrastructure as Code

Solution de déploiement d’entreprise

La mise en œuvre Infrastructure as Code (IaC) offre une solution de déploiement complète pour plusieurs plateformes et couches d’orchestration. Elle applique des modèles GitOps pour gérer plusieurs instances de hub.

Documentation technique :
LACUNE — Documentation interne limitée pour l’installation et la configuration IaC

# Prise en charge des plateformes

La mise en œuvre prend en charge :

  • Déploiement AWS via CloudFormation/Terraform
  • Déploiement sur site via Terraform
  • Déploiement multicloud via des modules fournisseurs-agnostes
  • Plusieurs distributions Kubernetes :
    • Services Kubernetes managés
    • Microk8s
    • EKS

# Architecture du centre de contrôle

Le centre de contrôle applique GitOps pour :

  • La gestion multi-environnements
  • Le versionnement de la configuration
  • L’automatisation du déploiement
  • La gestion d’état
  • La détection de dérive (drift)

# Déploiement des composants

La mise en œuvre déploie :

  • Les services du centre de contrôle
  • Les services cœur Mojaloop
  • Les services sous-jacents
  • Les applications portail
  • L’infrastructure IAM
  • La pile de supervision
  • Les composants PM4ML

# Performance et sécurité

La mise en œuvre IaC impose :

  • Des contrôles de sécurité de niveau production
  • Des exigences de performance alignées sur le déploiement HELM
  • Des configurations haute disponibilité
  • Des procédures de reprise après sinistre
  • Des exigences de conformité

# Historique du document

Version Date Auteur Détail
1.1 5 juin 2025 Tony Williams Ajout de liens vers la documentation technique
1.0 14 mai 2025 Tony Williams Version initiale