View a markdown version of this page

对大型机批量打印工作负载进行现代化改造 AWS 通过使用火箭企业服务器和 LRS VPSX/MFI - AWS 规范指引

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

对大型机批量打印工作负载进行现代化改造 AWS 通过使用火箭企业服务器和 LRS VPSX/MFI

Shubham Roy 和 Kevin Yung,Amazon Web Services

Abraham Rondon,Micro Focus

Guy Tucker、Levi、Ray 和 Shoup Inc

Summary

此模式向您展示了如何使用 Rocket Enterprise Server 作为现代化大型机应用程序的运行时,将 LRS(Micro Focus Interface Interface)用作打印服务器,在亚马逊网络服务 VPSX/MFI (AWS) 云上实现业务关键型大型机批量打印工作负载的现代化。该模式基于更换平台大型机现代化方法。通过这种方法,您可以将大型机批处理任务迁移到亚马逊弹性计算云 (Amazon EC2),并将大型机数据库(例如 IBM DB2 for)迁移到亚马逊关系数据库服务(Amazon RDS z/OS)。现代化打印工作流程的身份验证和授权由 Microsoft Active Directory 的 AWS Directory Service(也称为 AWS 托管 Microsoft AD)执行。LRS 目录信息服务器 (LRS/DIS) 与 AWS 托管的 Microsoft AD 集成。通过实现批量打印工作负载的现代化,您可以降低 IT 基础设施成本,减轻维护传统系统的技术债务,消除数据孤岛,通过 DevOps 模型提高灵活性和效率,并利用 AWS 云中的按需资源和自动化。

先决条件和限制

先决条件

  • 一个有效的 Amazon Web Services account

  • 大型机打印或输出管理工作负载

  • 有关如何重建和交付在 Rocket Enterprise Server 上运行的大型机应用程序的基本知识(有关详细信息,请参阅 Rocket 文档中的 Rocket 企业服务器数据表。)

  • LRS 云打印解决方案和概念的基础知识。

  • Rocket Enterprise Server 软件和许可证(有关更多信息,请联系 Rocket 销售。)

  • LRS VPSX/MFI、 LRS/Queue、以及 LRS/DIS 软件和许可证(欲了解更多信息,请联系 LRS 销售人员。)

注意

有关大型机批量打印工作负载配置注意事项的更多信息,请参阅此模式其他信息部分中的注意事项

产品版本

架构

源技术堆栈

  • 操作系统 — IBM z/OS

  • 编程语言-通用 Business-Oriented 语言 (COBOL)、作业控制语言 (JCL) 和客户信息控制系统 (CICS)

  • 数据库 — 适用于 z/OS 和虚拟存储访问方法 (VSAM) 的 IBM DB2

  • 安全 — 资源访问控制设施 (RACF)、CA 绝密和访问控制设施 2 (ACF2) z/OS

  • 打印和输出管理 — IBM 大型机 z/OS 打印产品(适用于 z/OS、LRS 和 CA View 的 IBM Tivoli 输出管理器)

目标技术堆栈

  • 操作系统 - 在 Amazon EC2 上运行的 Microsoft Windows 服务器

  • 计算 - Amazon EC2

  • 编程语言 - COBOL、JCL 和 CICS

  • 数据库 - Amazon RDS

  • 安全性 - AWS 托管的 Microsoft AD

  • 打印和输出管理 - AWS 上的 LRS 打印解决方案

  • 大型机运行时环境 - Rocket Enterprise Server

源架构

下图显示了大型机批量打印工作负载的典型当前状态架构:

从用户到大型机服务、Db2 for z/OS、作业调度器、批处理作业和输出分为六个步骤。

下图显示了如下工作流:

  1. 用户在基于 COBOL 编写的 IBM CICS 应用程序构建的互动系统 (SoE) 上执行业务事务。

  2. SoE 调用大型机服务,该服务将业务交易数据记录在记录系统 (SoR) 数据库中,例如 IBM DB2 z/OS

  3. SoR 保留来自 SoE 的业务数据。

  4. 批处理作业调度程序启动批处理作业以生成打印输出。

  5. 批处理作业从数据库中提取数据,根据业务需求格式化数据,然后生成业务输出,例如账单、身份证或贷款报表。最后,批处理作业根据业务需求将输出路由到打印输出管理进行处理和输出交付。 

  6. 打印输出管理接收批处理作业的打印输出,然后将该输出传递到指定的目标,例如电子邮件、使用安全 FTP 的文件共享、使用 LRS 打印解决方案的物理打印机(如本模式所示)或 IBM Tivoli。

