本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
通过安装 IBM z/OS 进行访问 AWS 服务AWS CLI
由 Souma Ghosh (AWS)、Phil de Valence () 和 Paulo Vitor Pereir AWS a () 创作 AWS
摘要
AWS Command Line Interface (AWS CLI)
中的所有 AWS 基础设施即服务 (IaaS) 管理、管理和访问功能 AWS Management Console 均在和中 AWS API提供。 AWS CLI您可以将安装在 IBM z/OS 大型机 AWS CLI 上,以便直接从 z/OS 进行访问、管理和交互 AWS 服务 。使用 AWS CLI 户和应用程序可以执行各种任务,例如:
在 z/OS 和亚马逊简单存储服务 (Amazon S3) Simple S3 对象存储之间传输文件或数据集并查看存储桶的内容
启动和停止不同的 AWS 资源;例如,在 AWS Mainframe Modernization 环境中启动批处理作业
调用 AWS Lambda 函数来实现常见的业务逻辑
与人工智能和机器学习 (AI/ML) 以及分析服务集成
此模式描述如何在 z/OS AWS CLI 上安装、配置和使用。您可以全局安装它,因此所有 z/OS 用户都可以使用它,也可以在用户级别上使用。该模式还详细说明了如何 AWS CLI 在 z/OS Unix System Services (USS) 的交互式命令行会话中使用或将其用作批处理作业。
先决条件和限制
先决条件
从 z/OS 到的网络通信 AWS
默认情况下,使用HTTPSTCP端口 443 AWS CLI 向发送请求。 AWS 服务 要 AWS CLI 成功使用,您必须能够在TCP端口 443 上建立出站连接。您可以使用以下任一 z/OS USS 命令(其中一些可能未安装在您的环境中)来测试从 z/OS 到以下的网络连接: AWS
ping amazonaws.com dig amazonaws.com traceroute amazonaws.com curl -k https://docs.aws.amazon.com/cli/v1/userguide/cli-chap-welcome.html
AWS 凭证
为了与 z/OS 中的 AWS Cloud 服务进行通信, AWS CLI 需要您配置一些具有访问目标权限的凭据。 AWS 账户对于编程命令 AWS,您可以使用访问密钥,其中包括访问密钥 ID 和私有访问密钥。如果没有访问密钥,您可以使用进行创建 AWS Management Console。最佳做法是,除非需要 root 用户,否则不要将 AWS 账户 root 用户的访问密钥用于任何任务。取而代之的是,创建一个新的管理员IAM用户,并准备好使用最低权限为该用户设置访问密钥。创建用户后,您可以为该用户创建访问密钥 ID 和私有访问密钥。
警告
AWS Identity and Access Management (IAM) 用户拥有长期凭证,存在安全风险。为帮助减轻这种风险,我们建议仅向这些用户提供执行任务所需的权限,并在不再需要这些用户时将其移除。
IBM适用于 z/OS 的 Python
AWS CLI 需要 Python 3.8 或更高版本。 IBM已启用 Python 使用适用于 z/OS 的IBM开放企业 Python
在 z/OS 上运行。 IBMOpen Enterprise Python 可通过 Shopz SMP /E 免费获得,也可以从网站下载该PAXIBM文件。 有关说明,请参阅适用于 z/OS 的 Ope IBM n Enterprise Python 的安装和配置文档 。
限制
此模式中提供的安装说明仅适用于AWS CLI 版本 1。的最新版本 AWS CLI 是版本 2。但是,这种模式使用的是旧版本,因为版本 2 的安装方法不同,而且版本 2 中可用的二进制可执行文件与 z/OS 系统不兼容。
产品版本
AWS CLI 第 1 版
Python 3.8 或更高版本
架构
技术堆栈
运行 z/OS 的大型机
大型机 z/OS UNIX 系统服务 () USS
Mainframe Open MVS (OMVS) — z/OS UNIX shell 环境命令界面
大型机磁盘,例如直接访问存储设备 () DASD
AWS CLI
目标架构
下图显示了 IBM z/O AWS CLI S 上的部署。您可以 AWS CLI 从交互式用户会话(例如)和 telnet 会话中调用。SSH您也可以使用作业控制语言 (JCL) 从批处理作业中调用它,也可以从任何可以调用 z/OS Unix shell 命令的程序中调用它。

