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

将 IBM z/TPF 大型机系统重构到 Azure

Azure Kubernetes 服务 (AKS)
Azure Cosmos DB
Azure 虚拟网络
用于 Redis 的 Azure 缓存

从 z/TPF 大型机迁移到云的组织需要一个能够处理大量事务的可靠平台。 该解决方案提供了支持云的应用程序和数据库,并且在功能上与 z/TPF 旧版对应组件等效。

体系结构

大型机体系结构

显示迁移前的大型机体系结构的示意图

下载此体系结构的 Visio 文件

数据流

  • 用户通过 TCP/IP 输入数据,包括 TN3270 和 HTTP(S)。
  • 数据通过标准大型机协议输入大型机。
  • 应用程序接收数据。 这些应用程序通常是联机系统。 汇编程序、C++ 或 Saber Talk 在已启用的环境中运行。
  • 非 SQL 数据和数据库服务,如 Azure Cosmos DB,存储数据。
  • 中间件和实用程序服务管理环境中的磁带存储、排队、输出和 Web 服务等任务。
  • 共享内存耦合协调多个处理器。
  • 分区用于在环境中运行独立的工作负载或分隔的工作类型。
  • 操作系统在引擎和它运行的软件之间提供接口。

Azure 体系结构

示意图显示迁移后的 Azure 体系结构。

下载此体系结构的 Visio 文件

将大型机系统迁移到 Azure 需要一个支持高性能内存共享机制和低延迟(微秒)的高性能 IP 堆栈的平台,以提供 z/TPF 级别的性能。

z/TPF 大型机使用称为耦合设施的共享内存功能以及称为 HiperSockets 的低延迟 IP 堆栈。 为了实现类似的功能,此体系结构使用了跨多个节点提供共享 I/O 和内存的驱动程序。

Azure Cosmos DB NoSQL 数据库用于高性能存储。 该存储解决方案提供高速和高性能的数据持久性和检索。

数据流

  1. 输入,通常通过来自远程客户端的 Azure ExpressRoute 或通过当前在 Azure 中运行的其他应用程序。 在任一情况下,TCP/IP 连接提供了连接到系统的主要方式。 通过 TLS 端口 443 提供对基于 Web 的应用程序的用户访问。 要通过最小化开放端口来最大限度地提高安全性,你可以使用 Azure Bastion 主机以使管理员访问虚拟机。
  2. 在 Azure 上,Azure 负载均衡器用于访问应用程序计算群集。 Kubernetes 提供可靠的负载均衡和缩放。 在这种情况下,如果整个群集服务出现故障,前端负载均衡器会提供另一个级别的故障转移功能以保持业务连续性。
  3. VM、Kubernetes 或虚拟机规模集用于部署。
  4. 应用程序服务器接收计算群集中的输入,使用 Azure Cache for Redis 或远程直接内存访问 (RDMA) 共享应用程序状态。
  5. 体系结构在 Red Hat Enterprise Linux、SUSE Linux 或 Windows 上运行。
  6. 单一的根 I/O 虚拟化 (SR-IOV) 驱动程序用于满足性能要求。 SR-IOV 使多个 VM 能够共享相同的 PCIe 物理硬件资源。 此处使用的驱动程序是基于融合以太网的 RDMA(简称 RoCE)或基于以太网的 InfiniBand(简称 IBoE)。 这些驱动程序允许同一以太网广播域中的两台主机通过以太网链路层进行通信。
  7. RDMA/InfiniBand 或 RoCE 驱动程序允许两台主机作为一个池共享内存。
  8. Azure Cache for Redis 提供了一种缓存解决方案,该解决方案通过存储最常用数据和会话状态的副本来缩短应用程序响应时间。
  9. Service Fabric 群集提供容器编排。

组件