目标架构

下图显示了部署在 Amazon Web Services Cloud 中的大型机批量打印工作负载的架构:

在 AWS 上使用调度器、Rocket Enterprise Server 和数据库批量部署应用程序分为四步。

下图显示了如下工作流:

  1. 批处理作业调度程序启动批处理作业来创建打印输出,例如账单、身份证或贷款报表。

  2. 大型机批处理作业(更换平台为 Amazon EC2)使用 Rocket Enterprise Server 运行时系统从应用程序数据库中提取数据,将业务逻辑应用于数据、格式化数据,然后使用 Rocket Software Print Exit(Micro Focus 文档)将数据发送到打印目标。

  3. 应用程序数据库(在 Amazon RDS 上运行的 SoR)保留打印输出的数据。

  4. LRS VPSX/MFI 打印解决方案部署在亚马逊 EC2 上,其操作数据存储在亚马逊弹性区块存储 (Amazon EBS) Elastic Block Store 中。LRS VPSX/MFI 使用 TCP/IP-based LRS/Queue 传输代理通过 Rocket Software JES Print Exit API 收集打印数据,并将数据传送到指定的打印机目的地。

注意

目标解决方案通常不需要更改应用程序来适应大型机格式化语言,例如 IBM Advanced Function Present(AFP)或 Xerox Line Condition Data Stream(LCDS)。有关在 AWS 上使用 Rocket Software 进行大型机应用程序迁移和现代化的更多信息,请参阅博客文章:Empowering Enterprise Mainframe Workloads on AWS with Micro Focus

AWS 基础设施架构

下图显示了适用于大型机批量打印工作负载的高可用性且安全的 AWS 基础设施架构:

Multi-AZ 通过七个步骤在 AWS 上部署 Rocket 软件和 LRS 组件。

下图显示了如下工作流:

  1. 批处理调度程序启动批处理过程,并跨多个可用区部署在 Amazon EC2 上,以实现高可用性 (HA)。

    注意

    此模式不涵盖批处理调度程序的实施。有关实现的详细信息,请参阅调度程序的软件供应商文档。

  2. 大型机批处理作业(用 JCL 或 COBOL 等编程语言编写)使用核心业务逻辑来处理和生成打印输出,例如账单、身份证和贷款对账单。该任务部署在 Amazon EC2 上,跨两个可用区进行 HA,并使用 Rocket Software Print Exit 将打印输出路由到 LRS 以 VPSX/MFI 供最终用户打印。

  3. LRS VPSX/MFI 使用 TCP/IP-based LRS/Queue 传输代理从 Rocket Software JES Print Exit 编程接口收集或捕获打印数据。Print Exit 传递必要的信息,使 LRS VPSX/MFI 能够有效地处理缓冲池文件并动态生成 LRS/Queue 命令。然后使用 Rocket Software 的标准内置函数运行命令。

    注意

    有关从 Rocket Software Print Exit 传递到 LRS/Queue LRS VPSX/MFI 支持的大型机批处理机制的打印数据的更多信息,请参阅此模式的 “其他信息” 部分中的打印数据捕获

  4. 注意

    N etwork Load Balanc er 提供 DNS 名称来将 Rocket Enterprise Server 与 LRS VPSX/MFI : LRS VPSX/MFI 支持第 4 层负载均衡器。Network Load Balancer 还会对 LRS 进行基本的运行状况检查, VPSX/MFI 并将流量路由到运行状况良好的注册目标。

  5. 注意

    LRS VPSX/MFI 打印服务器部署在 Amazon EC2 上,跨两个可用区,用于 HA,并使用 Amazon EBS 作为运营数据存储。LRS 同时 VPSX/MFI 支持 “主动-主动” 和 “主动-被动” 服务模式。该架构使用主动-被动对中的多个可用区作为活动和热备用服务器。如果活动实例处于不健康状态,Network Load Balancer 会对 LRS VPSX/MFI EC2 实例执行运行状况检查,并将流量路由到另一个可用区的热备用实例。打印请求保留在每个 EC2 实例的本地 LRS 作业队列中。在恢复的情况下,必须重新启动失败的实例,LRS 服务才能继续处理打印请求。: LRS 还 VPSX/MFI 可以在打印机机群级别执行运行状况检查。有关更多信息,请参阅此模式的其他信息部分中的打印机队列运行状况检查

  6. AWS 托管 Microsoft AD 与集成 LRS/DIS 以执行打印工作流程身份验证和授权。有关更多信息,请参阅此模式的其他信息部分中的打印身份验证和授权

  7. LRS VPSX/MFI 使用 Amazon EBS 进行块存储。您可以将 Amazon EBS 数据作为时间点快照从活动 EC2 实例备份到 Amazon S3,并将其恢复到热备用服务器 EBS 卷。要自动创建、保留和删除 Amazon EBS 卷快照,您可以使用 A mazon Data Lifecycle Manager 来设置自动快照的频率并根据您的RTO/RPO 要求进行恢复。

