Cette architecture combine le BAF (Blockchain Automation Framework) open source et Kubernetes avec Azure Arc de façon à pouvoir travailler avec des DLT multiparties et créer une solution de blockchain multicloud.
Architecture
Cette solution fournit un réseau DLT hétérogène, indépendant du cloud et à parties multiples. Les parties peuvent héberger leurs nœuds n’importe où et toujours faire partie du réseau.
Workflow
Kubernetes est l’infrastructure standard qui héberge le registre et l’application. Cet exemple part du principe qu’il existe trois clusters Kubernetes managés.
- La partie A utilise Azure Kubernetes Service (AKS).
- La partie B utilise GCP Google Kubernetes Engine (GKE).
- La partie C utilise Amazon Elastic Kubernetes Service (EKS).
Chaque partie héberge ses nœuds à un emplacement différent.
Le BAF déploie le réseau distribué sur les trois services cloud.
Kubernetes avec Azure Arc gère et surveille de manière centralisée tous les clusters Kubernetes, avec :
- Déploiement et gestion de la configuration de clusters basés sur GitOps.
- Analyse Azure Monitor Container Insights.
- Gestion des stratégies Azure Policy pour Kubernetes.
Azure DevOps fournit une gestion du cycle de vie des applications et de l’infrastructure. Un contrôleur Ansible sur une machine virtuelle Azure Linux est l’agent d’intégration continue et de livraison continue (CI/CD) Azure DevOps personnalisé.
Azure Container Registry stocke et partage des images de conteneur privées liées aux applications. Le registre Docker extrait des images spécifiques au registre.
Composants
Kubernetes est l’infrastructure basée sur un conteneur qui héberge le registre et les applications. Cet exemple part du principe qu’il existe trois clusters Kubernetes managés, un dans AKS, Amazon EKS et GCP GKE. Vous pouvez héberger vos clusters Kubernetes dans presque tous les emplacements publics ou privés.
Le BAF (Blockchain Automation Framework) open source est un moyen de fournir des réseaux DLT cohérents prêts pour la production sur des infrastructures cloud publiques et privées. Le BAF prend en charge les DLT Quorum, Corda et Hyperledger.
Azure Arc standardise la visibilité, les opérations et la conformité entre les ressources et les emplacements en étendant le plan de contrôle Azure.
Kubernetes avec Azure Arc gère de manière centralisée les clusters Kubernetes à n’importe quel emplacement. Kubernetes avec Azure Arc fonctionne pour tous les clusters Kubernetes certifiés CNCF (Cloud Native Computing Foundation), notamment :
- Moteur AKS sur Azure
- Moteur AKS sur Azure Stack Hub
- Amazon EKS
- GCP GKE
- VMWare vSphere
Azure Monitor est une solution complète pour la collecte, l’analyse et l’exploitation de la télémétrie. Les insights de conteneur Azure Monitor analyse les performances des charges de travail de conteneur déployées sur des clusters Kubernetes avec Azure Arc.
Azure Policy aide à appliquer les normes organisationnelles et à évaluer la conformité à grande échelle. Azure Policy pour Kubernetes peut gérer et signaler l’état de conformité de tous les clusters Kubernetes avec Azure Arc.
Azure Container Registry vous permet de créer, stocker et gérer des images conteneur et des artefacts pour tous les types de déploiements de conteneur.
Azure DevOps est un ensemble de services de développement fournissant une gestion complète des applications et du cycle de vie de l’infrastructure. Azure DevOps comprend le suivi du travail, le contrôle du code source, le build, l’intégration continue et la livraison continue, la gestion des packages et les solutions de test.
Autres solutions
La passerelle d’API Ambassadeur gère les communications entre nœuds, mais vous pouvez utiliser une passerelle d’API native cloud, telle qu’Azure API Management sur Internet. Pour plus d’informations, consultez Déployer sur Azure Kubernetes Service.
Vous pouvez également utiliser External-DNS avec le service Azure DNS.
Vous pouvez accéder aux connexions privées IPSec à l’aide d’outils, tels que Submariner.
Détails du scénario
Les réseaux blockchain et DLT (Distributed Ledger Technology) sont des systèmes à parties multiples. Chaque partie peut avoir ses propres outils, méthodologies et fournisseurs de cloud. Les réseaux blockchain publics ou privés de certains fournisseurs peuvent avoir une disponibilité dans la région, une extensibilité ou une ségrégation réseau limitée.
Le BAF (Blockchain Automation Framework) open source est un moyen cohérent de déployer des DLT prêtes pour la production sur différents clouds publics et privés. Toutefois, bien que le BAF puisse gérer des déploiements, il ne fournit pas de gestion et de surveillance de l’infrastructure centrale. Bien que les services blockchain de certains fournisseurs de cloud assurent la gestion de l’infrastructure, ils peuvent exiger que toutes les parties soient dans le même cloud ou la même infrastructure.
Pour unir les forces et créer un réseau blockchain, les parties qui utilisent différents fournisseurs de cloud et infrastructures ont besoin d’une plateforme de gestion commune. Cette plateforme doit offrir une visibilité, des opérations et une conformité standard sur un large éventail de ressources et d’emplacements, quelle que soit l’infrastructure d’hébergement.
Cet article explore les possibilités pour le BAF et Kubernetes avec Azure Arc de créer une solution blockchain entre clouds axée sur la portabilité et le contrôle.
Cas d’usage potentiels
Cette approche prend en charge les éléments suivants :
Des déploiements DLT hétérogènes dans lesquels des organisations distinctes possèdent et gèrent chaque nœud.
Gestion centralisée de DevOps, de la surveillance et de la conformité sur des réseaux à parties multiples.
Considérations
Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d'informations, consultez Microsoft Azure Well-Architected Framework.
Pour connaître les meilleures pratiques d’AKS, consultez Architecture de référence pour un cluster Azure Kubernetes Service (AKS). Vous trouverez des conseils similaires pour d’autres fournisseurs de cloud.
Disponibilité et extensibilité
Bien qu’Azure Arc puisse gérer et surveiller les clusters Kubernetes, chaque cluster doit implémenter de manière indépendante l’évolutivité, la haute disponibilité et les fonctionnalités de récupération d’urgence.
Sécurité
La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez Vue d’ensemble du pilier Sécurité.
Le BAF utilise HashiCorp Vault pour le stockage des certificats et des clés. Pour utiliser le BAF, vous avez besoin d’au moins un serveur de coffre. Le BAF recommande un coffre par organisation pour les projets prêts pour la production.
Optimisation des coûts
L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.
Pour estimer les coûts des ressources Azure, utilisez la calculatrice de prix Azure.
Déployer ce scénario
- Pour cet exemple, créez des clusters Kubernetes managés dans AKS, GKE et EKS, et intégrez les clusters à Azure Arc.
- Suivez les étapes pour installer et configurer les composants requis pour le BAF.
- (Facultatif) Créez une organisation et un projet Azure DevOps, puis clonez le référentiel BAF dans le nouveau projet Azure DevOps.
- (Facultatif) Créez une machine virtuelle de contrôleur Ansible dans Azure en tant qu’agent de build personnalisé pour déployer des composants BAF.
Contributeurs
Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.
Auteur principal :
- Safi Ali | Senior Cloud Solution Architect
Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.
Étapes suivantes
- Démarrage rapide avec Azure Arc
- Déployer Consortium Hyperledger Fabric sur Azure Kubernetes Service
- Workflow CI/CD avec GitOps – Kubernetes avec Azure Arc
Ressources associées
- Architecture de référence pour un cluster Azure Kubernetes Service (AKS)
- Application de workflow Blockchain
- Gestion et déploiement d’Azure Arc hybride pour les clusters Kubernetes
- Conteneurs et orchestrateurs de conteneurs pour les professionnels AWS
- Conteneurs et orchestrateurs de conteneurs pour les professionnels GCP