你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

多云区块链 DLT

Azure Arc
Azure DevOps
Azure Kubernetes 服务 (AKS)

此体系结构结合了开放源代码区块链自动化框架 (BAF) 和已启用 Azure Arc 的 Kubernetes,以使用多方 DLT 并构建跨云区块链解决方案。

体系结构

此解决方案提供异类、多方、与云无关的 DLT 网络。 各方可以在任何位置托管节点,但这些节点仍是网络的一部分。

Diagram showing a three-party blockchain network with each party using a different cloud provider, managed and monitored through BAF and Azure Arc.

Workflow

组件

  • Kubernetes 是托管账本和应用程序的基于容器的基础结构。 此示例假定有三个托管 Kubernetes 群集,分别位于 AKS、Amazon EKS 和 GCP GKE 中。 你几乎可以在任何公共或专用位置托管 Kubernetes 群集。

  • 开源区块链自动化框架 (BAF) 是在基于公有云和私有云的基础结构上提供一致的生产就绪 DLT 网络的方法。 BAF 支持 QuorumCordaHyperledger DLT。

  • Azure Arc 通过扩展 Azure 控制平面,跨资源和位置标准化可见性、操作和合规性。

  • 已启用 Azure Arc 的 Kubernetes 集中管理任何位置的 Kubernetes 群集。 已启用 Azure Arc 的 Kubernetes 适用于任何经云原生计算基金会 (CNCF) 认证的 Kubernetes 群集,包括:

    • Azure 上的 AKS 引擎
    • Azure Stack Hub 上的 AKS 引擎
    • Amazon EKS
    • GCP GKE
    • VMware vSphere
  • Azure Monitor 是一个全面的解决方案,可用于收集、分析和使用遥测数据。 Azure Monitor 容器见解监视部署到已启用 Azure Arc 的 Kubernetes 群集的容器工作负荷的性能。

  • Azure Policy 有助于强制执行组织标准并进行大规模的合规性评估。 Azure Policy for Kubernetes 可以管理和报告所有已启用 Azure Arc 的 Kubernetes 群集的合规性状态。

  • Azure 容器注册表可以所有类型的容器部署生成、存储和管理容器映像与项目。

  • Azure DevOps 是一组开发人员服务,可提供全面的应用程序和基础结构生命周期管理。 Azure DevOps 包括工作跟踪、源代码管理、BLD 和 CI/CD、包管理和测试解决方案。

备选方法

方案详细信息

区块链和分布式账本技术 (DLT) 网络都是多方系统。 每一方都可以有自己的工具、方法和云服务提供商。 某些提供商的公共或专用区块链网络的区域可用性、可伸缩性或网络隔离性可能有限。

开源区块链自动化框架 (BAF) 是跨不同公有云和私有云部署生产就绪 DLT 的一致方法。 尽管 BAF 可以管理部署,但它不提供集中基础结构管理和监视。 尽管某些云服务提供商的区块链服务提供基础结构管理,但可能要求各方都在同一云或基础结构中。

要协作并构建区块链网络,使用不同云服务提供商和基础结构的各方需要一个通用的管理平台。 无论托管基础结构如何,此平台都应该为各种资源和位置提供可见性、操作和合规性标准。

本文探讨 BAF 和已启用 Azure Arc 的 Kubernetes 如何构建侧重于便携性和控制的跨云区块链解决方案。

可能的用例

此方法支持:

  • 异类 DLT 部署,其中独立的组织可拥有和管理每个节点。

  • 跨多方网络的集中 DevOps、监视和合规管理。

注意事项

这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改善工作负载质量的指导原则。 有关详细信息,请参阅 Microsoft Azure 架构良好的框架

要了解 AKS 最佳做法,请参阅 Azure Kubernetes 服务 (AKS) 群集的基线体系结构。 你可以找到其他云服务提供商的类似指南。

可用性和可伸缩性

尽管 Azure Arc 可以管理和监视 Kubernetes 群集,但每个群集必须独立实现可伸缩性、高可用性和灾难恢复功能。

安全性

安全性针对蓄意攻击及滥用宝贵数据和系统提供保障措施。 有关详细信息,请参阅安全性支柱概述

BAF 使用 HashiCorp Vault 来保存证书和密钥。 要使用 BAF,至少需要一个 Vault 服务器。 BAF 建议每个组织针对生产就绪项目使用一个 Vault。

成本优化

成本优化是关于寻找减少不必要的费用和提高运营效率的方法。 有关详细信息,请参阅成本优化支柱概述

要估算 Azure 资源成本,请使用 Azure 定价计算器

部署此方案

  1. 对于此示例,在 AKS、GKE 和 EKS 中创建托管 Kubernetes 群集,并将这些群集加入 Azure Arc。
  2. 按照安装和配置 BAF 先决条件的步骤操作。
  3. (可选)创建 Azure DevOps 组织和项目,将 BAF 存储库克隆到新的 Azure DevOps 项目中。
  4. (可选)在 Azure 中创建 Ansible 控制器 VM 作为自定义生成代理来部署 BAF 组件。

作者

本文由 Microsoft 维护, 它最初是由以下贡献者撰写的。

主要作者:

  • Safi Ali | 高级云解决方案架构师

若要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。

后续步骤