工具

AWS 服务

其他工具

  • LRS 和 Rocket Software 共同开发的 LRSVPSX/MFI (Micro Focus Interface)可捕获火箭企业服务器 JES 线轴的输出,并将其可靠地传送到指定的打印目的地。

  • LRS 目录信息服务器 (LRS/DIS) 用于打印工作流程中的身份验证和授权。

  • TCP/IP-based LRS/Queue LRS 使用传输代理通过 R VPSX/MFI ocket Software JES Print Exit 编程接口收集或捕获打印数据。

  • Rocket Enterprise Server 是大型机应用程序的应用程序部署环境。它为使用任何版本的 Rocket Software Enterprise Developer 迁移或创建的大型机应用程序提供执行环境。

操作说明

Task说明所需技能

设置 Rocket Enterprise Server 并部署演示应用程序。

在亚马逊 EC2 上设置 Rocket Enterprise Server,然后在亚马逊 EC2 上部署 Rocket 软件 BankDemo 演示应用程序。

该 BankDemo 应用程序是一个大型机批处理应用程序,用于创建然后启动打印输出。

云架构师
Task说明所需技能

获取用于打印的 LRS 产品许可证。

要获得 LRS、和 LRS 产品许可证 VPSX/MFI LRS/Queue LRS/DIS,请联系 LRS 输出管理团队。您必须提供将安装 LRS 产品的 EC2 实例的主机名。

构建 lead

创建用于安装 LR VPSX/MFI S 的 Amazon EC2 Windows 实例。

按照 Amazon EC2 文档中启动 Amazon EC2 实例的说明,启动 Amazon EC2 Windows 实例。您的实例必须满足 LRS VPSX/MFI 的以下硬件和软件要求: 

  • CPU - 双核

  • 内存 - 16 GB

  • 驱动器 - 500 GB

  • 最小 EC2 实例 - m5.xlarge

  • 操作系统 — Windows/Linux

  • 软件 - 互联网信息服务(IIS)或 Apache

注意

上述硬件和软件要求适用于小型打印机队列(大约 500-1000 台)。要获取完整的要求,请咨询您的 LRS 和 AWS 联系人。

创建 Windows 实例时,请执行以下操作:

  1. 确认 EC2 主机名与用于 LRS 产品许可证的主机名相同。

  2. 通过完成以下操作在 Amazon EC2 中启用 CGI:

    1. 按照以下位置的说明连接到 EC2 实例:

云架构师

在 EC2 实例 VPSX/MFI 上安装 LRS。

  1. 按照 Amazon EC2 文档中的步骤 2:连接到您的实例的说明连接到您的 EC2 实例。 

  2. 注意

    打开发送至您的邮箱的 LRS 电子邮件中的产品下载页面链接。:LRS 产品通过电子文件传输(EFT)分发。 

  3. 下载 LRS VPSX/MFI 并解压缩文件(默认文件夹:c:\LRS)。

  4. 从解压缩的文件夹中启动 LRS 产品安装程序以安装 LRS。 VPSX/MFI 

  5. “选择功能” 菜单中,选择 VPSX® Server (V1R3.022),然后选择 “下一步” 开始安装过程。安装完成后,您将收到一条成功消息。

云架构师