此解决方案配有以下 Azure 组件:

  • Azure ExpressRoute 可通过连接提供商提供的专用光纤连接将本地网络扩展到 Azure。 ExpressRoute 可与 Azure 和 Microsoft 365 等云服务建立连接。
  • Azure Bastion 是一项完全托管服务,可帮助保护对虚拟机的远程访问。
  • Azure 负载均衡器将传入流量分配到计算资源群集。 你可以定义用于分配流量的规则和其他标准。
  • Azure Kubernetes 服务 (AKS),这是一项完全托管的 Kubernetes 服务,用于部署和管理容器化应用程序。 AKS 提供无服务器 Kubernetes(一种整合的持续集成和持续交付 (CI/CD) 体验)以及企业级安全性和管理。
  • Azure 虚拟网络是 Azure 专用网络的基本构建块。 虚拟网络中的 Azure VM 能够以增强了安全性相互通信,与 Internet 通信,也可以与本地网络通信。 虚拟网络类似于传统的本地网络,但具有 Azure 基础结构的优势,例如可缩放性、高可用性和隔离性。
  • Azure Cache for Redis 向应用程序体系结构添加高速缓存层,以高速处理大量数据。 Azure Cache for Redis 可以简单且经济高效地缩放性能,并且具有完全托管服务的优势。
  • Azure 数据库提供完全托管的关系数据库和 NoSQL 数据库,以满足新式应用程序的需求。 自动化基础结构管理提供可缩放性、可用性和安全性。
    • Azure Cosmos DB 是完全托管的快速 NoSQL 数据库,具有适合于任何规模的开放式 API。

备选方法

此解决方案支持在容器、VM 或虚拟机规模集中部署。 与 VM 不同,容器和规模集可以快速横向扩展。 由于缩放单元是容器,因此基础结构利用率也将得以优化。

你可以使用几乎未更改的旧版 Web 应用程序表示层,以最大限度地减少用户再培训。 或者,你可以使用现代用户体验框架更新 Web 应用程序表示层。

方案详细信息

大型机系统的维护成本很高,了解这些系统的开发人员正在减少。 但是,从 z/TPF 大型机迁移到云的组织需要一个能够处理大量事务的可靠平台。 该解决方案提供了支持云的应用程序和数据库,并且在功能上与 z/TPF 旧版对应组件等效。

该解决方案旨在满足以下要求:

  • 重构的应用程序必须保持与原始组件的功能等效。
  • 重构的应用程序的性能必须不低于原始应用程序。
  • 重构的应用程序必须是云就绪的,并通过标准的 DevOps 工具链交付,并实施 DevOps 最佳做法。

可能的用例

在下列场景下,重构为 Azure 很有优势:

  • 实现基础结构现代化,并避免与大型机相关的高成本、限制和严格性。
  • 降低运营和资本支出。
  • 将大型机工作负载移动到云中,而不需要完全重新编写。
  • 迁移任务关键型应用程序,但与其他本地应用程序保持连续性。
  • 利用 Azure 提供的水平和垂直可扩展性。
  • 实现提供灾难恢复的解决方案。

注意事项

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

可靠性

可靠性可确保应用程序能够履行对客户的承诺。 有关详细信息,请参阅 可靠性的设计评审清单。

Kubernetes 提供了一个群集自动缩放程序,可根据节点池中请求的计算资源调整所需的节点数。 群集自动缩放器每 10 秒监视一次 Metrics API 服务器,以确定是否需要更改节点计数。

安全性

安全性提供针对故意攻击和滥用宝贵数据和系统的保证。 有关详细信息,请参阅 安全的设计评审清单。

这个体系结构主要建立在 Kubernetes 上,其中包括 pod 安全标准机密等安全组件。 Azure 还提供其他安全功能,例如 Microsoft Entra ID、Microsoft Defender for Containers、Azure Policy、Azure 密钥保管库、网络安全组和协调式群集升级。

Azure Bastion 通过尽量减少开放端口,提高了管理员访问的安全性。 Azure Bastion 直接从 Azure 门户中提供了与虚拟网络 VM 的高度安全 RDP 或 SSH 连接(基于 TLS)。

成本优化

成本优化是研究减少不必要的开支和提高运营效率的方法。 有关详细信息,请参阅 成本优化的设计评审清单。

使用 Azure 定价计算器估算实现此解决方案的成本。

卓越运营

卓越运营涵盖部署应用程序并使其在生产环境中运行的运营流程。 有关详细信息,请参阅 卓越运营的设计评审清单。

除了支持更快的云采用之外,重构还促进了 DevOps 和敏捷工作原则的采用。 它提供了开发和生产部署选项的完全灵活性。

性能效率

性能效率是工作负荷的缩放能力,以满足用户以高效方式满足它的需求。 有关详细信息,请参阅 性能效率的设计评审清单。

此体系结构专为大量事务而设计。 此体系结构使用 Azure 计算和共享 I/O 和内存来创建满足这些需求的耦合环境。

为了满足 z/TPS 性能的要求,此体系结构使用了 Kubernetes 群集。

作者

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

主要作者:

  • Marlon Johnson | 高级项目经理

其他参与者:

后续步骤

有关详细信息,请联系 legacy2azure@microsoft.com

请参阅这些附加资源: