# Déploiement de Mojaloop
Cette section décrit les aspects de déploiement du Hub Mojaloop.
# Déploiement du Hub Mojaloop (hors intégrations participants)
Le tableau suivant indique quel scénario de déploiement Mojaloop convient le mieux selon le type d’utilisateur et le cas d’usage.
Pour le détail de chaque outil de déploiement, voir la documentation Outils de déploiement.
| Scénario de déploiement / type d’utilisateur | Apprentissage | Évaluation (choix de Mojaloop) | Tests de cas d’usage | Développement de fonctionnalités et tests de développement | Production |
|---|---|---|---|---|---|
| Étudiant | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | N/A | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | N/A |
| Développeur | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | N/A | Empreinte : - Machine unique, p. ex. portable ou VM unique. - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Machine unique, p. ex. portable ou VM unique. - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | N/A |
| Analyste métier | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | Empreinte : - Machine unique, p. ex. portable ou VM unique. - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | N/A |
| Adopteur potentiel | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | N/A |
| Auditeur / QA externe / analyste sécurité | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | N/A | N/A |
| Intégrateur système | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Déploiement entièrement redondant, répliqué, haute disponibilité - Sur site ou cloud SLA : SLA élevé sur de nombreux axes. |
| Opérateur de hub | Empreinte : machine unique, p. ex. portable ou VM unique. SLA : aucun | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Faible consommation de ressources, cluster unique - Environnement proche de la production (bac à sable ? SLA inférieur à la prod) SLA : - Inférieur à la prod mais possibilité de tester les exigences non fonctionnelles. | Empreinte : - Déploiement entièrement redondant, répliqué, haute disponibilité - Sur site ou cloud SLA : SLA élevé sur de nombreux axes. |
# Outils de déploiement
| Outil | Fonctionnalités | Exigences minimales en ressources | Sécurité | Documentation | SLA | Réserves, hypothèses, limites, etc. |
|---|---|---|---|---|---|---|
| core test harness | - nœud unique - docker-compose - « profils » disponibles - Pas de HELM - Pas de passerelle - Pas de composants entrée/sortie - Pas de pile IAM - Déploie : - services cœur et services sous-jacents - portails (facultatif) - pile de supervision (facultatif) Utilisé dans les pipelines CI pour les tests d’intégration. | Portable ou poste de travail milieu de gamme | Aucune sécurité | - Documentation orientée développeurs. - Documentation pour utilisateurs non techniques à des fins pédagogiques. - Documentation produit pour expliquer les fonctionnalités (rôle et pertinence) | - Aucun SLA | - Ne jamais utiliser en production. - Ne jamais utiliser pour traiter des transactions impliquant de l’argent réel. |
| déploiement HELM | - Seuls les charts HELM sont nécessaires pour déployer les services Mojaloop et les services sous-jacents. | - Portable ou poste haut de gamme - Petit cluster Kubernetes cloud. | L’utilisateur doit durcir son propre cluster Kubernetes. | - Documentation orientée développeurs - Documentation semi-technique / orientée analyste métier pour l’expérimentation et les tests de cas d’usage. - Documentation produit pour expliquer les fonctionnalités (rôle et pertinence). | - Doit permettre d’atteindre des SLA (pour une configuration matérielle de référence) : - Disponibilité : - ? 4 ou 5 neufs ? - RTO/RPO : ? aussi proche de zéro que possible. - Débit / performance - TPS : 1000+ (soutenu pendant 1 heure) - Latence (percentiles) (hors latences externes) : - Compensation : 99 % < 1 seconde. - Recherche : 99 % < 1 seconde. - Accord sur les conditions : 99 % < 1 seconde. - Gestion des données : - Mesures contre la perte de données (réplication, reprise après sinistre). - Conservation (audit, conformité) - Archivage. NB : la stratégie privilégie la haute disponibilité par rapport à la reprise après sinistre. | - Peut être utilisé en production. - Adapté au traitement d’opérations en argent réel. - L’utilisateur / adopteur doit déployer et configurer sa propre infrastructure, y compris cluster(s) Kubernetes, entrée/sortie, pare-feu, etc. - La sécurité se limite à ce que fournissent les charts HELM ; une conception et une configuration de sécurité complémentaires sont nécessaires. |
| Infrastructure as Code | - plusieurs cibles de plateforme de déploiement - AWS, sur site, autres clouds (modulaire) - plusieurs options de couche d’orchestration - k8s managé, microk8s, EKS - modèle GitOps (centre de contrôle) - peut déployer et gérer plusieurs instances / environnements de hub - Déploie : - centre de contrôle - services cœur et services sous-jacents (options pour services sous-jacents managés) - portails - pile IAM - pile de supervision - pm4ml - modèle GitOps | - Infrastructure cloud haut de gamme ou sur site. | Sécurité complète | - Plusieurs niveaux de documentation pour tous types d’« utilisateurs ». - Documentation développeur pour utilisation, maintenance, évolution, extension des capacités IaC (nouvelles cibles / services / fonctionnalités). - Schémas d’architecture détaillés et explications pour une compréhension approfondie. - Documentation orientée exploitation technique pour permettre aux profils « ingénieur infrastructure » d’utiliser l’IaC pour déployer et maintenir plusieurs instances Mojaloop en développement, test et production. - Documentation produit pour présenter l’IaC (rôle et pertinence). | - Doit permettre d’atteindre des SLA (pour une configuration matérielle de référence) : - Disponibilité : - ? 4 ou 5 neufs ? - RTO/RPO : ? aussi proche de zéro que possible. - Débit / performance - TPS : 1000+ (soutenu pendant 1 heure) - Latence (percentiles) (hors latences externes) : - Compensation : 99 % < 1 seconde. - Recherche : 99 % < 1 seconde. - Accord sur les conditions : 99 % < 1 seconde. - Gestion des données : - Mesures contre la perte de données (réplication, reprise après sinistre). - Conservation (audit, conformité) - Archivage. NB : la stratégie privilégie la haute disponibilité par rapport à la reprise après sinistre. | - Peut être utilisé en production. - Adapté au traitement d’opérations en argent réel. |
# Historique du document
| Version | Date | Auteur | Détail |
|---|---|---|---|
| 1.2 | 20 août 2025 | Sam Kummary | Mise à jour des sections pour utiliser Helm comme option de déploiement le cas échéant |
| 1.1 | 3 juin 2025 | Paul Makin | Suppression de la section performance, déplacée vers un nouveau document |
| 1.0 | 7 mai 2025 | Tony Williams | Version initiale |