安装 LRS/Queue。

  1. 按照 Amazon EC2 文档中第 2 步:连接到您的实例的说明,连接到您的 Rocket Enterprise Server EC2 实例。

  2. 从 LRS 电子邮件中打开您应该收到的 LRS 产品下载页面的链接,然后下载该文件 LRS/Queue,然后解压缩该文件。

  3. 前往您下载文件的位置,然后启动 LRS 产品安装程序进行安装 LRS/Queue。

云架构师

安装 LRS/DIS。

  1. 按照 VPSX/MFI Amazon EC2 文档中步骤 2:连接到您的实例中的说明连接到您的 LRS EC2 实例。

  2. 从 LRS 电子邮件中打开您应该收到的 LRS 产品下载页面的链接,然后下载该文件 LRS/DIS,然后解压缩该文件。

  3. 转到下载文件的位置,然后启动 LRS 产品安装程序。

  4. 在 LRS 产品安装程序中,展开 LRS 其他工具,选择 LRS DIS,然后选择下一步

  5. 按照 LRS 产品安装程序中的其余说明完成安装过程。

云架构师

创建目标组并将 LRS VPSX/MFI EC2 注册为目标。

按照弹性负载均衡器文档中为网络负载均衡器创建目标组的说明创建目标组。

创建目标组时,请执行以下操作:

  1. 指定组详细信息页面上,对于选择目标类型,选择实例

  2. 对于协议选择 TCP

  3. 对于端口,选择 5500。 

  4. 注册目标页面的可用实例部分,选择 LRS VPSX/MFI EC2 实例。

云架构师

创建网络负载均衡器。

按照弹性负载均衡器文档中创建网络负载均衡器的说明进行操作。您的网络负载均衡器将流量从 Rocket Enterprise Server 路由到 LRS VPSX/MFI EC2。

创建网络负载均衡器时,在侦听器和路由页面上执行以下操作:

  1. 对于协议,选择 TCP。 

  2. 对于端口,选择 5500

  3. 对于默认操作,选择转发至您之前创建的目标组。

云架构师
Task说明所需技能

配置 Rocket 企业服务器进行 LRS/Queue 集成。

  1. 按照 Amazon EC2 文档中第 2 步:连接到您的实例的说明,连接到您的 Rocket Enterprise Server EC2 实例。

  2. 在 Windows 开始菜单上,打开 Rocket Enterprise Server 管理 UI。

  3. 在菜单栏中,选择 NATIVE

  4. 在导航窗格中,选择 Directory Server,然后选择 BANKDEMO 或您的 Enterprise 服务器区域。

  5. 从左侧导航窗格中的常规中,向下滚动到其他部分,将环境变量 (LRSQ_ADDRESS、LRSQ_PORT、LRSQ_COMMAND) 配置为指向 LRSQ。

  6. 对于 LRSQ_ADDRESS,输入您之前创建的网络负载均衡器的 IP 地址或 DNS 名称。

  7. 对于 LRSQ_PORT,输入 VPSX LRSQ 侦听器端口 (5500)

  8. 对于 LRSQ_COMMAND,请输入 LRSQ 可执行文件的路径位置。

注意

LRS 目前支持 DNS 名称的最大字符限制为 50 个,但将来可能会发生变化。如果您的 DNS 名称字符数大于 50,则可以使用网络负载均衡器的 IP 地址作为替代。

云架构师

配置 Rocket 企业服务器以实现 LRS VPSX/MFI 集成。

  1. 将该VPSX_MFI_R2文件夹从 LRS VPSX/MFI 安装程序复制到 Rocket Enterprise Server 位置,网址为C\BANKDEMO\print

  2. 按照 Amazon EC2 文档中第 2 步:连接到您的实例的说明,连接到您的 Rocket Enterprise Server EC2 实例。

  3. 在 Windows 开始菜单上,打开 Rocket Enterprise Server 管理 UI。

  4. 在菜单栏中,选择 NATIVE

  5. 在导航窗格中,选择 Directory Server,然后选择 BANKDEMO

  6. BANKDEMO 下方选择 JES

  7. JES 程序路径下,添加来自 C\BANKDEMO\print 位置的 DLL(VPSX_MFI_R2) 路径。

云架构师
Task说明所需技能

