

AWS 大型机现代化服务（托管运行时环境体验）不再向新客户开放。有关类似于 AWS 大型机现代化服务（托管运行时环境体验）的功能，请浏览 AWS 大型机现代化服务（自我管理体验）。现有客户可以继续正常使用该服务。有关更多信息，请参阅[AWS 大型机现代化可用性变更](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html)。

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

# 火箭软件（前身为 Micro Focus）教程
<a name="tutorials-mf"></a>

本节中的教程可帮助您开始在 Rocket Software 运行时引擎中为 AWS 大型机现代化服务设置各种任务。这些教程用于设置示例应用程序、使用 Rocket Enterprise Developer 中的模板以及设置 Enterprise Analyzer。

**Topics**
+ [

# 教程：为 BankDemo 示例应用程序设置 Rocket 软件（前身为 Micro Focus）版本
](tutorial-build-mf.md)
+ [

# 教程：设置 WorkSpaces 应用程序以用于 Rocket Enterprise Analyzer 和 Rocket
](set-up-appstream-mf.md)
+ [

# 教程：在 Rocket Enterprise Developer（前身为 Micro
](tutorial-templates-ed.md)
+ [

# 教程：在 WorkSpaces 应用程序上设置企业分析器
](set-up-ea.md)
+ [

# 教程：在 WorkSpaces 应用程序上设置 Rocket 企业开发人员
](set-up-ed.md)

# 教程：为 BankDemo 示例应用程序设置 Rocket 软件（前身为 Micro Focus）版本
<a name="tutorial-build-mf"></a>

AWS 大型机现代化使您能够为迁移的应用程序设置构建和持续 integration/continuous 交付 (CI/CD) 管道。这些版本和管道使用 AWS CodeBuild AWS CodeCommit、和 AWS CodePipeline 来提供这些功能。 CodeBuild 是一项完全托管的生成服务，它可以编译源代码、运行单元测试并生成可随时部署的工件。 CodeCommit 是一项版本控制服务，使您能够在云端私下存储和管理 Git 存储库。 AWS CodePipeline 是一项持续交付服务，可让您对发布软件所需的步骤进行建模、可视化和自动化。

本教程演示 AWS CodeBuild 如何使用从 Amazon S3 编译 BankDemo 示例应用程序源代码，然后将编译后的代码导出回 Amazon S3。

AWS CodeBuild 是一项完全托管的持续集成服务，用于编译源代码、运行测试和生成随时可以部署的软件包。使用 CodeBuild，您可以使用预先打包的构建环境，也可以使用自己的构建工具创建自定义构建环境。此演示场景使用后者，它由一个使用预打包的 Docker 镜像的 CodeBuild 构建环境组成。