通过 TCP /IP 网络 AWS CLI 与 AWS 服务 端点通信。这种网络连接可以通过互联网进行,也可以通过从客户数据中心到 AWS Cloud 数据中心的私人 AWS Direct Connect 连接进行。通信使用 AWS 凭据进行身份验证并加密。
自动化和扩缩
您可以使用探索的功能 AWS CLI 并开发 USS shell 脚本来管理 z/O AWS S 中的资源。 AWS 服务 您还可以从 z/OS 批处理环境中运行 AWS CLI 命令和 shell 脚本,还可以通过与大型机调度器集成,自动执行批处理作业,使其按特定的计划运行。 AWS CLI 命令或脚本可以在参数 (PARMs) 和过程 (PROCs) 中编码,也可以按照使用不同参数PROC从不同的批处理作业调用PARM或的标准方法进行缩放。
工具
AWS Command Line Interface (AWS CLI) 是一个开源工具,可帮助您 AWS 服务 通过命令行 shell 中的命令进行交互。
最佳实践
出于安全考虑,请将访问权限限制在存储 AWS 访问密钥详细信息的USS目录中。仅允许使用的用户或程序进行访问 AWS CLI。
请勿将 AWS 账户 root 用户访问密钥用于任何任务。取而代之的是,为自己创建一个新的管理员IAM用户,并使用访问密钥对其进行设置。
警告IAM用户拥有存在安全风险的长期凭证。为帮助减轻这种风险,我们建议仅向这些用户提供执行任务所需的权限,并在不再需要这些用户时将其移除。 |
---|
操作说明
任务 | 描述 | 所需技能 |
---|---|---|
安装 Python 3.8 或更高版本。 |
| 大型机 z/OS 管理员 |
设置USS环境变量。 | 向配置文件中添加环境变量。您可以将它们添加到单个用户的 注意此模式假定
| 大型机 z/OS 管理员 |
测试 Python 的安装。 | 运行 python 命令:
输出应确认您已正确安装了 Python 3.8 或更高版本。 | 大型机 z/OS 管理员 |
验证或安装 pip。 |
| 大型机 z/OS 管理员 |
安装 AWS CLI 版本 1。 |
| 大型机 z/OS 管理员 |
任务 | 描述 | 所需技能 |
---|---|---|
配置 AWS 访问密钥、默认区域和输出。 | 该AWS CLI 文档描述了设置 AWS 访问权限的不同选项。您可以根据组织的标准选择配置。此示例使用短期凭证配置。
| AWS管理员、大型机 z/OS 管理员、大型机 z/OS 开发人员 |
测试 AWS CLI. |
| 大型机 z/OS 管理员、大型机 z/OS 开发人员 |
任务 | 描述 | 所需技能 |
---|---|---|
下载并传输示例CSV文件。 |
| 应用程序开发人员、大型机 z/OS 开发人员 |
创建 S3 存储桶并上传CSV文件。 |
| 应用程序开发人员、大型机 z/OS 开发人员 |
查看 S3 存储桶和上传的文件。 |
有关上传对象的更多信息,请参阅 Amazon S3 文档中的 Amazon S3 入门。 | 将军 AWS |
在亚马逊 Athena 表上运行SQL查询。 |
SQL查询的输出将显示您的CSV文件内容。 | 将军AWS,应用程序开发者 |
任务 | 描述 | 所需技能 |
---|---|---|
上传示例文件。 | 大型机 z/OS 开发人员 | |
创建批处理JCL。 | 按JCL如下方式对批次进行编码,以创建目标 S3 存储桶、上传数据集并列出存储桶内容。请务必将目录名称、文件名和存储桶名称替换为您自己的值。
| 大型机 z/OS 开发人员 |
提交批处理JCL作业。 |
| 大型机 z/OS 开发人员 |
查看上传到 S3 存储桶的数据集。 |
| 将军 AWS |
相关资源
其他信息
USER。 DATA。 FIXED在ISPF选项 3.4 中(数据集列表实用程序)

SYSOUT已提交的批处理作业的

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