将 Rocket Software Print Exit 模块关联到 Rocket Enterprise Server 批量打印机服务器执行进程。

  1. 按照 Amazon EC2 文档中第 2 步:连接到您的实例的说明,连接到您的 Rocket Enterprise Server EC2 实例。

  2. 在 Windows 开始菜单上,打开 Rocket Enterprise Server 管理 UI。

  3. 在菜单栏中,选择 NATIVE

  4. 在导航窗格中,选择 Directory Server,然后选择 BANKDEMO

  5. BANKDEMO 下方选择 JES,然后向下滚动到打印机

  6. 打印机中,将 Rocket Software Print Exit 模块(批处理 LRSPRTE6)与 Rocket Enterprise Server 批处理打印机服务器执行进程(SEP)相关联。这允许将打印输出路由到 LRS VPSX/MFI。

  7. 登录到 Enterprise Server 管理 UI。

有关配置的更多信息,请参阅 Micro Focus 文档中的使用退出

云架构师

在 LRS VPSX/MFI 中添加打印机。

  1. 按照 VPSX/MFI Amazon EC2 文档中步骤 2:连接到您的实例中的说明连接到您的 LRS EC2 实例。

  2. 从 Windows 开始菜单打开 VPSX Web 界面。

  3. 在导航窗格中,选择打印机

  4. 选择添加,再选择添加用户

  5. 打印机配置页上,对于打印机名称,输入 Local

  6. 对于 VPSX ID,输入 VPS1

  7. 对于 CommType,选择 TCPIP/LRSQ

  8. 在 “Host/IP 地址” 中,输入要添加的物理打印机的 IP 地址。

  9. 对于设备,输入您的设备名称。

  10. 选择 Windows 驱动程序Linux/Mac 驱动程序

  11. 选择 添加

云架构师

在 LRS VPSX/MFI 中创建打印用户。

  1. 按照 VPSX/MFI Amazon EC2 文档中步骤 2:连接到您的实例中的说明连接到您的 LRS EC2 实例。

  2. 从 Windows 开始菜单打开 VPSX Web 界面。

  3. 在导航窗格中,选择安全,然后选择用户

  4. 用户名列中,选择 admin,然后选择复制

  5. 在 “用户配置文件维护” 窗口中,在 “用户名” 中输入用户名(例如 PrintUser)。

  6. 对于说明,输入简短说明(例如,测试打印的用户)。

  7. 选择更新。这将创建一个打印用户(例如,PrintUser)。

  8. 在导航窗格中的用户下方,选择您创建的新用户。

  9. 命令菜单中选择安全

  10. 安全规则页面上,选择所有适用的打印机安全和作业安全选项,然后选择保存

  11. 要将新的打印用户添加到管理员组,请在导航窗格中选择安全,然后选择配置

  12. 安全配置窗口中,将新的打印用户添加到管理员列中。

云架构师
Task说明所需技能

使用用户和组创建 AWS Managed Microsoft AD 域。

  1. 按照 AWS Directory Service 文档中创建 AWS Managed Microsoft AD 目录的说明,在 AWS Managed Microsoft AD 上创建 Active Directory。 

  2. 按照 AWS Directory Service 文档中步骤 3:部署 EC2 实例来管理您的 AWS Managed Microsoft AD 的说明,部署 EC2 实例(Active Directory 管理器)并安装 Active Directory 工具来管理您的 AWS Managed Microsoft AD。

  3. 注意

    按照 Amazon EC2 文档中的步骤 2:连接到您的实例的说明连接到您的 EC2 实例。:当您连接到 EC2 实例时,请在 Windows 安全窗口中输入您的管理员凭证(针对您在第一步中创建的目录)。

  4. 在 Windows 开始菜单的 Windows 管理员工具下方,选择 Active Directory 用户及计算机

  5. 按照 AWS Directory Service 文档中创建用户的步骤在 Active Directory 域中创建打印用户。

云架构师

加入 LRS VPSX/MFI EC2 加入 AWS 托管的微软 AD 域。

自动加入你的 AWS 托管微软 AD 域(AWS 知识中心文档)或手动加入 LRS VPSX/MFI EC2(AWS Directory Service 文档)。

云架构师