**重要**  
在启动大型机现代化项目之前，我们建议您了解[适用于大型机的AWS 迁移加速计划 (MAP)](https://aws.amazon.com/migration-acceleration-program/mainframe/)，或者联系 [AWS 大型机专家](mailto: mainframe@amazon.com)，了解实现大型机应用程序现代化所需的步骤。

**Topics**
+ [

## 先决条件
](#tutorial-build-mf-prerequisites)
+ [

## 第 1 步：与 AWS 账户共享构建资产
](#tutorial-build-mf-assets)
+ [

## 步骤 2：创建 Amazon S3 存储桶
](#tutorial-build-mf-s3)
+ [

## 步骤 3：创建构建规范文件
](#tutorial-build-mf-spec)
+ [

## 步骤 4：上传源文件
](#tutorial-build-mf-upload)
+ [

## 步骤 5：创建 IAM 策略
](#tutorial-build-mf-IAM-policy)
+ [

## 步骤 6：创建 IAM 角色
](#tutorial-build-mf-IAM-role)
+ [

## 步骤 7：将 IAM 策略附加到 IAM 角色
](#tutorial-build-mf-attach)
+ [

## 第 8 步：创建 CodeBuild 项目
](#tutorial-build-mf-create-project)
+ [

## 步骤 9：启动构建
](#tutorial-build-mf-start)
+ [

## 步骤 10：下载输出构件
](#tutorial-build-mf-download-output)
+ [

## 清理 资源
](#tutorial-build-mf-clean)

## 先决条件
<a name="tutorial-build-mf-prerequisites"></a>

开始本教程之前，请满足以下先决条件：
+ 下载[BankDemo 示例应用程序](https://d3lkpej5ajcpac.cloudfront.net/demo/mf/BANKDEMO-build.zip)并将其解压缩到一个文件夹。源文件夹中包含 COBOL 程序和 Copybook 以及定义。此外，它还包含一个供参考的 JCL 文件夹，尽管您不需要构建 JCL。该文件夹还包含构建所需的元文件。
+ 在 AWS 大型机现代化控制台中，选择**工具**。在**分析、开发和构建资产**中，选择**使用我的 AWS 账户共享资产**。

## 第 1 步：与 AWS 账户共享构建资产
<a name="tutorial-build-mf-assets"></a>

在此步骤中，您需要确保与您的 AWS 账户共享构建资产，尤其是在使用资产的地区。

1. 打开 AWS 大型机现代化控制台，网址为[https://console.aws.amazon.com/m2/](https://us-west-2.console.aws.amazon.com/m2/home?region=us-west-2#/)。

1. 在左侧导航中，选择**工具**。

1. 在**分析、开发和生成资产**中，选择**与我的 AWS 账户共享资产**。

**重要**  
您需要在要进行构建的每个 AWS 区域执行一次此步骤。

## 步骤 2：创建 Amazon S3 存储桶
<a name="tutorial-build-mf-s3"></a>

在此步骤中，您将创建两个 Amazon S3 存储桶。一个是用于存放源代码的输入存储桶，另一个是用于存放构建输出的输出存储桶。有关更多信息，请参阅《Amazon S3 用户指南》**中的[创建、配置和使用 Amazon S3 存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html)。

1. 要创建输入存储桶，登录 Amazon S3 控制台并选择**创建存储桶**。

1. 在**常规配置**中，提供存储桶的名称并指定要 AWS 区域 在哪里创建存储桶。示例名称是`codebuild-regionId-accountId-input-bucket`， AWS 区域 其中`regionId`是存储桶的，`accountId`是您的 AWS 账户 ID。
**注意**  
如果您要在与美国东部（弗吉尼亚北部）不同的 AWS 区域 位置创建存储桶，请指定`LocationConstraint`参数。有关更多信息，请参阅《Amazon Simple Storage Service API 参考》**中的[创建存储桶](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)。

1. 保留所有其他设置并选择**创建存储桶**。

1. 重复步骤 1 – 3 来创建输出存储桶。例如，名称是`codebuild-regionId-accountId-output-bucket`， AWS 区域 其中`regionId`是存储桶的，`accountId`是您的 AWS 账户 ID。

   无论您为这些存储桶选择的名称如何，请务必在本教程中保持统一。

## 步骤 3：创建构建规范文件
<a name="tutorial-build-mf-spec"></a>

在此步骤中，创建一个构建规范文件。此文件以 YAML 格式提供构建命令和相关设置， CodeBuild 用于运行构建。有关更多信息，请参阅《*AWS CodeBuild 用户指南》 CodeBuild*中的[构建规范参考](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html)。

1. 在您在先决条件中解压缩的目录中创建一个名为 `buildspec.yml` 的文件。

1. 将以下内容添加到该文件并保存。无需对该文件进行任何更改。

   ```
   version: 0.2
   env:
     exported-variables:
       - CODEBUILD_BUILD_ID
       - CODEBUILD_BUILD_ARN
   phases:
     install:
       runtime-versions:
         python: 3.7
     pre_build:
       commands:
         - echo Installing source dependencies...
         - ls -lR $CODEBUILD_SRC_DIR/source
     build:
       commands:
         - echo Build started on `date`
         - /start-build.sh -Dbasedir=$CODEBUILD_SRC_DIR/source -Dloaddir=$CODEBUILD_SRC_DIR/target 
     post_build:
       commands:
         - ls -lR $CODEBUILD_SRC_DIR/target
         - echo Build completed on `date`
   artifacts:
     files:
       - $CODEBUILD_SRC_DIR/target/**
   ```

   这里`CODEBUILD_BUILD_ID`、`CODEBUILD_BUILD_ARN``$CODEBUILD_SRC_DIR/source`、和`$CODEBUILD_SRC_DIR/target`是里面可用的环境变量 CodeBuild。有关更多信息，请参阅[构建环境中的环境变量](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-env-vars.html)。

   此时，您的目录结构应如下所示。

   ```
   (root directory name)
       |-- build.xml
       |-- buildspec.yml
       |-- LICENSE.txt
       |-- source
            |... etc.
   ```

1. 将文件夹的内容压缩到名为 `BankDemo.zip` 的文件中。在本教程中，您无法压缩文件夹。因此，将文件夹的内容压缩到文件 `BankDemo.zip` 中。

## 步骤 4：上传源文件
<a name="tutorial-build-mf-upload"></a>

在此步骤中，您将 BankDemo 示例应用程序的源代码上传到您的 Amazon S3 输入存储桶。

1. 登录到 Amazon S3 控制台，并在左侧导航窗格中，选择**存储桶**。然后选择您之前创建的输入存储桶。

1. 在**对象**下，选择**上传**。

1. 在**文件和文件夹**部分，选择**添加文件**。

1. 导航到并选择 `BankDemo.zip` 文件。

1. 选择**上传**。

## 步骤 5：创建 IAM 策略
<a name="tutorial-build-mf-IAM-policy"></a>

在此步骤中，创建两个 [IAM 策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html)。一项策略授予 AWS 大型机现代化访问和使用包含 Rocket Software 构建工具的 Docker 镜像的权限。此策略不是为客户自定义的。另一项策略授予 AWS 大型机现代化与输入和输出存储桶以及生成的 A [mazon CloudWatch 日志](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)进行交互的权限。 CodeBuild 

要了解有关创建 IAM 策略的信息，请参阅《IAM 用户指南》**中的[编辑 IAM 策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html)。

**创建允许访问 Docker 映像的策略**

1. 在 IAM 控制台中，将以下策略文档复制并粘贴到策略编辑器中。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ecr:GetAuthorizationToken"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "ecr:BatchCheckLayerAvailability",
                   "ecr:GetDownloadUrlForLayer",
                   "ecr:BatchGetImage"
               ],
               "Resource": "arn:aws:ecr:*:673918848628:repository/m2-enterprise-build-tools"
           },
           {
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": "arn:aws:s3:::aws-m2-repo-*-<region>-prod"
           }
       ]
   }
   ```

------

1. 提供策略名称，例如 `m2CodeBuildPolicy`。

**创建允许 AWS 大型机现代化与存储桶和日志交互的策略**

1. 在 IAM 控制台中，将以下策略文档复制并粘贴到策略编辑器中。请务必更新`regionId`到 AWS 区域，并更新`accountId`到您的 AWS 账户。

1. 提供策略名称，例如 `BankdemoCodeBuildRolePolicy`。

## 步骤 6：创建 IAM 角色
<a name="tutorial-build-mf-IAM-role"></a>

在此步骤中，在 CodeBuild 将之前创建[的 IAM 策略与该新 IAM 角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html)关联后，您将创建一个允许您与 AWS 资源交互的新 IAM 角色。

有关创建服务角色的信息，请参阅 *IAM 用户指南*中的[创建角色以向 AWS 服务委派权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。

1. 登录 IAM 控制台，然后在左侧导航窗格中选择**角色**。

1. 选择**创建角色**。

1. 在**可信实体类型**下，选择 **AWS 服务**。

1. 在其**他 AWS 服务的用例**下 **CodeBuild**，选择，然后**CodeBuild**再次选择。

1. 选择**下一步**。

1. 在**添加权限**页面上，选择**下一步**。您稍后给该角色分配策略。

1. 在**角色详细信息**下，提供角色的名称，例如 `BankdemoCodeBuildServiceRole`。

1. 在**选择可信实体**下，验证策略文档是否如下所示：

------
#### [ JSON ]

****  

   ```
   {
             "Version":"2012-10-17",		 	 	 
             "Statement": [
               {
                 "Effect": "Allow",
                 "Principal": {
                   "Service": "codebuild.amazonaws.com"
                 },
                 "Action": "sts:AssumeRole"
               }
             ]
           }
   ```

------

1. 选择**创建角色**。

## 步骤 7：将 IAM 策略附加到 IAM 角色
<a name="tutorial-build-mf-attach"></a>

在此步骤中，将您之前创建的两个 IAM 策略附加到 `BankdemoCodeBuildServiceRole` IAM 角色。

1. 登录到 IAM 控制台，然后在左侧导航窗格中，选择**角色**。

1. 在**角色**中，选择您之前创建的角色，例如 `BankdemoCodeBuildServiceRole`。

1. 在**权限策略**中，依次选择**添加权限**和**附加策略**。

1. 在**其他权限策略**中，选择您之前创建的策略，例如 `m2CodeBuildPolicy` 和 `BankdemoCodeBuildRolePolicy`。

1. 选择**附加策略**。

## 第 8 步：创建 CodeBuild 项目
<a name="tutorial-build-mf-create-project"></a>

在此步骤中，您将创建 CodeBuild 项目。

1. 登录 CodeBuild 控制台并选择 “**创建构建项目**”。

1. 在**项目配置**部分中，提供项目的名称，例如 `codebuild-bankdemo-project`。

1. 在**源**部分中，对于**源提供商**，选择 **Amazon S3**，然后选择您之前创建的输入存储桶，例如`codebuild-regionId-accountId-input-bucket`。

1. 在 **S3 对象密钥或 S3 文件夹**字段中，输入您上传到 S3 存储桶的 zip 文件的名称。在本例中，此文件名为 `bankdemo.zip`。

1. 在**环境**部分中，选择**自定义映像**。

1. 在**环境类型**字段中，选择 **Linux**。

1. 在**映像注册表**中，选择**其他注册表**。

1. 在**外部注册表 URL** 字段中，
   + 对于火箭软件 v9：输入`673918848628.dkr.ecr.us-west-1.amazonaws.com/m2-enterprise-build-tools:9.0.7.R1`。如果您在 Rocket Software v9 <m2-region>中使用其他 AWS AWS 区域` 673918848628.dkr.ecr.<m2-region>.amazonaws.com/m2-enterprise-build-tools:9.0.7.R1`，则还可以指定提供 AWS 大型机现代化服务的区域（例如，`eu-west-3`）。
   + 对于 Rocket 软件版本 8：输入 `673918848628.dkr.ecr.us-west-2.amazonaws.com/m2-enterprise-build-tools:8.0.9.R1`
   + 对于 Rocket 软件 v7：输入 `673918848628.dkr.ecr.us-west-2.amazonaws.com/m2-enterprise-build-tools:7.0.R10`

1. 在**服务角色**下，选择**现有服务角色**，然后在**角色 ARN** 字段中，选择您之前创建的服务角色，例如 `BankdemoCodeBuildServiceRole`。

1. 在**构建规范**部分中，选择**使用构建规范文件**。

1. 在**构件**部分的**类型**下，选择 **Amazon S3**，然后选择您的输出存储桶，例如 `codebuild-regionId-accountId-output-bucket`。

1. 在**名称**字段中，输入存储桶中要包含构建输出构件的文件夹的名称，例如 `bankdemo-output.zip`。

1. 在**构件打包**下，选择 **Zip**。

1. 选择 **Create build project（创建构建项目）**。

## 步骤 9：启动构建
<a name="tutorial-build-mf-start"></a>

在此步骤中，启动构建。

1. 登录 CodeBuild 控制台。

1. 在左侧导航窗格中，选择**构建项目**。

1. 选择您之前创建的构建项目，例如 `codebuild-bankdemo-project`。

1. 选择**启动构建**。

此命令开始构建。构建以异步方式运行。此命令的输出是一个包含属性 ID 的 JSON。此属性 id是对您刚刚启动的版本的构 CodeBuild 建 ID 的引用。你可以在 CodeBuild 控制台中查看版本的状态。您还可以在控制台中查看有关构建执行的详细日志。有关更多信息，请参阅《AWS CodeBuild 用户指南》**中的[查看详细构建信息](https://docs.aws.amazon.com/codebuild/latest/userguide/getting-started-build-log-console.html)。

当前阶段完成后，即表示您的构建已成功完成，并且编译的构件已在 Amazon S3 上准备就绪。

## 步骤 10：下载输出构件
<a name="tutorial-build-mf-download-output"></a>

在此步骤中，从 Amazon S3 下载输出构件。Rocket Software 编译工具可以创建几种不同的可执行文件类型。在本教程中，它将生成共享对象。

1. 登录 Amazon S3 控制台。

1. 在**存储桶** role="bold"> 部分中，选择您的输出存储桶的名称，例如 `codebuild-regionId-accountId-output-bucket`。

1. 选择**下载** role="bold">。

1. 解压下载的文件。导航到目标文件夹以查看构建构件。其中包括 `.so` Linux 共享对象。

## 清理 资源
<a name="tutorial-build-mf-clean"></a>

如果您不再需要为本教程创建的资源，请将其删除，以免产生额外费用。为此，请完成以下步骤：
+ 删除您为本教程创建的 S3 存储桶。有关更多信息，请参阅《Amazon Simple Storage Service 用户指南》**中的[删除存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html)。
+ 删除您为本教程创建的 IAM 策略。有关更多信息，请参阅《IAM 用户指南》**中的[删除 IAM 策略](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-delete.html)。
+ 删除您为本教程创建的 IAM 角色。有关更多信息，请参阅《IAM 用户指南》**中的[删除角色或实例配置文件](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_manage_delete.html)。
+ 删除您为本教程创建的 CodeBuild 项目。有关更多信息，请参阅《*AWS CodeBuild 用户指南》 CodeBuild*[中的删除构建项目](https://docs.aws.amazon.com/codebuild/latest/userguide/delete-project.html)。

# 教程：设置 WorkSpaces 应用程序以用于 Rocket Enterprise Analyzer 和 Rocket
<a name="set-up-appstream-mf"></a>

AWS 大型机现代化通过 Amazon WorkSpaces 应用程序提供了多种工具。 WorkSpaces Applications 是一项完全托管的安全应用程序流服务，允许您在不重写应用程序的情况下将桌面应用程序流式传输给用户。 WorkSpaces 应用程序使用户可以即时访问他们需要的应用程序，并在他们选择的设备上提供响应灵敏、流畅的用户体验。使用 WorkSpaces 应用程序托管特定于运行时引擎的工具，使客户应用程序团队能够直接通过其网络浏览器使用这些工具，与存储在 Amazon S3 存储桶或存储库中的应用程序文件进行交互。 CodeCommit

有关 WorkSpaces 应用程序中浏览器支持的信息，请参阅《*亚马逊 WorkSpaces 应用程序管理指南》*中的 “[系统要求和功能支持（Web 浏览器）](https://docs.aws.amazon.com/appstream2/latest/developerguide/requirements-and-features-web-browser-admin.html)”。如果您在使用 WorkSpaces 应用程序时遇到问题，请参阅《*Amazon WorkSpaces 应用程序管理指南》*中的 [ AppStream2.0 用户问题疑难解答](https://docs.aws.amazon.com/appstream2/latest/developerguide/troubleshooting-user-issues.html)。

本文档适用于客户运营团队的成员。它描述了如何设置 Amazon A WorkSpaces pplications 队列和堆栈来托管用于 AWS 大型机现代化的火箭企业分析器和火箭企业开发者工具。Rocket Enterprise Analyzer 通常在评估阶段使用，Rocket Enterprise Developer 通常在 AWS 大型机现代化方法的迁移和现代化阶段使用。如果您计划同时使用 Enterprise Analyzer 和 Enterprise Developer，则必须为每个工具创建单独的实例集和堆栈。每个工具都需要各自的实例集和堆栈，因为它们的许可条款不同。

**重要**  
本教程中的步骤基于可下载的 CloudFormation 模板 [cfn-m2-.yml](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml)。appstream-fleet-ea-ed

**Topics**
+ [

## 先决条件
](#tutorial-aas-prerequisites)
+ [

## 步骤 1：获取 WorkSpaces 应用程序镜像
](#tutorial-aas-step1)
+ [

## 第 2 步：使用 CloudFormation 模板创建堆栈
](#tutorial-aas-step2)
+ [

## 步骤 3：在 “ WorkSpaces 应用程序” 中创建用户
](#tutorial-aas-step3)
+ [

## 步骤 4：登录 WorkSpaces 应用程序
](#tutorial-aas-step4)
+ [

## 步骤 5：验证 Amazon S3 中的存储桶（可选）
](#tutorial-aas-step5)
+ [

## 后续步骤
](#tutorial-aas-next-steps)
+ [

## 清理 资源
](#tutorial-aas-cleanup)

## 先决条件
<a name="tutorial-aas-prerequisites"></a>
+ 下载模板：[cfn-m2-appstream-fleet-ea-ed .yml](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml)。
+ 获取您的默认 VPC 的 ID 和安全组。有关默认 VPC 的更多信息，请参阅 *Amazon VPC 用户指南 VPCs*中的[默认](https://docs.aws.amazon.com/vpc/latest/userguide/default-vpc.html)。有关默认安全组的更多信息，请参阅《Amazon EC2 用户指南》**中的[默认和自定义安全组](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/default-custom-security-groups.html)。
+ 请确保您具有以下权限：
  + 在应用程序中创建堆栈、队列和用户。 WorkSpaces 
  +  CloudFormation 使用模板创建堆栈。
  + 在 Amazon S3 中创建存储桶和并将文件上传到存储桶
  + 从 IAM 下载凭证（`access_key_id` 和 `secret_access_key`）。

## 步骤 1：获取 WorkSpaces 应用程序镜像
<a name="tutorial-aas-step1"></a>

在此步骤中，您将与您的 AWS 账户共享 Enterprise Analyzer 和企业开发人员的 WorkSpaces 应用程序映像。

1. 打开 AWS 大型机现代化控制台，网址为[https://console.aws.amazon.com/m2/](https://us-west-2.console.aws.amazon.com/m2/home?region=us-west-2#/)。

1. 在左侧导航中，选择**工具**。

1. 在**分析、开发和生成资产**中，选择**与我的 AWS 账户共享资产**。

## 第 2 步：使用 CloudFormation 模板创建堆栈
<a name="tutorial-aas-step2"></a>

在此步骤中，您将使用下载的 CloudFormation 模板创建用于运行 Rocket Enterprise Analyzer 的 WorkSpaces 应用程序堆栈和队列。您可以稍后重复此步骤来创建另一个 WorkSpaces 应用程序堆栈和队列来运行 Rocket Enterprise Developer，因为每个工具都需要自己的队列和 WorkSpaces 应用程序中的堆栈。有关 CloudFormation 堆栈的更多信息，请参阅《*AWS CloudFormation 用户*指南》中的[使用堆栈](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html)。

**注意**  
AWS 大型机现代化在企业分析器和企业开发人员使用的标准 WorkSpaces 应用程序定价基础上增加了额外费用。有关更多信息，请参阅 [AWS Mainframe Modernization 定价](https://aws.amazon.com/mainframe-modernization/pricing/)。

1. 如有必要，请下载 [cfn-m2-appstream-fleet-ea-ed .yml](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml) 模板。

1. 打开 CloudFormation 控制台，选择**创建堆栈**并**使用新资源（标准）**。

1. 在**先决条件 – 准备模板**中，选择**模板已就绪**。

1. 在**指定模板**中，选择**上传模板文件**。

1. 在**上传模板文件中，选择**选择文件****并上传 [cfn-m2-appstream-fleet-ea-ed .ym](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml) l 模板。

1. 选择**下一步**。  
![\[使用选定的 cfn-m2-appstream-fleet-ea-ed .yml 模板 CloudFormation 创建堆栈页面。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/cfn-create-stack.png)

1. 在**指定堆栈集详细信息**页面上，输入以下信息：
   + 在**堆栈名称**中，输入您所选的名称。例如 **m2-ea**。
   + 在中 **AppStreamApplication**，选择 **ea**。
   + 在中 **AppStreamFleetSecurityGroup**，选择默认 VPC 的默认安全组。
   + 在中 **AppStreamFleetVpcSubnet**，选择默认 VPC 内的子网。
   + 在中 **AppStreamImageName**，选择以开头的图像`m2-enterprise-analyzer`。此镜像包含当前支持的 Rocket Enterprise Analyzer 工具版本。
   + 接受其他字段的默认值，然后选择**下一步**。  
![\[“ CloudFormation 指定堆栈详细信息” 页面，其中填写了 “企业分析器” 选项。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/cfn-specify-stack-details.png)

1. 接受所有默认值，然后选择**下一步**。

1. 在**审核**页面上，确保所有参数都符合您的预期。

1. 滚动到底部，选择**我确认 AWS CloudFormation 可能使用自定义名称创建 IAM 资源**，然后选择**创建堆栈**。

创建堆栈和实例集需要 20 到 30 分钟。您可以选择 “**刷新**” 以在 CloudFormation 事件发生时查看事件。

## 步骤 3：在 “ WorkSpaces 应用程序” 中创建用户
<a name="tutorial-aas-step3"></a>

在等待 CloudFormation 堆栈创建完成时，可以在 WorkSpaces 应用程序中创建一个或多个用户。这些用户是将在 WorkSpaces 应用程序中使用企业分析器的用户。您需要为每个用户指定一个电子邮件地址，并确保每个用户都有足够的权限在 Amazon S3 中创建存储桶、将文件上传到存储桶以及链接到存储桶以映射其内容。

1. 打开 WorkSpaces 应用程序控制台。

1. 在左侧导航窗格中，选择 **用户池**。

1. 选择**创建用户**。

1. 提供一个电子邮件地址，用户可以在其中收到使用 WorkSpaces 应用程序的电子邮件邀请、名字和姓氏，然后选择 C **reate user**。

1. 如有必要，请重复此步骤以创建更多用户。每个用户的电子邮件地址必须是唯一的。

有关创建 WorkSpaces 应用程序用户的更多信息，请参阅《*Amazon WorkSpaces 应用程序管理指南》中的 WorkSpaces 应用程序*[用户池](https://docs.aws.amazon.com/appstream2/latest/developerguide/user-pool.html)。

创建 CloudFormation 完堆栈后，您可以将创建的用户分配给堆栈，如下所示：

1. 打开 WorkSpaces 应用程序控制台。

1. 选择用户名。

1. 依次选择**操作**和**分配堆栈**。

1. 在**分配堆栈**中，选择以 `m2-appstream-stack-ea` 开头的堆栈。

1. 选择**分配堆栈**。  
![\[“ WorkSpaces 应用程序分配堆栈” 页面显示了用户和要分配的 Enterprise Analyzer 堆栈。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/aas-assign-stack.png)

将用户分配到堆栈会使 WorkSpaces 应用程序通过您提供的地址向该用户发送电子邮件。此电子邮件包含指向 WorkSpaces 应用程序登录页面的链接。

## 步骤 4：登录 WorkSpaces 应用程序
<a name="tutorial-aas-step4"></a>

在此步骤中，您将使用 WorkSpaces 应用程序发送给您在中创建的用户的电子邮件中的链接登录 WorkSpaces 应用程序[步骤 3：在 “ WorkSpaces 应用程序” 中创建用户](#tutorial-aas-step3)。

1. 使用 WorkSpaces 应用程序发送的电子邮件中提供的链接登录 WorkSpaces 应用程序。

1. 如果出现提示，请更改密码。您看到的 “ WorkSpaces 应用程序” 屏幕类似于以下内容：  
![\[显示桌面图标的示例 WorkSpaces 应用程序登录屏幕。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/aas-login-screen.png)

1. 选择**桌面**。

1. 在任务栏上，选择**搜索**，然后输入 **D:** 以导航到主文件夹。
**注意**  
如果跳过此步骤，则在尝试访问主文件夹时可能会出现`Device not ready`错误。

在任何时候，如果您在登录 WorkSpaces 应用程序时遇到问题，都可以按照以下步骤重新启动 WorkSpaces 应用程序群并尝试重新登录。

1. 打开 WorkSpaces 应用程序控制台。

1. 在左侧导航窗格中，选择**实例集**。

1. 选择您要使用的实例集。

1. 选择**操作**，然后选择**停止**。

1. 等待实例集停止。

1. 选择**操作**，然后选择**启动**。

此过程大约需要 10 分钟。

## 步骤 5：验证 Amazon S3 中的存储桶（可选）
<a name="tutorial-aas-step5"></a>

您用于创建堆栈的 CloudFormation 模板完成的任务之一是在 Amazon S3 中创建两个存储桶，这两个存储桶是跨工作会话保存和恢复用户数据和应用程序设置所必需的。这些存储桶如下所示：
+ 名称以 `appstream2-` 开头。此存储桶将数据映射到 WorkSpaces 应用程序中的主文件夹 (`D:\PhotonUser\My Files\Home Folder`)。
**注意**  
对于给定的电子邮件地址，主文件夹是唯一的，并且在给定帐户中的所有舰队和堆栈之间共享。 AWS 主文件夹的名称是用户电子邮件地址的 SHA256 哈希值，存储在基于该哈希值的路径上。
+ 名称以 `appstream-app-settings-` 开头。此存储桶包含 WorkSpaces 应用程序的用户会话信息，并包括浏览器收藏夹、IDE 和应用程序连接配置文件以及用户界面自定义等设置。有关更多信息，[请参阅《*Amazon 应用程序管理指南》中的 WorkSpaces 应用程序*设置持久性工作原理](https://docs.aws.amazon.com/appstream2/latest/developerguide/how-it-works-app-settings-persistence.html)。

要验证存储桶是否已创建，请执行以下步骤：

1. 打开 Amazon S3 控制台。

1. 在左侧导航中，选择**存储桶**。

1. 在**按名称查找存储桶**中，输入 **appstream** 以筛选列表。

如果您看到存储桶，则无需采取进一步的操作。请注意存储桶存在即可。如果您没有看到存储桶，则可能是 CloudFormation 模板未完成运行，或者发生了错误。转到 CloudFormation 控制台并查看堆栈创建消息。

## 后续步骤
<a name="tutorial-aas-next-steps"></a>

现在， WorkSpaces 应用程序基础架构已设置完毕，您可以设置并开始使用 Enterprise Analyzer。有关更多信息，请参阅 [教程：在 WorkSpaces 应用程序上设置企业分析器](set-up-ea.md)。您还可以设置 Enterprise Developer。有关更多信息，请参阅 [教程：在 WorkSpaces 应用程序上设置 Rocket 企业开发人员](set-up-ed.md)。

## 清理 资源
<a name="tutorial-aas-cleanup"></a>

创建[ WorkSpaces 应用程序队列和堆栈中描述了清理已创建堆栈和队列的](https://docs.aws.amazon.com/appstream2/latest/developerguide/set-up-stacks-fleets.html)过程。

删除 WorkSpaces 应用程序对象后，账户管理员还可以根据需要清理 Amazon S3 存储桶中的应用程序设置和主文件夹。

**注意**  
给定用户的主文件夹在所有队列中都是唯一的，因此，如果同一账户中的其他 WorkSpaces 应用程序堆栈处于活动状态，则可能需要保留该文件夹。

最后， WorkSpaces 应用程序目前不允许您使用控制台删除用户。而是必须使用服务 API 和 CLI 进行删除。有关更多信息，请参阅《*Amazon WorkSpaces 应用程序[管理指南》中的用户池](https://docs.aws.amazon.com/appstream2/latest/developerguide/user-pool-admin.html)管理*。

# 教程：在 Rocket Enterprise Developer（前身为 Micro
<a name="tutorial-templates-ed"></a>

本教程介绍如何在 Rocket Enterprise 开发者中使用模板和预定义项目。它提供了三个用例。所有用例都使用示例中提供的 BankDemo 示例代码。要下载该示例，请选择 [https://d1vi4vxke6c2hu.cloudfront.net/demo/bankdemo.zip](https://d1vi4vxke6c2hu.cloudfront.net/demo/bankdemo.zip)。

**重要**  
如果您使用适用于 Windows 的 Enterprise Developer 版本，则编译器生成的二进制文件只能在与 Enterprise Developer 一并提供的 Enterprise Server 上运行。您无法在基于 Linux AWS 的大型机现代化运行时下运行它们。

**Topics**
+ [

## 用例 1 – 使用包含源组件的 COBOL 项目模板
](#tutorial-templates-ed-step1)
+ [

## 用例 2 – 使用不包含源组件的 COBOL 项目模板
](#tutorial-templates-ed-step2)
+ [

## 用例 3 – 使用链接到源文件夹的预定义 COBOL 项目
](#tutorial-templates-ed-step3)
+ [

## 使用区域定义 JSON 模板
](#tutorial-templates-ed-step4)

## 用例 1 – 使用包含源组件的 COBOL 项目模板
<a name="tutorial-templates-ed-step1"></a>

此用例要求您在演示预设置步骤中，将源组件复制到模板目录结构中。为了避免源有两个副本，在 [https://d1vi4vxke6c2hu.cloudfront.net/demo/bankdemo.zip](https://d1vi4vxke6c2hu.cloudfront.net/demo/bankdemo.zip) 中，这点已从提供的原始 `AWSTemplates.zip` 中进行了更改。

1. 启动 Enterprise Developer 并指定所选工作区。  
![\[Eclipse 启动器（已选择工作区）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc1-step1.png)

1. 在**应用程序资源管理器**视图中，从**企业开发项目**树视图项的上下文菜单中选择**从模板新建项目**。  
![\[“企业开发项目”树视图上下文菜单。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc1-step2.png)

1. 输入模板参数，如图所示。
**注意**  
“模板路径”是指 ZIP 的解压位置。  
![\[“输入模板参数”框（已填写路径和项目名称）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc1-step3.png)

1. 选择“确定”将基于提供的模板创建一个本地开发 Eclipse 项目，该项目具有完整的源和执行环境结构。  
![\[本地开发 Eclipse 项目（显示了项目结构）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc1-step4.png)

   `System` 结构包含一个完整的资源定义文件，其中包含 BANKDEMO 所需的条目、添加了条目的必需目录以及相应的 ASCII 数据文件。

   由于源模板结构包含所有源项目，这些文件将复制到本地项目，因此会在 Enterprise Developer 中自动构建。

## 用例 2 – 使用不包含源组件的 COBOL 项目模板
<a name="tutorial-templates-ed-step2"></a>

步骤 1 到 3 与[用例 1 – 使用包含源组件的 COBOL 项目模板](#tutorial-templates-ed-step1)相同。

此用例中的`System`结构还包含一个完整的资源定义文件，其中包含所需的条目 BankDemo、添加了条目的必需目录以及相应的 ASCII 数据文件。

不过，模板源结构不包含任何组件。您必须将组件从您正在使用的任何源存储库导入到项目中。

1. 选择项目名称。从相关的上下文菜单中，选择**导入**。  
![\[项目上下文菜单（已选择“导入”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc2-step4.png)

1. 在显示的对话框中，在 **General** 部分下，选择 **File System**，然后选择“下一步”。  
![\[“导入”框（已选择“File System”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc2-step5.png)

1. 通过浏览文件系统以指向存储库文件夹来填充**从目录**字段。选择要导入的所有文件夹，例如 `sources`。`Into folder` 字段将预先填充。选择**结束**。  
![\[BankDemo 目录已展开的文件系统框。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc2-step6.png)

   源模板结构包含所有源项目之后，即可在 Enterprise Developer 中自动构建。

## 用例 3 – 使用链接到源文件夹的预定义 COBOL 项目
<a name="tutorial-templates-ed-step3"></a>

1. 启动 Enterprise Developer 并指定所选工作区。  
![\[Eclipse 启动器（已选择工作区）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc3-step1.png)

1. 从**文件**菜单中，选择**导入**。  
![\[“文件”菜单（已选择“导入”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc3-step2.png)

1. 在显示的对话框中，在 **General**下，选择 **Projects from Folder or Archive**，然后选择**下一步**。  
![\[“导入”框（已选择“Projects from Folder or Archive”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc3-step3.png)

1. 填充**导入源**，选择**目录**，然后浏览文件系统以选择预定义的项目文件夹。其中包含的项目具有指向同一存储库中源文件夹的链接。  
![\[“从文件系统或存档导入项目”框（已输入导入源的路径）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-uc3-step4.png)

   选择**结束**。

   由于项目由源文件夹的链接填充，因此代码是自动生成的。

## 使用区域定义 JSON 模板
<a name="tutorial-templates-ed-step4"></a>

1. 切换到服务器资源管理器视图。从相关的上下文菜单中选择**打开管理页面**，这将启动默认浏览器。  
![\[服务器资源管理器上下文菜单（已选中“打开管理页面”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-admin-page.png)

1. 从显示的 Enterprise Server 常用 Web 管理 (ESCWA) 屏幕中，选择**导入**。  
![\[Enterprise Server 常用 Web 管理屏幕（已选择“导入”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-import.png)

1. 选择 **JSON** 导入类型，然后选择**下一步**。  
![\[“选择导入类型”框（选中“JSON”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-import-type.png)

1. 上传提供的 `BANKDEMO.JSON` 文件。  
![\[“选择要上传的文件”框（已选择 BANKDEMO 文件）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-upload.png)

   选择后，选择**下一步**。  
![\[“选择区域”框（未选中“从端点清除端口”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-next.png)

   在**选择区域**面板上，确保未选中**从端点清除端口**选项，然后继续在面板中选择**下一步**，直到显示**执行导入**面板。然后，从左侧导航窗格中选择**导入**。

   最后，单击**完成**。BANKDEMO 区域随后将被添加到服务器列表中。  
![\[已 BankDemo 添加区域和服务器列表。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-server-list.png)

1. 导航至 BANKDEMO 区域的**常规属性**。

1. 滚动到**配置**部分。

1. 需将 ESP 环境变量设置为与前面步骤中创建的 Eclipse 项目相关的 `System` 文件夹。应为 `workspacefolder/projectname/System`。  
![\[配置部分（显示了 ESP 变量）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-ESP.png)

1. 单击**应用**。

   该区域现已完全配置为与 Eclipse COBOL 项目配合运行。

1. 最后，回到 Enterprise Developer 中，将导入的区域与项目关联。  
![\[项目上下文菜单（已选择“与项目关联”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ed-json-associate.png)

   企业开发人员环境现已准备就绪，其完整工作版本为 BankDemo。您可以针对该区域编辑、编译和调试代码。
**重要**  
如果您使用适用于 Windows 的 Enterprise Developer 版本，则编译器生成的二进制文件只能在与 Enterprise Developer 一并提供的 Enterprise Server 上运行。您无法在基于 Linux AWS 的大型机现代化运行时下运行它们。

# 教程：在 WorkSpaces 应用程序上设置企业分析器
<a name="set-up-ea"></a>

本教程介绍如何设置 Rocket Enterprise Analyzer（前身为 Micro Focus Enterprise Analyzer）来分析一个或多个 Enterprise Analyzer 工具可根据其对应用程序源代码和系统定义的分析提供多个报告。

此设置旨在促进团队协作。安装使用 Amazon S3 存储桶与虚拟磁盘共享源代码。这样做会在 Windows 计算机上使用 [Rclone](https://rclone.org/)。借助运行 [PostgreSQL](https://www.postgresql.org/) 的常用 Amazon RDS 实例，团队中的任何成员都可以访问所有请求的报告。

团队成员还可以将 Amazon S3 支持的虚拟磁盘挂载到个人机器上，并从其工作站更新源存储桶。如果他们连接到其他本地内部系统，还可以在其机器上使用脚本或任何其他形式的自动化。

该设置基于 AWS 大型机现代化与客户共享的 WorkSpaces 应用程序 Windows 映像。安装还基于 WorkSpaces 应用程序队列和堆栈的创建，如中所述。[教程：设置 WorkSpaces 应用程序以用于 Rocket Enterprise Analyzer 和 Rocket](set-up-appstream-mf.md)

**重要**  
本教程中的步骤假设您使用可下载的 CloudFormation 模板 [cfn-m2-.ym](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml) l 来设置 WorkSpaces 应用程序。appstream-fleet-ea-ed有关更多信息，请参阅 [教程：设置 WorkSpaces 应用程序以用于 Rocket Enterprise Analyzer 和 Rocket](set-up-appstream-mf.md)。  
要执行本教程中的步骤，您必须设置 Enterprise Analyzer 实例集和堆栈，并且它们必须正在运行。

有关企业分析器功能和交付内容的完整描述，请参阅 Rocket Software（前身为 Micro Focus）网站上的[企业分析器文档](https://www.microfocus.com/documentation/enterprise-analyzer/)。

## 映像内容
<a name="set-up-ea-image-contents"></a>

除了 Enterprise Analyzer 应用程序本身之外，该映像还包含以下工具和库。

第三方工具
+ [Python](https://www.python.org/)
+ [Rclone](https://rclone.org/)
+ [pgAdmin](https://www.pgadmin.org/)
+ [git-scm](https://git-scm.com/)
+ [PostgreSQL ODBC 驱动程序](https://odbc.postgresql.org/)

`C:\Users\Public` 中的库
+ BankDemo 企业开发者的源代码和项目定义:`m2-bankdemo-template.zip`.
+ 大型机的 MFA 安装包：`mfa.zip`。有关更多信息，请参阅《Micro Focus Enterprise Developer》**文档中的[大型机访问权限概述](https://www.microfocus.com/documentation/enterprise-developer/30pu12/ED-VS2012/BKMMMMINTRS001.html)。
+ Rclone 的命令和配置文件（教程中的使用说明）：`m2-rclone.cmd` 和 `m2-rclone.conf`。

**Topics**
+ [

## 映像内容
](#set-up-ea-image-contents)
+ [

## 先决条件
](#tutorial-ea-prerequisites)
+ [

## 步骤 1：设置
](#tutorial-ea-step1)
+ [

## 步骤 2：在 Windows 上创建基于 Amazon S3 的虚拟文件夹
](#tutorial-ea-step2)
+ [

## 步骤 3：为 Amazon RDS 实例创建 ODBC 源
](#tutorial-ea-step3)
+ [

## 后续会话
](#tutorial-ea-step4)
+ [

## 对工作区连接进行故障排除
](#tutorial-ea-step5)
+ [

## 清理 资源
](#tutorial-ea-clean)

## 先决条件
<a name="tutorial-ea-prerequisites"></a>
+ 将您要分析的客户应用程序的源代码和系统定义上传到 S3 存储桶。系统定义包括 CICS CSD、 DB2 对象定义等。您可以在存储桶中创建一个文件夹结构，该结构表示您要如何组织应用程序构件。例如，解压缩 BankDemo 示例时，其结构如下：

  ```
  demo
       |--> jcl
       |--> RDEF
       |--> transaction
       |--> xa
  ```
+ 创建并启动运行 PostgreSQL 的 Amazon RDS 实例 此实例将存储 Enterprise Analyzer 生成的数据和结果。您可以与应用程序团队的所有成员共享此实例。此外，在数据库中创建一个名为 `m2_ea`（或任何其他合适的名称）的空架构。为授权用户定义凭证，允许其创建、插入、更新和删除此架构中的项目。您可以从 Amazon RDS 控制台或从账户管理员处获取数据库名称、服务器端点 URL 和 TCP 端口。
+ 确保您已设置了对您的的编程访问权限 AWS 账户。有关更多信息，请参阅《Amazon Web Services 一般参考》**中的[编程访问](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys)。

## 步骤 1：设置
<a name="tutorial-ea-step1"></a>

1. 使用您在 WorkSpaces 应用程序的欢迎电子邮件中收到的 URL 开始与 WorkSpaces 应用程序的会话。

1. 使用您的电子邮件作为用户 ID，并定义您的永久密码。

1. 选择 Enterprise Analyzer 堆栈。

1. 在 “ WorkSpaces 应用程序” 菜单页面上，选择 “**桌面**” 以访问队列正在进行流式传输的 Windows 桌面。

## 步骤 2：在 Windows 上创建基于 Amazon S3 的虚拟文件夹
<a name="tutorial-ea-step2"></a>

**注意**  
如果您在 AWS 大型机现代化预览版中已经使用过 Rclone，则必须更新`m2-rclone.cmd`到位于中的较新版本。`C:\Users\Public`

1. 使用文件资源管理器将 `C:\Users\Public` 中提供的 `m2-rclone.conf` 和 `m2-rclone.cmd` 文件复制到您的主文件夹 `C:\Users\PhotonUser\My Files\Home Folder`。

1. 使用您的 AWS 访问密钥和相应的密钥以及您的密钥更新`m2-rclone.conf`配置参数 AWS 区域。

   ```
   [m2-s3]
   type = s3
   provider = AWS
   access_key_id = YOUR-ACCESS-KEY
   secret_access_key = YOUR-SECRET-KEY
   region = YOUR-REGION
   acl = private
   server_side_encryption = AES256
   ```

1. 在 `m2-rclone.cmd` 中，进行以下更改：
   + 将 `amzn-s3-demo-bucket` 更改为您的 Amazon S3 存储桶名称。例如 `m2-s3-mybucket`。
   + 将 `your-s3-folder-key` 更改为您的 Amazon S3 存储桶密钥。例如 `myProject`。
   + 将 `your-local-folder-path` 更改为要从包含应用程序文件的 Amazon S3 存储桶同步应用程序文件的目录路径。例如 `D:\PhotonUser\My Files\Home Folder\m2-new`。此同步目录必须是主文件夹的子目录， WorkSpaces 应用程序才能在会话开始和结束时对其进行正确备份和恢复。

   ```
   :loop
   timeout /T 10
   "C:\Program Files\rclone\rclone.exe" sync m2-s3:amzn-s3-demo-bucket/your-s3-folder-key "D:\PhotonUser\My Files\Home Folder\your-local-folder-path" --config "D:\PhotonUser\My Files\Home Folder\m2-rclone.conf"
   goto :loop
   ```

1. 打开 Windows 命令提示符，使用 cd 命令切换到 `C:\Users\PhotonUser\My Files\Home Folder`（如果需要），然后运行 `m2-rclone.cmd`。此命令脚本连续循环运行，每 10 秒将您的 Amazon S3 存储桶和密钥同步到本地文件夹。您可以根据需要调整超时。您应该在 Windows 文件资源管理器的 Amazon S3 存储桶中看到该应用程序的源代码。

要将新文件添加到您正在处理的文件集中或更新现有文件，请将文件上传到 Amazon S3 存储桶，这些文件将在 `m2-rclone.cmd` 中定义的下一次迭代中同步到您的目录。同样，如果要删除某些文件，请将其从 Amazon S3 存储桶中删除。下次同步操作会将其从您的本地目录中删除。

## 步骤 3：为 Amazon RDS 实例创建 ODBC 源
<a name="tutorial-ea-step3"></a>

1. 要启动 EA\$1Admin 工具，请导航到浏览器窗口左上角的应用程序选择器菜单，然后选择 **MF EA\$1Admin**。

1. 从**管理**菜单中，选择 **ODBC 数据来源**，然后从**用户 DSN** 选项卡中选择**添加**。

1. 在“创建新数据来源”对话框中，选择 **PostgreSQL Unicode** 驱动程序，然后选择**完成**。

1. 在 **PostgreSQL Unicode ODBC 驱动程序 (psqlODBC) 设置**对话框中，定义并记下所需的数据来源名称。使用您之前创建的 RDS 实例中的值填写以下参数：  
**描述**  
可选描述，可帮助您快速识别此数据库连接。  
**数据库**  
您之前创建的 Amazon RDS 数据库。  
**服务器**  
Amazon RDS 端点。  
**端口：**  
Amazon RDS 端口。  
**用户名称**  
Amazon RDS 实例中所定义的用户名称。  
**密码**  
Amazon RDS 实例中所定义的密码。

1. 选择**测试**以验证与 Amazon RDS 的连接是否成功，然后选择**保存**以保存您的新用户 DSN。

1. 等待直到看到确认创建了正确工作区的消息，然后选择**确定**以完成 ODBC 数据来源操作并关闭 EA\$1Admin 工具。

1. 再次导航到应用程序选择器菜单，然后选择“Enterprise Analyzer”以启动该工具。选择**新建**。

1. 在工作区配置窗口中，输入您的工作区名称并定义其位置。如果您在此配置下工作，该工作区可以是基于 Amazon S3 的磁盘，也可以是您的主文件夹（如果需要）。

1. 选择**选择其他数据库**以连接到您的 Amazon RDS 实例。

1. 从选项中选择 **Postgre** 图标，然后选择**确定**。

1. 在**选项 – 定义连接参数**下的 Windows 设置中，输入您创建的数据来源的名称。此外，输入数据库名称、架构名称、用户名和密码。选择**确定**。

1. 等待 Enterprise Analyzer 创建用于存储结果所需的所有表、索引等。此过程可能需要几分钟时间。Enterprise Analyzer 会确认数据库和工作区何时准备就绪可供使用。

1. 再次导航到应用程序选择器菜单，然后选择“Enterprise Analyzer”以启动该工具。

1. Enterprise Analyzer 启动窗口出现在新的所选工作区位置中。选择**确定**。

1. 在左侧窗格中，导航到存储库，选择存储库名称，然后选择**向工作区添加文件/文件夹**。选择存储应用程序代码的文件夹，将其添加到工作区。如果你愿意，你可以使用前面的 BankDemo示例代码。Enterprise Analyzer 提示您验证这些文件时，请选择**验证**以启动初始 Enterprise Analyzer 验证报告。该过程可能需要几分钟才能完成，具体取决于您的应用程序的大小。

1. 展开工作区，以便查看已添加到工作区的文件和文件夹。对象类型和圈复杂度报告也显示在**图表查看器**窗格的上象限中。

现在，您可以使用 Enterprise Analyzer 来完成所有需要的任务。

## 后续会话
<a name="tutorial-ea-step4"></a>

1. 使用您在 WorkSpaces 应用程序的欢迎电子邮件中收到的 URL 开始与 WorkSpaces 应用程序的会话。

1. 使用您的电子邮件和永久密码登录。

1. 选择 Enterprise Analyzer 堆栈。

1. 启动 `Rclone` 以连接到 Amazon S3 支持的磁盘（如果您使用此选项共享工作区文件）。

1. 启动 Enterprise Analyzer 来完成任务。

## 对工作区连接进行故障排除
<a name="tutorial-ea-step5"></a>

当您尝试重新连接到 Enterprise Analyzer 工作区时，可能会看到类似如下错误：

```
Cannot access the workspace directory D:\PhotonUser\My Files\Home Folder\EA_BankDemo. The workspace has been created on a non-shared disk of the EC2AMAZ-E6LC33H computer. Would you like to correct the workspace directory location?
```

要解决此问题，请选择**确定**来清除消息，然后完成以下步骤。

1. 在 “ WorkSpaces 应用程序” 中，选择工具栏上的 “**启动应用程序**” 图标，然后选择 **ea\$1admin 以启动 En** terprise Analyzer 管理工具。  
![\[WorkSpaces 应用程序启动选择器菜单，其中选择了 Rocket Enterprise 开发者管理工具。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/aas-launch-selector.png)

1. 从**管理**菜单中，选择**刷新工作区路径...**。  
![\[选择 “刷新工作区路径” 的 Rocket Enterprise Analyzer 管理工具\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ea_admin-administer-refresh.png)

1. 在**选择工作区**下，选择所需的工作区，然后选择**确定**。  
![\[Rocket Enterprise Analyzer 管理工具的 “选择工作区” 对话框，其中选择了一个项目。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ea_admin-select-workspace.png)

1. 选择**确定**，确认错误消息。  
![\[Enterprise Analyzer 错误消息“无法访问工作区目录”（选择了“确定”）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ea_admin-select-workspace-error.png)

1. 在**工作区目录网络路径**下，输入工作区的正确路径，例如 `D:\PhotonUser\My Files\Home Folder\EA\MyWorkspace3`。  
![\[Enterprise Analyzer“工作区目录网络路径”对话框（带有一个示例路径）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ea_admin-workspace-directory-network-path.png)

1. 关闭 Micro Focus Enterprise Analyzer Administration 工具。  
![\[Micro Focus Enterprise Analyzer Administration 工具（已选择“关闭”按钮）。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/ea_admin-close.png)

1. 在 “ WorkSpaces 应用程序” 中，选择工具栏上的 “**启动应用程序**” 图标，然后选择 **EA 启动 Micro Focus E** nterprise Analyzer。  
![\[选择了 EA 后， WorkSpaces 应用程序启动应用程序图标。\]](http://docs.aws.amazon.com/zh_cn/m2/latest/userguide/images/aas-launch-ea.png)

1. 重复步骤 3 – 5。

Micro Focus Enterprise Analyzer 此时应可使用现有工作区打开。

## 清理 资源
<a name="tutorial-ea-clean"></a>

如果您不再需要为本教程创建的资源，请将其删除，以免继续产生费用。完成以下步骤：
+ 使用 **EA\$1Admin** 工具删除工作区。
+ 删除您为本教程创建的 S3 存储桶。有关更多信息，请参阅《Amazon S3 用户指南》**中的[删除存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html)。
+ 选择您为本教程创建的数据库。有关更多信息，请参阅[删除数据库实例](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.PostgreSQL.html#CHAP_GettingStarted.Deleting.PostgreSQL)。

# 教程：在 WorkSpaces 应用程序上设置 Rocket 企业开发人员
<a name="set-up-ed"></a>

本教程介绍如何为一个或多个大型机应用程序设置 Rocket Enterprise Developer（前身为 Micro Focus Enterprise Developer），以便使用企业开发者功能对其进行维护、编译和测试。该设置基于 AWS 大型机现代化与客户共享的 WorkSpaces 应用程序 Windows 映像，以及 WorkSpaces 应用程序队列和堆栈的创建，如中所述。[教程：设置 WorkSpaces 应用程序以用于 Rocket Enterprise Analyzer 和 Rocket](set-up-appstream-mf.md)

**重要**  
本教程中的步骤假设您使用可下载的 CloudFormation 模板 [cfn-m2-](https://d1vi4vxke6c2hu.cloudfront.net/tutorial/cfn-m2-appstream-fleet-ea-ed.yaml) .yaml 来设置 WorkSpaces 应用程序。appstream-fleet-ea-ed有关更多信息，请参阅 [教程：设置 WorkSpaces 应用程序以用于 Rocket Enterprise Analyzer 和 Rocket](set-up-appstream-mf.md)。  
如果 Enterprise Developer 实例集和堆栈已启动并正在运行时，则必须执行此设置的步骤。

有关企业开发者 v7 功能和交付成果的完整描述，请在 Rocket Softwar [e（前身为 Micro Focus）网站上查看其up-to-date 在线文档 (v7.0)](https://www.microfocus.com/documentation/enterprise-developer/ed70/ED-Eclipse/GUID-8D6B7358-AC35-4DAF-A445-607D8D97EBB2.html)。

## 映像内容
<a name="set-up-ed-image-contents"></a>

除了企业开发者本身，该图像还包含包含 Rumba（ TN3270 模拟器）的图像。此外，它还包含以下工具和库。

第三方工具
+ [Python](https://www.python.org/)
+ [Rclone](https://rclone.org/)
+ [pgAdmin](https://www.pgadmin.org/)
+ [git-scm](https://git-scm.com/)
+ [PostgreSQL ODBC 驱动程序](https://odbc.postgresql.org/)

`C:\Users\Public` 中的库
+ BankDemo 企业开发者的源代码和项目定义:`m2-bankdemo-template.zip`.
+ 大型机的 MFA 安装包：`mfa.zip`。有关更多信息，请参阅《Micro Focus Enterprise Developer》**文档中的[大型机访问权限概述](https://www.microfocus.com/documentation/enterprise-developer/30pu12/ED-VS2012/BKMMMMINTRS001.html)。
+ Rclone 的命令和配置文件（教程中的使用说明）：`m2-rclone.cmd` 和 `m2-rclone.conf`。

如果您需要访问尚未加载到 CodeCommit 存储库但在 Amazon S3 存储桶中可用的源代码，例如将源代码初始加载到 git 中，请按照中所述的步骤创建虚拟 Windows 磁盘[教程：在 WorkSpaces 应用程序上设置企业分析器](set-up-ea.md)。

**Topics**
+ [

## 映像内容
](#set-up-ed-image-contents)
+ [

## 先决条件
](#tutorial-ed-prerequisites)
+ [

## 步骤 1：由个人 Enterprise Developer 用户设置
](#tutorial-ed-step1)
+ [

## 步骤 2：在 Windows 上创建基于 Amazon S3 的虚拟文件夹（可选）
](#tutorial-ed-step2)
+ [

## 步骤 3：克隆存储库
](#tutorial-ed-step3)
+ [

## 后续会话
](#tutorial-ed-step4)
+ [

## 清理 资源
](#tutorial-ed-clean)

## 先决条件
<a name="tutorial-ed-prerequisites"></a>
+ 一个或多个装有待维护应用程序源代码的 CodeCommit 存储库。存储库的设置应符合上述CI/CD管道的要求，以便通过结合使用这两种工具来实现协同效应。
+ 每个用户都必须拥有账户管理员根据 [AWS 的身份验证和访问控制中的信息定义的一个或多个存储库的](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control.html)证书 CodeCommit。 CodeCommit 这些证书的结构在 [AWS CodeCommit 的身份验证和访问控制](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control.html)中进行了审查，IAM 授权的完整[参考见CodeCommit 权限参考](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control-permissions-reference.html)：管理员可以为不同的角色定义不同的 IAM 策略，这些角色具有每个存储库的特定角色的证书，并限制其对用户的授权仅限于他在给定存储库上必须完成的特定任务集。 CodeCommit 因此，账户管理员将为 CodeCommit 仓库的每位维护者生成一个主用户，并通过选择适当的 IAM 访问策略向该用户授予 CodeCommit访问所需一个或多个存储库的权限。

## 步骤 1：由个人 Enterprise Developer 用户设置
<a name="tutorial-ed-step1"></a>

1. 获取您的 IAM 凭证：

   1. 连接 AWS 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

   1. 按照《AWS CodeCommit 用户指南》**中[适用于使用 Git 凭证的 HTTPS 用户的设置](https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html)的步骤 3 中描述的过程操作。

   1. 复制 IAM 为您生成的 CodeCommit特定登录证书，方法是显示、复制这些信息，然后将其粘贴到本地计算机上的安全文件中，或者选择**下载证书将此信息下载**为.CSV 文件。您需要该信息才能连接到 CodeCommit。

1. 根据欢迎电子邮件中收到的网址开始与 WorkSpaces 应用程序的会话。使用您的电子邮件作为用户名并创建密码。

1. 选择您的 Enterprise Developer 堆栈。

1. 在菜单页面上，选择**桌面**以访问实例集正在进行流式传输的 Windows 桌面。

## 步骤 2：在 Windows 上创建基于 Amazon S3 的虚拟文件夹（可选）
<a name="tutorial-ed-step2"></a>

如果需要 Rclone（见上文），请在 Windows 上创建基于 Amazon S3 的虚拟文件夹：（如果所有应用程序工件都完全来自访问权限，则可选）。 CodeCommit 

**注意**  
如果您在 AWS 大型机现代化预览版中已经使用过 Rclone，则必须更新`m2-rclone.cmd`到位于中的较新版本。`C:\Users\Public`

1. 使用文件资源管理器将 `C:\Users\Public` 中提供的 `m2-rclone.conf` 和 `m2-rclone.cmd` 文件复制到您的主文件夹 `C:\Users\PhotonUser\My Files\Home Folder`。

1. 使用您的 AWS 访问密钥和相应的密钥以及您的密钥更新`m2-rclone.conf`配置参数 AWS 区域。

   ```
   [m2-s3]
   type = s3
   provider = AWS
   access_key_id = YOUR-ACCESS-KEY
   secret_access_key = YOUR-SECRET-KEY
   region = YOUR-REGION
   acl = private
   server_side_encryption = AES256
   ```

1. 在 `m2-rclone.cmd` 中，进行以下更改：
   + 将 `amzn-s3-demo-bucket` 更改为您的 Amazon S3 存储桶名称。例如 `m2-s3-mybucket`。
   + 将 `your-s3-folder-key` 更改为您的 Amazon S3 存储桶密钥。例如 `myProject`。
   + 将 `your-local-folder-path` 更改为要从包含应用程序文件的 Amazon S3 存储桶同步应用程序文件的目录路径。例如 `D:\PhotonUser\My Files\Home Folder\m2-new`。此同步目录必须是主文件夹的子目录， WorkSpaces 应用程序才能在会话开始和结束时对其进行正确备份和恢复。

   ```
   :loop
   timeout /T 10
   "C:\Program Files\rclone\rclone.exe" sync m2-s3:amzn-s3-demo-bucket/your-s3-folder-key "D:\PhotonUser\My Files\Home Folder\your-local-folder-path" --config "D:\PhotonUser\My Files\Home Folder\m2-rclone.conf"
   goto :loop
   ```

1. 打开 Windows 命令提示符，使用 cd 命令切换到 `C:\Users\PhotonUser\My Files\Home Folder`（如果需要），然后运行 `m2-rclone.cmd`。此命令脚本连续循环运行，每 10 秒将您的 Amazon S3 存储桶和密钥同步到本地文件夹。您可以根据需要调整超时。您应该在 Windows 文件资源管理器的 Amazon S3 存储桶中看到该应用程序的源代码。

要将新文件添加到您正在处理的文件集中或更新现有文件，请将文件上传到 Amazon S3 存储桶，这些文件将在 `m2-rclone.cmd` 中定义的下一次迭代中同步到您的目录。同样，如果要删除某些文件，请将其从 Amazon S3 存储桶中删除。下次同步操作会将其从您的本地目录中删除。

## 步骤 3：克隆存储库
<a name="tutorial-ed-step3"></a>

1. 导航到浏览器窗口左上角的应用程序选择器菜单，然后选择“Enterprise Developer”。

1. 在您的主文件夹中完成 Enterprise Developer 所需的工作区创建，选择`C:\Users\PhotonUser\My Files\Home Folder`（又或 `D: \PhotonUser\My Files\Home Folder`）作为工作区的位置。

1. 在 Enterprise Developer 中，进入项目资源管理器，右键单击并选择 “**导入****...**”、“Git”、“Git”、“从 **Gi **t**** **Clone URI 中的**项目**” 来克隆 CodeCommit **仓库。然后，输入您的 CodeCommit特定登录凭据并完成 Eclipse 对话框以导入代码。

中的 CodeCommit git 存储库现已克隆到您的本地工作区中。

您的 Enterprise Developer 工作区现已准备就绪，可以开始对您的应用程序进行维护工作。特别是，您可以使用与 Enterprise Developer 集成的本地企业服务器 (ES) 实例以交互方式调试和运行应用程序，以便在本地验证您的更改。

**注意**  
本地企业开发人员环境（包括本地企业服务器实例）在 Windows 下运行，而 AWS 大型机现代化则在 Linux 下运行。我们建议您在向 AWS 大型机现代化提供的 Linux 环境中运行补充测试，然后再将新应用程序投入生产。 CodeCommit 

## 后续会话
<a name="tutorial-ed-step4"></a>

当您选择 WorkSpaces 应用程序管理下的文件夹（例如用于克隆 CodeCommit 存储库的主文件夹）时，该文件夹将在各个会话中透明地保存和恢复。您可以在下次需要使用该应用程序时完成以下步骤：

1. 根据欢迎电子邮件中收到的网址开始与 WorkSpaces 应用程序的会话。

1. 使用您的电子邮件和永久密码登录。

1. 选择 Enterprise Developer 堆栈。

1. 启动 `Rclone` 以连接（见上文）到 Amazon S3 支持的磁盘（如果您使用此选项共享工作区文件）。

1. 启动 Enterprise Developer 来完成工作。

## 清理 资源
<a name="tutorial-ed-clean"></a>

如果您不再需要为本教程创建的资源，请将其删除，以免继续产生费用。完成以下步骤：
+ 删除您为本教程创建的 CodeCommit 存储库。有关更多信息，请参阅《*AWS CodeCommit 用户指南》*中的[删除 CodeCommit 存储库](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-delete-repository.html)。
+ 删除您为本教程创建的数据库。有关更多信息，请参阅[删除数据库实例](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.PostgreSQL.html#CHAP_GettingStarted.Deleting.PostgreSQL)。