配置并 LRS/DIS 与 AWS 托管的 Microsoft AD 集成。

  1. 按照 VPSX/MFI Amazon EC2 文档中步骤 2:连接到您的实例中的说明连接到您的 LRS EC2 实例。

  2. 在 Windows 开始菜单中,打开 VPSX Web 界面。

  3. 在导航窗格中,选择安全,然后选择配置

  4. 安全配置页面的安全参数部分中,对于安全类型,选择内部

  5. 安全参数部分中输入您对其余选项的首选项。

  6. 从 Microsoft Windows 开始菜单中打开 LRS 输出管理文件夹,选择服务器启动,然后选择服务器停止

  7. 使用您的 Active Directory 用户名和密码登录 LRS VPSX/MFI 。

云架构师
Task说明所需技能

从 Rocket Softwar BankDemo e 应用程序启动批量打印请求。

  1. 在 Rocket Enterprise Server EC2 实例中打开 3270 终端模拟器。

  2. 通过运行以下命令连接到 BankDemo 应用程序:connect 127.0.0.1:9278

  3. 在 BankDemo 命令行界面上,对于用户 ID,输入 B0001。对于密码,输入非空白密钥。

  4. 对于请求打印报表选项,在空行中输入 X

  5. 发送语句依据部分中,对于邮件,输入 Y,然后按 F10。

测试工程师

在 LRS VPSX/MFI 中检查打印输出。

  1. 按照 VPSX/MFI Amazon EC2 文档中步骤 2:连接到您的实例中的说明连接到您的 LRS EC2 实例。

  2. 在 Windows 开始菜单中,打开 VPSX Web 界面。

  3. 在导航窗格中,选择打印机,然后选择输出队列

  4. 假脱机 ID列中,选择打印机队列中请求的假脱机 ID。

  5. 操作选项卡的命令列中,选择浏览。 

现在,您可以看到账户对账单的打印输出,其中包含账户号码描述日期金额余额列。有关示例,请参阅此模式的 batch_print_output 附件。

测试工程师

相关资源

附加信息

注意事项

在现代化改造过程中,您可以考虑大型机批处理及其生成的输出的各种配置。每个使用大型机平台的客户和供应商都根据直接影响打印的特殊要求对平台进行了定制。例如,您当前的平台可能会将 IBM 高级功能演示 (AFP) 或 Xerox 线路条件数据流 (LCDS) 合并到当前工作流程中。此外,大型机回车控制字符通道命令字可能会影响打印页面的外观,可能需要特殊处理。作为现代化规划过程的一部分,我们建议您评测并了解特定打印环境中的配置。

打印数据采集

Rocket Software Print Exit 传递必要的信息,使 LRS VPSX/MFI 能够有效地处理线轴文件。该信息由在相关控制块中传递的字段组成,例如:

  • JOBNAME

  • OWNER (USERID)

  • DESTINATION

  • FORM

  • FILENAME

  • WRITER

LRS VPSX/MFI 支持以下大型机批处理机制,用于从 Rocket Enterprise Server 捕获数据。

  • 使用标准 z/OS JCL SYSOUT 语句进行批 print/spool 处理 COBOL DD/OUTPUT

  • 使用标准 z/OS JCL SUB CA-SPOOL SYS DD 语句进行批 print/spool 处理 COBOL 处理

  • IMS/COBOL print/spool 使用 CBLTDLI 接口进行处理(有关支持的方法和编程示例的完整列表,请参阅产品许可证随附的 LRS 文档。)

打印机队列运行状况检查

LRS VPSX/MFI (LRS LoadX) 可以执行深入的运行状况检查,包括设备管理和操作优化。设备管理可以检测打印机设备中的故障,并将打印请求路由到正常运行的打印机。有关打印机队列的深入运行状况检查的详细信息,请参阅产品许可证附带的 LRS 文档。

打印身份验证和授权

LRS/DIS 允许 LRS 应用程序使用微软 Active Directory 或 LDAP 服务器对用户 ID 和密码进行身份验证。除了基本的打印授权外,还 LRS/DIS 可以在以下用例中应用粒度级别的打印安全控制:

  • 管理谁可以浏览打印机作业。

  • 管理其他用户作业的浏览级别。

  • 管理操作任务。例如,命令级安全性,例如清除 hold/release、修改、复制和重新路由。安全性可以由或组(类似于 AD 组 User-ID 或 LDAP 组)进行设置。

附件

要访问与此文档关联的其他内容,请下载并解压缩以下文件:attachment.zip