

AWS Mainframe Modernization Service(관리형 런타임 환경 환경 환경)는 더 이상 신규 고객에게 공개되지 않습니다. AWS Mainframe Modernization Service(관리형 런타임 환경 환경)와 유사한 기능은 AWS Mainframe Modernization Service(자체 관리형 환경)를 참조하세요. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세한 내용은 [AWS Mainframe Modernization 가용성 변경을](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html) 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Rocket Software(이전 Micro Focus)를 사용하여 애플리케이션 리플랫포밍
<a name="replatforming-m2"></a>

이 가이드에서는 AWS Mainframe Modernization 솔루션을 사용하여 메인프레임 애플리케이션을 리플랫포밍하는 end-to-end 프로세스를 다룹니다 AWS. 모든 작업을 설명하고 초기 설정 및 분석부터 현대화된 애플리케이션을 빌드, 테스트 및 배포하는 것까지 Amazon EC2에서 AWS Mainframe Modernization 런타임을 구성하고 운영하는 방법에 대한 정보를 포함합니다 AWS. 또한 레거시 데이터 구조 작업, 템플릿 및 사전 정의된 프로젝트 사용, 스트리밍 세션에 대한 자동화 설정과 같은 고급 주제도 다룹니다.

**Topics**
+ [Rocket 소프트웨어 설정(이전 Micro Focus)(Amazon EC2)](mf-runtime-setup.md)
+ [Automation for Rocket Enterprise Analyzer(이전 Micro Focus) 및 Rocket Enterprise 개발자 스트리밍 세션 설정](set-up-automation-m2.md)
+ [Rocket Enterprise Developer(이전 Micro Focus Enterprise Developer)에서 데이터 세트를 테이블 및 열로 보기](view-datasets-tables-m2.md)
+ [Enterprise Developer에서 Rocket Software(이전 Micro Focus) 데이터 파일 도구를 사용하여 데이터 세트 편집](edit-datasets-m2.md)
+ [Rocket 소프트웨어용 자습서(이전 Micro Focus)](tutorials-mf.md)
+ [AWS Mainframe Modernization에서 사용 가능한 배치 유틸리티](utilities-m2.md)

# Rocket 소프트웨어 설정(이전 Micro Focus)(Amazon EC2)
<a name="mf-runtime-setup"></a>

AWS Mainframe Modernization 는 Rocket Software(이전 Micro Focus) 라이선스 제품을 포함하는 여러 Amazon Machine Image(AMIs)를 제공합니다. 이러한 AMIs를 사용하면 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스를 신속하게 프로비저닝하여 제어 및 관리하는 Rocket Software 환경을 지원할 수 있습니다. 이 주제에서는 이러한 AMI에 액세스하고 시작하는 데 필요한 단계를 제공합니다. 이러한 AMI를 사용하는 것은 전적으로 선택 사항이며 이 사용 설명서의 자습서를 완료하는 데 반드시 필요한 것은 아닙니다.

**Topics**
+ [Rocket 소프트웨어(이전 Micro Focus)를 설정하기 위한 사전 조건(Amazon EC2)](mf-runtime-setup-prereq.md)
+ [Amazon S3용 Amazon VPC 엔드포인트 만들기](mf-runtime-setup-vpc.md)
+ [계정에 대한 허용 목록 업데이트 요청](mf-runtime-setup-allowlist.md)
+ [AWS Identity and Access Management 역할 생성](mf-runtime-setup-iam-role.md)
+ [License Manager에 필수 권한을 부여하세요](mf-runtime-setup-lic.md)
+ [Amazon Machine Images를 구독하세요](mf-runtime-setup-ami.md)
+ [AWS Mainframe Modernization Rocket Software(이전 Micro Focus) 인스턴스 시작](mf-runtime-setup-mf-instance.md)
+ [인터넷에 액세스할 수 없는 서브넷 또는 VPC](mf-runtime-setup-no-access.md)

# Rocket 소프트웨어(이전 Micro Focus)를 설정하기 위한 사전 조건(Amazon EC2)
<a name="mf-runtime-setup-prereq"></a>

Rocket Software(Amazon EC2)를 설정할 때는 다음 사전 조건을 충족해야 합니다.
+ Amazon EC2 인스턴스가 생성될 계정에 대한 관리자 액세스가 생성됩니다.
+ Amazon EC2 인스턴스가 생성될 AWS 리전 를 식별하고 AWS Mainframe Modernization 서비스를 사용할 수 있는지 확인합니다. [AWS 리전별 서비스를 참조하세요](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). 서비스가 제공되는 리전을 선택했는지 확인합니다.
+ Amazon EC2 인스턴스가 생성될 Amazon Virtual Private Cloud(Amazon VPC)를 식별하세요.

# Amazon S3용 Amazon VPC 엔드포인트 만들기
<a name="mf-runtime-setup-vpc"></a>

이 섹션에서는 Amazon S3용 Amazon VPC 엔드포인트를 생성합니다. 이 엔드포인트를 설정하면 나중에 VPC에 대한 인터넷 액세스를 설정할 때 도움이 됩니다.

1.  AWS Management Console에서 Amazon VPC로 이동합니다.

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. **엔드포인트 생성**을 선택합니다.  
![\[엔드포인트 생성이 활성화된 VPC 엔드포인트.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-s3-endpoint_1.jpg)

1. 의미 있는 이름 태그를 입력합니다(예: “Micro-Focus-License-S3”).

1. 서비스 카테고리에서 **AWS 서비스**를 선택합니다.  
![\[샘플 네임태그가 입력된 엔드포인트 설정.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-s3-endpoint_2.png)

1. **서비스**에서 Amazon S3 Gateway인 **com.amazonaws.[region].s3**를 찾습니다.

   `us-west-1`에 대해 `com.amazonaws.us-west-1.s3`과 같을 것입니다.

1. **게이트웨이** 서비스를 선택합니다.  
![\[Amazon S3 Gateway 서비스를 사용하는 서비스가 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-s3-endpoint_3.png)

1. VPC의 경우 사용할 VPC를 선택합니다.  
![\[VPC가 입력된 VPC입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-s3-endpoint_4.png)

1. VPC의 모든 라우팅 테이블을 선택합니다.  
![\[모든 라우팅 테이블이 선택된 라우팅 테이블.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-s3-endpoint_5.png)

1. **정책**에서 **전체 액세스**를 선택합니다.  
![\[전체 액세스가 포함된 정책을 선택했습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-s3-endpoint_6.png)
**참고**  
사용자 지정 정책을 생성하기로 결정한 경우 Amazon S3 버킷 `s3://aws-supernova-marketplace-<region>-prod`에 액세스할 수 있는지 확인합니다.

1. **엔드포인트 생성**을 선택합니다.

# 계정에 대한 허용 목록 업데이트 요청
<a name="mf-runtime-setup-allowlist"></a>

 AWS 담당자와 협력하여 계정이 AWS Mainframe Modernization AMIs. 다음 정보를 제공합니다.
+  AWS 계정 ID입니다.
+ Amazon VPC 엔드포인트가 생성된 AWS 리전 입니다.
+ [Amazon S3용 Amazon VPC 엔드포인트 만들기](mf-runtime-setup-vpc.md)에서 생성된 Amazon VPC Amazon S3 엔드포인트 ID. 이는 **com.amazonaws.[region].s3 Gateway** 엔드포인트트의 `vpce-xxxxxxxxxxxxxxxxx` ID입니다.
+ 모든 Rocket Software Enterprise Suite AMI Amazon EC2 인스턴스에 필요한 라이선스 수입니다.

  CPU 코어당 하나의 라이선스가 필요합니다(대부분의 Amazon EC2 인스턴스의 경우 vCPU 2개당).

  자세한 정보는 [CPU 옵션 최적화](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html#cpu-options-compute-optimized)를 참조하세요.

  요청된 번호는 나중에 조정할 수 있습니다 AWS.

**참고**  
 AWS 담당자 또는 사용자를 대신하여 허용 목록 요청에 대한 지원 티켓을 개설할 AWS Support 담당자에게 문의하세요. 사용자가 직접 요청할 수 없으며 요청을 완료하는 데 며칠이 걸릴 수 있습니다.

# AWS Identity and Access Management 역할 생성
<a name="mf-runtime-setup-iam-role"></a>

 AWS Mainframe Modernization Amazon EC2 인스턴스에서 사용할 AWS Identity and Access Management 정책 및 역할을 생성합니다. IAM 콘솔을 통해 역할을 생성하면 동일한 이름의 관련 인스턴스 프로파일이 생성됩니다. 이 인스턴스 프로파일을 Amazon EC2 인스턴스에 할당하면 Rocket 소프트웨어 라이선스를 할당할 수 있습니다. 자세한 내용은 [IAM 역할을 사용하여 Amazon EC2 인스턴스에서 실행되는 애플리케이션에 권한 부여](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html)를 참조하세요.

## IAM 정책 생성
<a name="mf-runtime-setup-iam-role-policy"></a>

IAM 정책이 먼저 생성되며 그 다음 역할에 연결됩니다.

1.  AWS Identity and Access Management 에서 로 이동합니다 AWS Management Console.

1. **정책**을 선택한 다음 **정책 만들기**를 선택합니다.  
![\[필터가 적용되지 않은 정책 페이지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-policy_1.png)

1. **JSON** 탭을 선택합니다.  
![\[내용이 없는 JSON 탭\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-policy_2.png)

1. 다음 JSON`us-west-1`을 Amazon S3 엔드포인트 AWS 리전 가 정의된 로 바꾼 다음 JSON을 복사하여 정책 편집기에 붙여 넣습니다.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "S3WriteObject",
               "Effect": "Allow",
               "Action": [
                   "s3:PutObject"
               ],
               "Resource": [
                   "arn:aws:s3:::aws-supernova-marketplace-us-west-1-prod/*"
               ]
           },
           {
               "Sid": "OtherRequiredActions",
               "Effect": "Allow",
               "Action": [
                   "sts:GetCallerIdentity",
                   "ec2:DescribeInstances",
                   "license-manager:ListReceivedLicenses"
               ],
               "Resource": [
                   "*"
               ]
           }
       ]
   }
   ```

------
**참고**  
Sid `OtherRequiredActions` 아래의 작업은 리소스 수준 권한을 지원하지 않기 때문에 리소스 요소에 `*`를 지정해야 합니다.  
![\[정책이 입력되고 us-west-1이 강조 표시된 JSON 탭.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-policy_3.png)

1. **다음: 태그**를 선택합니다.  
![\[데이터가 입력되지 않은 태그.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-policy_4.png)

1. 원하는 경우 태그를 입력하고 **다음: 검토**를 선택합니다.

1. 정책 이름을 입력합니다(예: “Micro Focus 라이선싱 정책”). 선택적으로 “이 정책을 포함하는 역할은 각 AWS Mainframe Modernization Amazon EC2 인스턴스에 연결되어야 합니다.”와 같은 설명을 입력합니다.  
![\[이름과 설명을 입력하여 정책을 검토하세요.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-policy_5.png)

1. **정책 생성**을 선택합니다.

## IAM 역할 생성
<a name="mf-runtime-setup-iam-role-create"></a>

IAM 정책을 만든 후 IAM 역할을 만들어 여기에 정책을 연결합니다.

1.  AWS Management Console에서 IAM으로 이동합니다.

1. **역할**을 선택한 다음 **역할 생성**을 선택합니다.  
![\[필터가 적용되지 않은 역할.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-role_1.png)

1. **신뢰할 수 있는 엔티티 유형**은 **AWS 서비스**로 두고 **EC2** 일반 사용 사례를 선택하세요.  
![\[AWS 서비스 및 EC2가 선택된 신뢰할 수 있는 엔터티 선택\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-role_2.png)

1. **다음**을 선택합니다.

1. 필터에 “Micro”를 입력하고 Enter 키를 눌러 필터를 적용합니다.

1. 방금 생성한 정책을 선택합니다(예: “Micro Focus 라이선스 정책”).

1. **다음**을 선택합니다.  
![\[Micro Focus 정책을 선택하여 권한을 추가합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-role_3.png)

1. 역할 이름을 입력합니다(예: “Micro Focus 라이선싱 역할”).

1. 설명을 자신의 설명으로 바꾸세요(예: “이 역할을 가진 Amazon EC2 인스턴스에서 Micro Focus 라이선스를 취득할 수 있도록 허용”).  
![\[이름 및 설명이 입력된 역할 세부 정보.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-role_4.png)

1. **1단계: 신뢰할 수 있는 엔티티 선택**에서 JSON을 검토하고 JSON에 다음 값이 있는지 확인합니다.

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

****  

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

------
**참고**  
효과, 조치, 주체의 순서는 중요하지 않습니다.

1. **2단계: 권한 추가**에 라이선스 정책이 표시되는지 확인하세요.  
![\[2단계: 라이선스 정책을 선택하여 권한을 추가합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-create-iam-role_6.png)

1. **역할 생성**을 선택합니다.

허용 목록 요청이 완료되면 다음 단계로 계속합니다.

# License Manager에 필수 권한을 부여하세요
<a name="mf-runtime-setup-lic"></a>

Rocket Software 런타임 엔진(Amazon EC2) AWS License Manager 을 설정하려면에 권한을 부여해야 합니다.

1.  AWS License Manager 에서 로 이동합니다 AWS Management Console.  
![\[AWS License Manager 홈 페이지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-license-manager_1.png)

1. **AWS License Manager 사용 시작**을 선택합니다.

1. 다음 팝업이 표시되면 세부 정보를 확인한 다음 확인란을 선택하고 **권한 부여**를 누르세요.  
![\[IAM 권한 일회성 설정\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-license-manager_2.png)

# Amazon Machine Images를 구독하세요
<a name="mf-runtime-setup-ami"></a>

 AWS Marketplace 제품을 구독한 후 제품의 AMI에서 인스턴스를 시작할 수 있습니다. Rocket Software(이전 Micro Focus) 런타임 엔진(Amazon EC2)을 설정할 때 구독한 AMIs를 관리할 수도 있습니다.

1. 에서 AWS Marketplace 구독으로 이동합니다 AWS Management Console.

1. **구독 관리**를 선택합니다.  
![\[AWS Marketplace 홈 페이지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-ami-subscription_1.png)

1. 다음 링크 중 하나를 복사하여 브라우저 주소 표시줄에 붙여넣습니다.
**참고**  
사용 권한이 부여된 제품 중 하나에 대한 링크만 선택하세요.
이러한 링크를 사용하려면 [계정에 대한 허용 목록 업데이트 요청](mf-runtime-setup-allowlist.md) 페이지에 따라 계정을 허용 목록에 등록해야 합니다.
   + Enterprise 서버: [https://aws.amazon.com/marketplace/pp/prodview-g5emev63l7blc](https://aws.amazon.com/marketplace/pp/prodview-g5emev63l7blc)
   + Windows용 Enterprise 서버: [https://aws.amazon.com/marketplace/pp/prodview-lwybsiyikbhc2](https://aws.amazon.com/marketplace/pp/prodview-lwybsiyikbhc2)
   + Enterprise 개발자: [https://aws.amazon.com/marketplace/pp/prodview-77qmpr42yzxwk](https://aws.amazon.com/marketplace/pp/prodview-77qmpr42yzxwk)
   + Visual Studio 2022를 사용하는 Enterprise 개발자: [https://aws.amazon.com/marketplace/pp/prodview-m4l3lqiszo6cm](https://aws.amazon.com/marketplace/pp/prodview-m4l3lqiszo6cm)
   + Enterprise 분석기: [https://aws.amazon.com/marketplace/pp/prodview-tttheylcmcihm](https://aws.amazon.com/marketplace/pp/prodview-tttheylcmcihm)
   + Windows용 Enterprise 빌드 툴: [https://aws.amazon.com/marketplace/pp/prodview-2rw35bbt6uozi](https://aws.amazon.com/marketplace/pp/prodview-2rw35bbt6uozi)
   + Enterprise 저장 프로시저: [https://aws.amazon.com/marketplace/pp/prodview-zoeyqnsdsj6ha](https://aws.amazon.com/marketplace/pp/prodview-zoeyqnsdsj6ha)
   + SQL Server 2019를 사용한 Enterprise 저장 프로시저: [https://aws.amazon.com/marketplace/pp/prodview-ynfklquwubnz4](https://aws.amazon.com/marketplace/pp/prodview-ynfklquwubnz4)

1. **구독 계속**을 선택합니다.  
![\[에서 Enterprise Server 제공 AWS Marketplace.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-ami-subscription_2.png)

1. 이용 약관에 동의하는 경우 **약관 동의**를 선택합니다.  
![\[구독 이용 약관을 참조하세요.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-ami-subscription_3.png)

1. 이 프로세스에는 몇 분이 걸릴 수 있습니다.  
![\[구독 보류 메시지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-ami-subscription_4.png)

1. 감사 메시지가 표시된 후 3단계의 다음 링크를 복사하여 붙여넣으면 구독을 계속 추가할 수 있습니다.  
![\[구독 감사 메시지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-ami-subscription_5.png)

1. **구독 관리에** 구독한 AMI가 모두 표시되면 중지하세요.
**참고**  
패널 환경설정(톱니바퀴 아이콘)은 보기를 표로 표시하도록 설정되어 있습니다.  

![\[구독한 AMI 목록으로 구독을 관리합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-ami-subscription_6.png)


# AWS Mainframe Modernization Rocket Software(이전 Micro Focus) 인스턴스 시작
<a name="mf-runtime-setup-mf-instance"></a>

엔드포인트, IAM 정책, IAM 역할을 생성하고 AMIs를 구독하면에서 AWS Mainframe Modernization Rocket Software(Micro Focus) 인스턴스를 시작할 준비가 된 것입니다 AWS Management Console.

1. 에서 AWS Marketplace 구독으로 이동합니다 AWS Management Console.

1. 시작할 AMI를 찾고 **새 인스턴스 시작**을 선택합니다.  
![\[Enterprise 서버 및 Enterprise 분석기를 바로 시작할 수 있어 구독을 관리할 수 있습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_1.png)

1. 새 인스턴스 시작 대화 상자에서 허용 목록에 있는 리전이 선택되어 있는지 확인합니다.

1. **계속을 눌러 EC2를 통해 시작**하세요.
**참고**  
다음 예제에서는 Enterprise Developer AMI의 시작을 보여주지만 프로세스는 모든 AWS Mainframe Modernization AMIs에 대해 동일합니다.  

![\[새로운 인스턴스를 시작합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_2.png)


1. 서버 이름에 DNS 이름을 입력합니다.

1. 인스턴스 유형을 선택합니다.

   선택한 인스턴스 유형은 프로젝트 성과 및 비용 요구 사항에 따라 결정되어야 합니다. 권장되는 시작 지점은 다음과 같습니다.
   + Enterprise 분석기의 경우 r6i.xlarge
   + Enterprise 개발자용, r6i.large
   + Enterprise 서버의 독립 실행형 인스턴스의 경우 r6i.xlarge
   + 확장 기능이 있는 Rocket Software Performance Availability Cluster(PAC)의 경우 r6i.large
**참고**  
스크린샷의 애플리케이션 및 OS 이미지 섹션은 축소되었습니다.  
![\[이름과 인스턴스 유형을 입력한 상태로 인스턴스를 시작합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_3.png)

1. 키 쌍(표시되지 않음)을 선택하거나 생성(및 저장)합니다.

   Linux 인스턴스에 대한 키 쌍의 쌍세한 내용은 [Amazon EC2 키 쌍 및 Linux 인스턴스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)를 참조하세요.

   키 쌍 및 Windows 인스턴스에 대한 자세한 내용은 [Amazon EC2 키 쌍 및 Windows 인스턴스](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-key-pairs.html)를 참조하세요.

1. 네트워크 설정을 편집하고 **허용 목록에 있는 VPC**와 적절한 서브넷을 선택합니다.

1. **보안 그룹을 선택하거나 생성합니다**. Enterprise Server EC2 인스턴스인 경우 일반적으로 포트 86 및 10086에 대한 TCP 트래픽을 허용하여 Rocket Software 구성을 관리합니다.

1. Amazon EC2 인스턴스용 스토리지를 구성할 수도 있습니다.

1. 중요 - 고급 세부 정보를 확장하고 IAM 인스턴스 프로필에서 이전에 생성한 라이선스 역할(예: “Micro-focus-Licensing-role”)을 선택합니다.
**참고**  
이 단계를 놓친 경우, 인스턴스를 생성한 후 EC2 인스턴스에 대한 작업 메뉴의 보안 옵션에서 IAM 역할을 수정할 수 있습니다.  
![\[IAM 인스턴스 프로필이 입력된 고급 세부 정보.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_4.png)

1. 요약을 검토하고 **시작 인스턴스**를 푸시하세요.  
![\[선택한 옵션을 포함한 요약.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_5.png)

1. 잘못된 가상 서버 유형을 선택하면 인스턴스 시작이 실패합니다.

   이 경우 **인스턴스 구성 편집**을 선택하고 인스턴스 유형을 변경하세요.  
![\[인스턴스 시작 진행 메시지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_6.png)

1. “성공” 메시지가 표시되면 **인스턴스에 연결**을 선택하여 연결 세부 정보를 가져옵니다.  
![\[인스턴스 시작 성공 메시지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_7.png)

1. 또는 AWS Management Console에서 **EC2**로 이동할 수도 있습니다.

1. 새 인스턴스의 상태를 보려면 **인스턴스**를 선택합니다.  
![\[상태가 있는 인스턴스 목록.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-launch-instance_8.png)

# 인터넷에 액세스할 수 없는 서브넷 또는 VPC
<a name="mf-runtime-setup-no-access"></a>

서브넷 또는 VPC에 아웃바운드 인터넷 액세스가 없는 경우 이러한 추가 변경을 수행하세요.

라이선스 관리자는 다음 AWS 서비스에 액세스할 수 있어야 합니다.
+ com.amazonaws.*region*.s3
+ com.amazonaws.*region*.ec2
+ com.amazonaws.*region*.license-manager
+ com.amazonaws.*region*.sts

이전 단계에서는 게이트웨이 엔드포인트로 com.amazonaws.*region*.s3를 정의했습니다. 이 엔드포인트에는 인터넷 액세스가 불가능한 모든 서브넷에 대한 라우팅 테이블 항목이 필요합니다.

추가 서비스 3개는 인터페이스 엔드포인트로 정의됩니다.

**Topics**
+ [Amazon S3 엔드포인트에 대한 라우팅 테이블 항목 추가](#mf-runtime-setup-no-access-route-table)
+ [필수 보안 그룹 정의](#mf-runtime-setup-no-access-security-group)
+ [서비스 엔드포인트 생성](#mf-runtime-setup-no-access-endpoints)

## Amazon S3 엔드포인트에 대한 라우팅 테이블 항목 추가
<a name="mf-runtime-setup-no-access-route-table"></a>

1. 에서 **VPC**로 이동하여 **서브넷을** AWS Management Console 선택합니다.

1. Amazon EC2 인스턴스가 생성될 서브넷을 선택하고 라우팅 테이블 탭을 선택합니다.

1. 라우팅 테이블 ID의 후행 몇 자리 숫자를 기록해 두세요. 아래 이미지의 6b39를 예로 들 수 있습니다.  
![\[라우팅 테이블 세부 정보.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_1.png)

1. 탐색 창에서 **엔드포인트**를 선택합니다.

1. 이전에 생성한 엔드포인트를 선택한 다음, 엔드포인트의 라우팅 테이블 탭 또는 작업 드롭다운에서 **라우팅 테이블 관리**를 선택합니다.

1. 앞서 식별한 숫자를 사용하여 라우팅 테이블을 선택하고 라우팅 테이블 수정을 누릅니다.  
![\[라우팅 테이블을 선택합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_2.png)

## 필수 보안 그룹 정의
<a name="mf-runtime-setup-no-access-security-group"></a>

Amazon EC2 AWS STS및 License Manager 서비스는 포트 443을 통해 HTTPS를 통해 통신합니다. 이 통신은 양방향으로 이루어지므로 인스턴스가 서비스와 통신할 수 있도록 인바운드 및 아웃바운드 규칙이 필요합니다.

1.  AWS Management Console에서 Amazon VPC로 이동합니다.

1. 탐색 창에서 **보안 그룹**과 **보안 그룹 생성**을 차례로 선택합니다.

1. 보안 그룹 이름과 설명을 입력합니다(예: “인바운드-아웃바운드 HTTPS”).

1. VPC 선택 영역에서 X를 눌러 **기본 VPC를 제거**하고 S3 엔드포인트가 포함된 VPC를 선택합니다.

1. 어디서든 **포트 443의 TCP 트래픽을 허용**하는 인바운드 규칙을 추가합니다.
**참고**  
소스를 제한하여 인바운드(및 아웃바운드 규칙)를 추가로 제한할 수 있습니다. 자세한 내용은 *Amazon VPC 사용 설명서*의 [보안 그룹을 사용하여 AWS 리소스에 대한 트래픽 제어를 참조하세요](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html).  

![\[기본 세부 정보(인바운드 규칙 입력 포함).\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_3.png)


1. **보안 그룹을 생성**합니다.

## 서비스 엔드포인트 생성
<a name="mf-runtime-setup-no-access-endpoints"></a>

이 프로세스를 각 서비스에 대해 한 번씩 세 번 반복합니다.

1. 에서 Amazon VPC로 이동하여 **엔드포인트를** AWS Management Console 선택합니다.

1. **엔드포인트 생성**을 누릅니다.

1. 이름을 입력합니다(예: “Micro-Focus-License-EC2”, “Micro-Focus-License-STS”, or “Micro-Focus-License-Manager”).

1. **AWS 서비스** 서비스 카테고리를 선택합니다.  
![\[AWS 서비스가 선택된 엔드포인트 설정입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_4.png)

1. 서비스에서 다음 중 하나에 해당하는 인터페이스 서비스를 검색합니다.
   + “com.amazonaws.*region*.ec2”
   + “com.amazonaws.*region*.sts”
   + “com.amazonaws.*region*.license-manager”

   예제:
   + “com.amazonaws.us-west-1.ec2”
   + “com.amazonaws.us-west-1.sts”
   + “com.amazonaws.us-west-1.license-manager”

1. 일치하는 인터페이스 서비스를 선택합니다.

   **com.amazonaws.*region*.ec2**:  
![\[Amazon EC2 인터페이스 서비스를 사용하는 서비스가 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_5.png)

   **com.amazonaws.*region*.sts:**  
![\[AWS STS 인터페이스 서비스가 선택된 서비스입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_6.png)

   **com.amazonaws.*region*.license-manager:**  
![\[License Manager 인터페이스 서비스가 선택된 서비스.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_7.png)

1. VPC에서 인스턴스의 VPC를 선택합니다.  
![\[선택한 인스턴스의 VPC가 있는 VPC.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_8.png)

1. VPC의 **가용 영역**과 **서브넷**을 선택합니다.  
![\[선택한 VPC의 가용 영역 및 서브넷이 있는 서브넷.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_9.png)

1. 보안 그룹을 생성하려면 생성을 선택합니다.  
![\[보안 그룹이 선택된 보안 그룹.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_10.png)

1. 정책에서 **전체 액세스**를 선택합니다.  
![\[전체 액세스가 포함된 정책을 선택했습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/mf-no-internet_11.png)

1. **엔드포인트 생성**을 선택합니다.

1. 나머지 인터페이스에 대해 이 절차를 반복합니다.

# Automation for Rocket Enterprise Analyzer(이전 Micro Focus) 및 Rocket Enterprise 개발자 스트리밍 세션 설정
<a name="set-up-automation-m2"></a>

세션 시작 및 종료 시 스크립트를 자동으로 실행하여 고객 상황에 맞는 자동화를 허용할 수 있습니다. 이 WorkSpaces 애플리케이션 기능에 대한 자세한 내용은 Amazon [WorkSpaces 애플리케이션 관리 안내서의 세션 스크립트를 사용하여 AppStream 2.0 사용자의 스트리밍 환경](https://docs.aws.amazon.com/appstream2/latest/developerguide/use-session-scripts.html) 관리를 참조하세요. *Amazon WorkSpaces *

이 기능을 사용하려면 최소한 다음 버전의 Enterprise Analyzer 및 Enterprise Developer 이미지가 있어야 합니다.
+ `m2-enterprise-analyzer-v8.0.4.R1`
+ `m2-enterprise-developer-v8.0.4.R1`

**Topics**
+ [세션 시작 시 자동화 설정](#set-up-automation-m2.start)
+ [세션 종료 시 자동화 설정](#set-up-automation-m2.end)

## 세션 시작 시 자동화 설정
<a name="set-up-automation-m2.start"></a>

사용자가 WorkSpaces 애플리케이션에 연결할 때 자동화 스크립트를 실행하려면 스크립트를 생성하고 이름을 로 지정합니다`m2-user-setup.cmd`. 스크립트를 사용자의 WorkSpaces 애플리케이션 홈 폴더에 저장합니다. AWS 메인프레임 현대화가 제공하는 WorkSpaces 애플리케이션 이미지는 해당 위치에 해당 이름이 있는 스크립트를 찾아서 존재하는 경우 실행합니다.

**참고**  
스크립트 지속 시간은 현재 60초인 WorkSpaces 애플리케이션에서 설정한 제한을 초과할 수 없습니다. 자세한 내용은 Amazon WorkSpaces 애플리케이션 관리 안내서의 [스트리밍 세션 시작 전 스크립트 실행을](https://docs.aws.amazon.com/appstream2/latest/developerguide/use-session-scripts.html#run-scripts-before-streaming-sessions-begin) 참조하세요. *Amazon WorkSpaces *

## 세션 종료 시 자동화 설정
<a name="set-up-automation-m2.end"></a>

사용자가 WorkSpaces 애플리케이션에서 연결을 해제할 때 자동화 스크립트를 실행하려면 스크립트를 생성하고 이름을 로 지정합니다`m2-user-teardown.cmd`. 스크립트를 사용자의 WorkSpaces 애플리케이션 홈 폴더에 저장합니다. AWS 메인프레임 현대화가 제공하는 WorkSpaces 애플리케이션 이미지는 해당 위치에 해당 이름이 있는 스크립트를 찾아서 존재하는 경우 실행합니다.

**참고**  
스크립트 지속 시간은 현재 60초인 WorkSpaces 애플리케이션에서 설정한 제한을 초과할 수 없습니다. 자세한 내용은 Amazon WorkSpaces 애플리케이션 관리 안내서의 [스트리밍 세션 종료 후 스크립트 실행을](https://docs.aws.amazon.com/appstream2/latest/developerguide/use-session-scripts.html#run-scripts-after-streaming-sessions-end) 참조하세요. *Amazon WorkSpaces *

# Rocket Enterprise Developer(이전 Micro Focus Enterprise Developer)에서 데이터 세트를 테이블 및 열로 보기
<a name="view-datasets-tables-m2"></a>

Rocket Software(이전 Micro Focus) 런타임을 사용하여 Mainframe Modernization에 배포된 AWS 메인프레임 데이터 세트에 액세스할 수 있습니다. Rocket Enterprise Developer 인스턴스에서 마이그레이션된 데이터 세트를 테이블 및 열로 볼 수 있습니다. 데이터 세트를 이 방법으로 보면 다음을 수행할 수 있습니다.
+ 마이그레이션된 데이터 파일에 대한 `SQL SELECT` 작업을 수행합니다.
+ 애플리케이션을 변경하지 않고 마이그레이션된 Mainframe 애플리케이션 외부에 데이터를 노출할 수 있습니다.
+ 데이터를 쉽게 필터링하고 CSV 또는 기타 파일 형식으로 저장할 수 있습니다.

**참고**  
1단계와 2단계는 일회성 활동입니다. 각 데이터 세트에 대해 3단계와 4단계를 반복하여 데이터베이스 뷰를 생성합니다.

**Topics**
+ [사전 조건](#view-datasets-tables-m2.prereq)
+ [1단계: Rocket Software 데이터 스토어에 대한 ODBC 연결 설정(Amazon RDS 데이터베이스)](#view-datasets-tables-m2.odbc)
+ [2단계: MFDBFH.cfg 파일 생성](#view-datasets-tables-m2.config)
+ [3단계: 카피북 레이아웃을 위한 구조(STR) 파일 생성](#view-datasets-tables-m2.str)
+ [4단계: 구조(STR) 파일을 사용하여 데이터베이스 뷰 생성](#view-datasets-tables-m2.dbview)
+ [5단계: Rocket Software(이전 Micro Focus) 데이터 세트를 테이블 및 열로 보기](#view-datasets-tables-m2.cols)

## 사전 조건
<a name="view-datasets-tables-m2.prereq"></a>
+ WorkSpaces 애플리케이션을 통해 Rocket Enterprise Developer Desktop에 액세스할 수 있어야 합니다.
+ Rocket Software 런타임 엔진을 사용하여 AWS Mainframe Modernization에 따라 애플리케이션을 배포하고 실행해야 합니다.
+ Aurora PostgreSQL 호환 버전에서 애플리케이션 데이터를 저장하고 있습니다.

## 1단계: Rocket Software 데이터 스토어에 대한 ODBC 연결 설정(Amazon RDS 데이터베이스)
<a name="view-datasets-tables-m2.odbc"></a>

이 단계에서는 테이블과 열로 보려는 데이터가 들어 있는 데이터베이스에 대한 ODBC 연결을 설정합니다. 이 단계는 일회성 단계입니다.

1. WorkSpaces 애플리케이션 스트리밍 URL을 사용하여 Rocket Enterprise Developer Desktop에 로그인합니다.

1. **ODBC 데이터 원본 관리자**를 **열고 **사용자 DSN**을 선택한 다음 추가**를 선택합니다.

1. **새 데이터 소스 생성**에서 **PostgreSQL** ANSI를 선택한 다음 **마침**을 선택합니다.

1. 다음과 같이 필요한 데이터베이스 정보를 제공하여 `PG.POSTGRES`에 대한 데이터 소스를 생성합니다.

   ```
   Data Source : PG.POSTGRES
   Database    : postgres
   Server      : rds_endpoint.rds.amazonaws.com
   Port        : 5432
   User Name   : user_name
   Password    : user_password
   ```  
![\[Enterprise Developer에서 Postgres ODBC 연결 설정.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/view-data-tables-odbc.png)

1. **테스트**를 선택하여 연결이 제대로 작동하는지 확인합니다. 테스트가 성공하면 `Connection successful` 메시지가 표시됩니다.

   테스트에 실패하면 다음 정보를 검토하세요.
   + [Amazon RDS 문제 해결](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Troubleshooting.html)
   + [Amazon RDS DB 인스턴스에 연결할 때 발생하는 문제를 해결하려면 어떻게 해야 합니까?](https://repost.aws/knowledge-center/rds-cannot-connect)

1. 데이터 소스를 저장합니다.

1. `PG.VSAM`에 대한 데이터 원본을 만들고 연결을 테스트하고, 데이터 원본을 저장합니다. 데이터베이스에 대한 다음 정보를 제공합니다.

   ```
   Data Source : PG.VSAM
   Database    : MicroFocus$SEE$Files$VSAM
   Server      : rds_endpoint.rds.amazonaws.com
   Port        : 5432
   User Name   : user_name
   Password    : user_password
   ```  
![\[Enterprise Developer에서 PG.VSAM ODBC 데이터 원본 설정.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/view-data-tables-pg-vsam.png)

## 2단계: MFDBFH.cfg 파일 생성
<a name="view-datasets-tables-m2.config"></a>

이 단계에서는 Micro Focus 데이터 스토어를 설명하는 구성 파일을 생성합니다. 구성 단계는 일회성 단계입니다.

1. 홈 폴더(예: `D:\PhotonUser\My Files\Home Folder\MFED\cfg\MFDBFH.cfg`)에서 다음 내용이 포함된 MFDBFH.cfg 파일을 생성합니다.

   ```
   <datastores>
          <server name="ESPACDatabase" type="postgresql" access="odbc">
           <dsn name="PG.POSTGRES" type="database" dbname="postgres"/>
           <dsn name="PG.VSAM" type="datastore" dsname="VSAM"/>
          </server>
         </datastores>
   ```

1. 다음 명령을 실행하여 Micro Focus 데이터 스토어를 쿼리하여 MFDBFH 구성을 확인합니다.

   ```
   *##*
   *## Test the connection by running the following commands*
   *##*
         
   set MFDBFH_CONFIG="D:\PhotonUser\My Files\Home Folder\MFED\cfg\MFDBFH.cfg"
         
   dbfhdeploy list sql://ESPACDatabase/VSAM?folder=/DATA
   ```

## 3단계: 카피북 레이아웃을 위한 구조(STR) 파일 생성
<a name="view-datasets-tables-m2.str"></a>

이 단계에서는 나중에 이 파일을 사용하여 데이터 세트에서 데이터베이스 보기를 만들 수 있도록 카피북 레이아웃용 구조 파일을 만듭니다.

1. 카피북과 관련된 프로그램을 컴파일하세요. 카피북을 사용하는 프로그램이 없는 경우 카피북의 COPY 문을 사용하여 다음과 같은 간단한 프로그램을 만들고 컴파일하세요.

   ```
   IDENTIFICATION DIVISION.
         PROGRAM-ID. TESTPGM1.
         
         ENVIRONMENT DIVISION.
         CONFIGURATION SECTION.
         
         DATA DIVISION.
         WORKING-STORAGE SECTION.
         
         COPY CVTRA05Y.
         
         PROCEDURE DIVISION.
         
         GOBACK.
   ```

1. 컴파일에 성공하면 프로그램을 마우스 오른쪽 버튼으로 클릭하고 **레코드 레이아웃 파일 생성**을 선택합니다. 그러면 컴파일 중에 생성된.idy 파일을 사용하여 Micro Focus 데이터 파일 도구가 열립니다.  
![\[Enterprise Developer의 레코드 레이아웃 파일 생성 명령 위치.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/view-data-tables-idy-file.png)

1. 레코드 구조를 마우스 오른쪽 버튼으로 클릭하고 레이아웃에 따라 **기본 레이아웃 생성**(단일 구조) 또는 **조건부 레이아웃 생성**(다중 구조)을 선택합니다.

   자세한 내용은 Micro Focus 설명서의 [구조 파일 및 레이아웃 생성](https://www.microfocus.com/documentation/enterprise-developer/ed60/ES-WIN/GUID-6EDDA4C3-F09E-4CEC-9CF8-281D9D7453C3.html)을 참조하세요.  
![\[Micro Focus 데이터 파일 도구의 레이아웃 명령 위치.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/view-data-tables-mf-data-file-tools.png)

1. 레이아웃을 생성한 후 메뉴에서 **파일**을 선택한 다음 **다른 이름으로 저장**을 선택합니다. 홈 폴더에서 파일을 찾아 카피북과 동일한 파일 이름으로 저장합니다. `str`라는 폴더를 만들고 여기에 모든 구조 파일을 저장할 수 있습니다.  
![\[Enterprise Developer에 str 파일 저장.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/view-data-tables-save-str.png)

## 4단계: 구조(STR) 파일을 사용하여 데이터베이스 뷰 생성
<a name="view-datasets-tables-m2.dbview"></a>

이 단계에서는 이전에 만든 구조 파일을 사용하여 데이터 세트에 대한 데이터베이스 보기를 만듭니다.
+ `dbfhview` 명령을 사용하여 다음 예와 같이 Micro Focus 데이터 스토어에 이미 있는 데이터 세트에 대한 데이터베이스 보기를 생성합니다.

  ```
  ##
        ## The below command creates database view for VSAM file AWS.M2.CARDDEMO.TRANSACT.VSAM.KSDS 
        ## using the STR file CVTRA05Y.str
        ##
        
        dbfhview -create -struct:"D:\PhotonUser\My Files\Home Folder\MFED\str\CVTRA05Y.str" -name:V_AWS.M2.CARDDEMO.TRANSACT.VSAM.KSDS.DAT -file:sql://ESPACDatabase/VSAM/AWS.M2.CARDDEMO.TRANSACT.VSAM.KSDS.DAT?folder=/DATA
        
        ##
        ## Output:
        ##
        
        Micro Focus Database File Handler - View Generation Tool Version 8.0.00
        Copyright (C) 1984-2022 Micro Focus. All rights reserved.
        
        VGN0017I Using structure definition 'TRAN-RECORD-DEFAULT'
        VGN0022I View 'V_AWS.M2.CARDDEMO.TRANSACT.VSAM.KSDS.DAT' installed in datastore 'sql://espacdatabase/VSAM'
        VGN0002I The operation completed successfully
  ```

## 5단계: Rocket Software(이전 Micro Focus) 데이터 세트를 테이블 및 열로 보기
<a name="view-datasets-tables-m2.cols"></a>

이 단계에서는 쿼리를 실행하여 테이블 및 열과 같은 데이터 세트를 볼 수 있도록 `pgAdmin`를 사용하여 데이터베이스에 연결합니다.
+ pgAdmin을 사용하여 데이터베이스 `MicroFocus$SEE$Files$VSAM`에 연결하고 4단계에서 만든 데이터베이스 보기를 쿼리합니다.

  ```
  SELECT * FROM public."V_AWS.M2.CARDDEMO.TRANSACT.VSAM.KSDS.DAT";
  ```  
![\[pgAdmin의 테이블과 열을 보여주는 마이그레이션된 데이터 세트.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/view-data-tables-new-view-pgadmin.png)

# Enterprise Developer에서 Rocket Software(이전 Micro Focus) 데이터 파일 도구를 사용하여 데이터 세트 편집
<a name="edit-datasets-m2"></a>

마이그레이션된 모든 데이터 세트에 대해 Rocket Software 런타임을 사용하여 AWS Mainframe Modernization에서 데이터 세트를 보고 편집할 수 있습니다.   이 문서의 단계는 데이터 파일 도구를 사용하여 데이터 세트에 액세스하는 프로세스를 안내합니다.   이렇게 하면 필요에 따라 마이그레이션된 데이터 세트를 보고 편집할 수 있습니다. 

**Topics**
+ [사전 조건](#edit-datasets-m2.prereq)
+ [Rocket Software(이전 Micro Focus) 데이터 파일 도구 시작](#edit-datasets-m2-launch)
+ [MFDBFH 데이터베이스에 저장된 VSAM 데이터 세트 편집](#edit-datasets-m2-vsam)
+ [MFDBFH 데이터베이스에 저장된 비VSAM 데이터 세트 편집](#edit-datasets-m2-nonvsam)
+ [파일 시스템에 저장된 VSAM 및 비 VSAM 데이터 세트 편집 (EFS/FSx)](#edit-datasets-m2-open)

## 사전 조건
<a name="edit-datasets-m2.prereq"></a>

시작하기 전에 데이터 세트와 함께 배포된 애플리케이션이 있어야 합니다.  Rocket Software 엔진을 사용하여 AWS Mainframe Modernization 서비스에서 가져온 입니다.

데이터 세트 편집을 계속하려면 1단계, 2단계,  및 (선택 사항) [Rocket Enterprise Developer(이전 Micro Focus Enterprise Developer)에서 데이터 세트를 테이블 및 열로 보기](view-datasets-tables-m2.md) 페이지의 3단계  ODBC 연결 및 Micro Focus 데이터 스토어(즉, `MFDBFH`)를 구성합니다.

**중요**  
이 안내서에서는 Amazon Aurora Postgres를 Micro Focus 데이터 스토어(`MFDBFH`)로 사용한다고 가정합니다.  를 사용하여 애플리케이션 데이터를 저장합니다.

## Rocket Software(이전 Micro Focus) 데이터 파일 도구 시작
<a name="edit-datasets-m2-launch"></a>

사전 조건을 완료한 후 데이터베이스()에 저장된 데이터 세트에 액세스하도록 `MFDBFH_CONFIG` 환경 변수를 설정하여 Micro Focus 데이터 파일 도구를 시작합니다`MFDBFH`.

방법은 다음과 같습니다.

1. Micro Focus Enterprise Developer 데스크톱에 로그인하고 **시작 메뉴에서** **Enterprise Developer 명령 프롬프트(64비트)**를 시작합니다.

1. `MFDBCH.cfg` 파일의 전체 경로로 `MFDBFH_CONFIG` 환경 변수를 설정합니다.

   ```
   set MFDBFH_CONFIG="C:\MicroFocus\config\MFDBFH.cfg"
   ```

1. 다음 명령을 사용하여 Enterprise Developer 명령줄에서 Micro Focus 데이터 파일 도구를 시작합니다.

   ```
   mfdatatools2
   ```  
![\[엔터프라이즈 개발자 명령 프롬프트.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/edit-mfdbfh-launch.png)

그러면 Micro Focus 데이터 파일 도구가 별도의 창에서 열립니다.

## MFDBFH 데이터베이스에 저장된 VSAM 데이터 세트 편집
<a name="edit-datasets-m2-vsam"></a>

Micro Focus 데이터 파일 도구를 시작하면 Micro Focus 데이터 스토어에 저장된 VSAM 데이터 세트를 엽니다.

방법은 다음과 같습니다.

1. Micro Focus 데이터 **파일** 도구 창의 파일 메뉴에서 **데이터 탐색**기를 선택합니다.

1. 데이터 탐색기 섹션에서 **설정**(톱니 아이콘)을 선택하여 새 연결을 구성합니다. 그러면 **데이터 소스 설정** 창이 열립니다.  
![\[Data Explorer 섹션이 있는 Micro Focus 데이터 파일 도구 창.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/edit-mfdbfh-data-source.png)

1. 데이터 소스 설정 창에서 **MFDBFH** 탭을 선택하고 다음 값을 입력합니다.
   + 서버: `ESPACDatabase`
   + 데이터 스토어: `VSAM`

   **적용을** 선택하여 구성을 저장합니다.  
![\[Micro Focus 데이터 파일 도구 창 MFDBFH 탭이 있는 데이터 소스 설정.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/edit-mfdbfh-data-source-settings.png)

    이제 Data Explorer에에 저장된 모든 데이터 세트가 표시됩니다`MFDBFH`.  
![\[모든 데이터 세트를 표시하는 Data Explorer 섹션이 있는 Micro Focus 데이터 파일 도구 창.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/edit-mfdbfh-datasets.png)

1. 상대 경로를 확장`DATA`하고 열려는 VSAM 데이터 세트를 두 번 클릭합니다.

1. **데이터 파일 열기** 창에서 **공유 열기** 또는 **독점 열기**를 선택하여 데이터 세트를 엽니다.  
![\[데이터 탐색기 섹션 데이터 파일 열기 섹션을 사용하여 데이터 세트를 여는 Micro Focus 데이터 파일 도구 창입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/edit-mfdbfh-data-set.png)

이제 열려 있는 데이터 세트를 보거나 편집할 수 있습니다.

## MFDBFH 데이터베이스에 저장된 비VSAM 데이터 세트 편집
<a name="edit-datasets-m2-nonvsam"></a>

VSAM이 아닌 데이터 세트를 편집하려면 Micro Focus 데이터 스토어에 저장된 VSAM이 아닌 데이터 세트를 엽니다.

방법은 다음과 같습니다.

1. Enterprise Developer 명령 프롬프트(64비트)에서 `dbfhdeploy data extract` 명령을 실행하여 VSAM이 아닌 데이터 세트를 로컬 파일 시스템에 다운로드합니다.
**참고**  
이 명령을 실행하기 전에 `MFDBFH.cfg` 파일의 전체 경로로 `MFDBFH_CONFIG` 환경 변수를 설정했는지 확인합니다.  

   ```
   dbfhdeploy data extract sql://ESPACDatabase/VSAM/AWS.M2.CARDDEMO.TRANSACT.BKUP.G0001V00.DAT?folder=/DATA C:\MicroFocus\data\AWS.M2.CARDDEMO.TRANSACT.BKUP.G0001V00.DAT
   ```

1. **시작** 메뉴에서 Micro Focus 데이터 파일 도구를 시작합니다.

1. Micro Focus 데이터 파일 도구의 파일 메뉴에서 **열기**를 선택한 다음 **데이터 파일을** 선택합니다.

1. 데이터 파일 열기 창에서 로컬 파일 시스템에서 다운로드한 데이터 세트를 찾습니다. 필요에 따라 **파일 세부 정보를** 편집합니다. 그런 다음 **공유 열기** 또는 **독점 열기**를 선택하여 데이터 세트를 엽니다.  
![\[데이터 세트를 탐색하기 위해 로컬 탭이 선택된 데이터 파일 창을 엽니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/edit-mfdbfh-browse.png)

이제 열려 있는 데이터 세트를 보거나 편집할 수 있습니다.

편집되거나 업데이트된 데이터 세트는의 단계를 사용하거나 [dbfhdeploy 명령줄 유틸리티](https://www.microfocus.com/documentation/enterprise-developer/ed90/ED-Eclipse/GUID-2A16851F-E475-42C9-B024-37567006B86D.html)를 사용하여 Micro Focus 데이터 스토어[AWS Mainframe Modernization 애플리케이션에 대한 데이터 세트 가져오기](applications-m2-dataset.md)로 다시 가져올 수 있습니다.

## 파일 시스템에 저장된 VSAM 및 비 VSAM 데이터 세트 편집 (EFS/FSx)
<a name="edit-datasets-m2-open"></a>

파일 시스템에 저장된 데이터 세트를 열 수도 있습니다.

방법은 다음과 같습니다.

1. Enterprise Developer EC2 인스턴스의에 EFS/FSx 파일 시스템을 탑재합니다.

1. Micro Focus 데이터 파일 도구를 사용하여 파일 시스템에서 데이터 세트를 찾아 엽니다.

# Rocket 소프트웨어용 자습서(이전 Micro Focus)
<a name="tutorials-mf"></a>

이 섹션의 자습서는 AWS 메인프레임 현대화 서비스를 위한 Rocket Software 런타임 엔진에서 다양한 작업을 설정하는 데 도움이 됩니다. 이 자습서는 샘플 애플리케이션을 설정하고, Rocket Enterprise Developer에서 템플릿을 사용하고, Enterprise Analyzer를 설정하기 위한 것입니다.

**Topics**
+ [자습서: BankDemo 샘플 애플리케이션을 위한 Rocket 소프트웨어(이전 Micro Focus) 빌드 설정](tutorial-build-mf.md)
+ [자습서: Rocket Enterprise Analyzer 및 Rocket Enterprise Developer와 함께 사용할 WorkSpaces 애플리케이션 설정](set-up-appstream-mf.md)
+ [자습서: Rocket Enterprise Developer(이전 Micro Focus Enterprise Developer)에서 템플릿 사용](tutorial-templates-ed.md)
+ [자습서: WorkSpaces 애플리케이션에서 Enterprise Analyzer 설정](set-up-ea.md)
+ [자습서: WorkSpaces 애플리케이션에서 Rocket Enterprise Developer 설정](set-up-ed.md)

# 자습서: BankDemo 샘플 애플리케이션을 위한 Rocket 소프트웨어(이전 Micro Focus) 빌드 설정
<a name="tutorial-build-mf"></a>

AWS 메인프레임 현대화는 마이그레이션된 애플리케이션에 대한 빌드 및 지속적 통합/지속적 전송(CI/CD) 파이프라인을 설정할 수 있는 기능을 제공합니다. 이러한 빌드 및 파이프라인은 AWS CodeBuild AWS CodeCommit및 AWS CodePipeline 를 사용하여 이러한 기능을 제공합니다. CodeBuild는 소스 코드를 컴파일하고 단위 테스트를 실행하며 배포할 준비가 완료된 아티팩트를 생성하는 완전 관리형 빌드 서비스입니다. CodeCommit은 AWS 클라우드에서 Git 응답을 비공개로 저장하고 관리할 수 있는 버전 관리 서비스입니다. CodePipeline은 소프트웨어 릴리스에 필요한 단계를 모델링, 시각화 및 자동화하는 데 사용할 수 있는 지속적 전달 서비스입니다.

이 자습서에서는를 AWS CodeBuild 사용하여 Amazon S3에서 BankDemo 샘플 애플리케이션 소스 코드를 컴파일한 다음 컴파일된 코드를 Amazon S3로 다시 내보내는 방법을 보여줍니다.

AWS CodeBuild 는 소스 코드를 컴파일하고, 테스트를 실행하고, 배포할 준비가 된 소프트웨어 패키지를 생성하는 완전 관리형 지속적 통합 서비스입니다. CodeBuild를 사용하면 사전 패키징된 빌드 환경을 사용하거나 혹은 자체 빌드 도구를 사용하는 사용자 지정 빌드 환경을 만들 수 있습니다. 이 데모 시나리오에서는 두 번째 옵션을 사용합니다. 사전 패키징된 Docker 이미지를 사용하는 CodeBuild 빌드 환경으로 구성되어 있습니다.

**중요**  
Mainframe Modernization 프로젝트를 시작하기 전에 [Mainframe용AWS Migration Acceleration Program(MAP)](https://aws.amazon.com/migration-acceleration-program/mainframe/)에 대해 알아보거나 [AWS Mainframe 전문가](mailto: mainframe@amazon.com)에게 문의하여 Mainframe 애플리케이션을 현대화하는 데 필요한 단계에 대해 알아보는 것이 좋습니다.

**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 프로그램과 카피북 및 정의가 들어 있습니다. JCL을 빌드할 필요는 없지만 참조용 JCL 폴더도 포함되어 있습니다. 이 폴더에는 빌드에 필요한 메타 파일도 들어 있습니다.
+  AWS 메인프레임 현대화 콘솔에서 **도구**를 선택합니다. **자산 분석, 개발 및 구축**에서 **내 AWS 계정과 자산 공유**를 선택합니다.

## 1단계: 빌드 자산을 AWS 계정과 공유
<a name="tutorial-build-mf-assets"></a>

이 단계에서는 특히 자산이 사용되는 리전에서 빌드 자산을 AWS 계정과 공유해야 합니다.

1. [https://console.aws.amazon.com/m2/](https://us-west-2.console.aws.amazon.com/m2/home?region=us-west-2#/) AWS Mainframe Modernization 콘솔을 엽니다.

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`, 여기서 `regionId`는 버킷 AWS 리전 의 이고 `accountId`는 ID AWS 계정 입니다.
**참고**  
미국 동부(버지니아 북부) 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`여기서 `regionId`는 버킷 AWS 리전 의 이고 `accountId`는 AWS 계정 ID입니다.

   이러한 버킷에 대해 어떤 이름을 선택하더라도 선택한 경우 이 자습서 전체에서 해당 이름을 사용해야 합니다.

## 3단계: 빌드 사양 생성
<a name="tutorial-build-mf-spec"></a>

이 단계에서는 빌드 사양 파일을 생성합니다. 이 파일은 CodeBuild에서 빌드를 실행하기 위한 빌드 명령과 관련 설정을 YAML 형식으로 제공합니다. 자세한 내용은 *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 SNS 콘솔에 로그인하고 왼쪽 탐색 창에서 **버킷**을 선택합니다. 그런 다음 이전에 생성한 입력 버킷을 선택합니다.

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 Mainframe Modernization이 Rocket Software 빌드 도구가 포함된 Docker 이미지에 액세스하고 사용할 수 있는 권한을 부여합니다. 이 정책은 고객을 위해 맞춤화되지 않았습니다. 다른 정책은 AWS 메인프레임 현대화가 입력 및 출력 버킷 및 CodeBuild가 생성하는 [Amazon CloudWatch logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)와 상호 작용할 수 있는 권한을 부여합니다.

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 Mainframe Modernization이 버킷 및 로그와 상호 작용하도록 허용하는 정책을 생성하려면**

1. IAM 콘솔에서 다음 정책 문서를 복사하여 정책 편집기에 붙여 넣습니다. 를 `regionId`로 AWS 리전업데이트하고를 `accountId`로 업데이트해야 합니다 AWS 계정.

1. 정책의 이름을 제공합니다(예: `BankdemoCodeBuildRolePolicy`).

## 6단계: IAM 역할 생성
<a name="tutorial-build-mf-IAM-role"></a>

이 단계에서는 이전에 생성한 [IAM 정책을이 새 IAM 역할과](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) 연결한 후 CodeBuild가 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** 필드에서 다음을 수행합니다.
   + Rocket 소프트웨어 v9:를 입력합니다`673918848628.dkr.ecr.us-west-1.amazonaws.com/m2-enterprise-build-tools:9.0.7.R1`. Rocket Software v9에서 다른 AWS 리전을 사용하는 경우를 지정할 수도 있습니다. ` 673918848628.dkr.ecr.<m2-region>.amazonaws.com/m2-enterprise-build-tools:9.0.7.R1`여기서 <m2-region>은 AWS Mainframe Modernization 서비스를 사용할 수 있는 AWS 리전입니다(예: `eu-west-3`).
   + Rocket 소프트웨어 v8의 경우:를 입력합니다. `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. **아티팩트 패키징**에서 **압축**을 선택합니다.

1. **빌드 프로젝트 생성**을 선택합니다.

## 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. **버킷** 섹션에서 출력 버킷의 이름을 선택합니다(예: `codebuild-regionId-accountId-output-bucket`).

1. 역할 **다운로드**를 선택합니다.

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 정책 삭제](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)를 참조하세요.

# 자습서: Rocket Enterprise Analyzer 및 Rocket Enterprise Developer와 함께 사용할 WorkSpaces 애플리케이션 설정
<a name="set-up-appstream-mf"></a>

AWS 메인프레임 현대화는 Amazon WorkSpaces 애플리케이션을 통해 여러 도구를 제공합니다. WorkSpaces 애플리케이션은 애플리케이션을 다시 작성하지 않고도 데스크톱 애플리케이션을 사용자에게 스트리밍할 수 있는 완전 관리형 보안 애플리케이션 스트리밍 서비스입니다. WorkSpaces 애플리케이션은 사용자가 원하는 디바이스에서 응답적이고 유연한 사용자 경험을 통해 필요한 애플리케이션에 즉시 액세스할 수 있도록 합니다. WorkSpaces 애플리케이션을 사용하여 런타임 엔진별 도구를 호스팅하면 고객 애플리케이션 팀이 웹 브라우저에서 직접 도구를 사용하여 Amazon S3 버킷 또는 CodeCommit 리포지토리에 저장된 애플리케이션 파일과 상호 작용할 수 있습니다.

WorkSpaces 애플리케이션의 브라우저 지원에 대한 자세한 내용은 Amazon WorkSpaces 애플리케이션 관리 안내서의 [시스템 요구 사항 및 기능 지원(웹 브라우저)](https://docs.aws.amazon.com/appstream2/latest/developerguide/requirements-and-features-web-browser-admin.html)을 참조하세요. *Amazon WorkSpaces * WorkSpaces 애플리케이션을 사용할 때 문제가 있는 경우 Amazon WorkSpaces 애플리케이션 관리 안내서의 [ AppStream 2.0 사용자 문제 해결을](https://docs.aws.amazon.com/appstream2/latest/developerguide/troubleshooting-user-issues.html) 참조하세요. *Amazon WorkSpaces *

이 문서는 고객 운영 팀 구성원을 대상으로 합니다. 메인 AWS 프레임 현대화에 사용되는 Rocket Enterprise Analyzer 및 Rocket Enterprise Developer 도구를 호스팅하도록 Amazon WorkSpaces Applications 플릿 및 스택을 설정하는 방법을 설명합니다. Rocket Enterprise Analyzer는 일반적으로 평가 단계에서 사용되고 Rocket Enterprise Developer는 일반적으로 AWS 메인프레임 현대화 접근 방식의 마이그레이션 및 현대화 단계에서 사용됩니다. Enterprise Analyzer와 Enterprise Developer를 모두 사용하려는 경우 각 도구에 대해 별도의 플릿과 스택을 만들어야 합니다. 라이선스 조건이 다르기 때문에 각 도구마다 자체 플릿과 스택이 필요합니다.

**중요**  
이 자습서의 단계는 다운로드 가능한 CloudFormation 템플릿 [cfn-m2-appstream-fleet-ea-ed.yml](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml)을 기반으로 합니다.

**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 사용 설명서*의 [기본 VPC](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>

이 단계에서는 Enterprise Analyzer 및 Enterprise Developer용 WorkSpaces 애플리케이션 이미지를 AWS 계정과 공유합니다.

1. [https://console.aws.amazon.com/m2/](https://us-west-2.console.aws.amazon.com/m2/home?region=us-west-2#/) AWS Mainframe Modernization 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **도구**를 선택합니다.

1. **분석, 개발 및 빌드 자산**에서 **내 AWS 계정과 자산 공유**를 선택합니다.

## 2단계: CloudFormation 템플릿을 사용하여 스택 생성
<a name="tutorial-aas-step2"></a>

이 단계에서는 다운로드한 CloudFormation 템플릿을 사용하여 Rocket Enterprise Analyzer를 실행하기 위한 WorkSpaces 애플리케이션 스택 및 플릿을 생성합니다. 나중에이 단계를 반복하여 Rocket Enterprise Developer를 실행하기 위한 또 다른 WorkSpaces 애플리케이션 스택과 플릿을 생성할 수 있습니다. 각 도구에는 WorkSpaces 애플리케이션에서 자체 플릿과 스택이 필요하기 때문입니다. CloudFormation 스택에 대한 자세한 내용은 *AWS CloudFormation 사용 설명서*의 [스택 작업을 참조하세요](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html).

**참고**  
AWS 메인프레임 현대화는 Enterprise Analyzer 및 Enterprise Developer 사용에 대한 표준 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.yml](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml) 템플릿을 업로드합니다.

1. **다음**을 선택합니다.  
![\[선택한 cfn-m2-appstream-fleet-ea-ed.yml 템플릿이 있는 스택 CloudFormation 생성 페이지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/cfn-create-stack.png)

1. **스택 세부 정보 지정**에서 다음 정보를 입력합니다.
   + **스택 이름**에 원하는 이름을 입력합니다. 예를 들어 **m2-ea**입니다.
   + **AppStreamApplication**에서 **ea**를 선택합니다.
   + **AppStreamFleetSecurityGroup**에서 기본 VPC의 기본 보안 그룹을 선택합니다.
   + **AppStreamFleetVpcSubnet**에서 기본 VPC 내의 서브넷을 선택합니다.
   + **AppStreamImageName**에서 `m2-enterprise-analyzer`로 시작하는 이미지를 선택합니다. 이 이미지에는 현재 지원되는 버전의 Rocket Enterprise Analyzer 도구가 포함되어 있습니다.
   + 다른 필드의 기본값을 그대로 사용하고 **다음**을 선택합니다.  
![\[Enterprise Analyzer 옵션이 채워진 스택 세부 정보 CloudFormation 지정 페이지입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/cfn-specify-stack-details.png)

1. 기본값을 수락하고 다시 **다음**을 선택합니다.

1. **검토** 시 모든 파라미터가 의도한 대로인지 확인하세요.

1. 아래로 스크롤하여 **AWS CloudFormation에서 사용자 지정 이름으로 IAM 리소스를 생성할 수 있음을 승인합니다**를 선택하고 **스택 생성**을 선택합니다.

스택과 플릿을 생성하는 데 20\$130분 정도 걸립니다. **새로 고침**을 선택하여 이벤트가 발생할 때 해당 CloudFormation 이벤트를 볼 수 있습니다.

## 3단계: WorkSpaces 애플리케이션에서 사용자 생성
<a name="tutorial-aas-step3"></a>

이 스택 생성을 CloudFormation 완료할 때까지 기다리는 동안 WorkSpaces 애플리케이션에서 사용자를 한 명 이상 생성할 수 있습니다. 이러한 사용자는 WorkSpaces 애플리케이션에서 Enterprise Analyzer를 사용할 사용자입니다. 각 사용자의 이메일 주소를 지정해야 하며, 각 사용자에게 Amazon S3에서 버킷을 생성하고, 버킷에 파일을 업로드하고, 콘텐츠를 매핑할 버킷에 연결할 수 있는 충분한 권한이 있는지 확인해야 합니다.

1. WorkSpaces 애플리케이션 콘솔을 엽니다.

1. 왼쪽 탐색 창에서 **사용자 풀**을 선택합니다.

1. **사용자 생성**을 선택합니다.

1. 사용자가 WorkSpaces 애플리케이션을 사용하기 위한 이메일 초대장을 받을 수 있는 이메일 주소, 이름과 성을 입력하고 **사용자 생성을** 선택합니다.

1. 필요한 경우 이 단계를 반복하여 사용자를 더 생성하세요. 각 사용자의 이메일 주소는 고유해야 합니다.

WorkSpaces 애플리케이션 사용자 생성에 대한 자세한 내용은 Amazon [WorkSpaces 애플리케이션 관리 안내서의 WorkSpaces 애플리케이션 사용자 풀](https://docs.aws.amazon.com/appstream2/latest/developerguide/user-pool.html)을 참조하세요. *Amazon WorkSpaces *

가 스택 생성을 CloudFormation 마치면 다음과 같이 스택에 생성한 사용자를 할당할 수 있습니다.

1. WorkSpaces 애플리케이션 콘솔을 엽니다.

1. 사용자 이름을 선택합니다.

1. **작업**을 선택한 다음 **스택 할당**을 선택합니다.

1. **스택 할당**에서 `m2-appstream-stack-ea`로 시작하는 스택을 선택합니다.

1. **스택 할당**을 선택합니다.  
![\[WorkSpaces 애플리케이션 스택 할당 페이지에는 할당할 사용자와 Enterprise Analyzer 스택이 표시됩니다.\]](http://docs.aws.amazon.com/ko_kr/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/ko_kr/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 및 애플리케이션 연결 프로필, UI 사용자 지정과 같은 설정이 포함되어 있습니다. 자세한 내용은 *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 애플리케이션에서 Enterprise Analyzer 설정](set-up-ea.md) 단원을 참조하십시오. Enterprise Developer를 설정할 수도 있습니다. 자세한 내용은 [자습서: WorkSpaces 애플리케이션에서 Rocket Enterprise Developer 설정](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 애플리케이션은 현재 콘솔을 사용하여 사용자를 삭제할 수 없습니다. 대신 CLI와 함께 서비스 API를 사용해야 합니다. 자세한 내용은 Amazon WorkSpaces 애플리케이션 [관리 안내서의 사용자 풀](https://docs.aws.amazon.com/appstream2/latest/developerguide/user-pool-admin.html) 관리를 참조하세요. *Amazon WorkSpaces *

# 자습서: Rocket Enterprise Developer(이전 Micro Focus Enterprise Developer)에서 템플릿 사용
<a name="tutorial-templates-ed"></a>

이 자습서에서는 Rocket Enterprise Developer에서 템플릿과 사전 정의된 프로젝트를 사용하는 방법을 설명합니다. 세 가지 사용 사례를 다룹니다. 모든 사용 사례는 BankDemo 샘플에 제공된 샘플 코드를 사용합니다. 샘플을 다운로드하려면 [https://d1vi4vxke6c2hu.cloudfront.net/demo/bankdemo.zip](https://d1vi4vxke6c2hu.cloudfront.net/demo/bankdemo.zip)를 선택합니다.

**중요**  
Windows용 Enterprise Developer 버전을 사용하는 경우 컴파일러에서 생성한 바이너리는 Enterprise Developer와 함께 제공된 엔터프라이즈 서버에서만 실행할 수 있습니다. Linux를 기반으로 하는 AWS Mainframe Modernization 런타임에서는 실행할 수 없습니다.

**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/ko_kr/m2/latest/userguide/images/ed-uc1-step1.png)

1. **애플리케이션 탐색기** 보기의 **Enterprise Development 프로젝트** 트리 보기 항목에 있는 컨텍스트 메뉴의 **템플릿에서 새 프로젝트**를 선택합니다.  
![\[엔터프라이즈 개발 프로젝트 트리 뷰 콘텍스트 메뉴.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc1-step2.png)

1. 표시된 대로 템플릿 매개 변수를 입력합니다.
**참고**  
템플릿 경로는 ZIP이 추출된 위치를 참조합니다.  
![\[경로와 프로젝트 이름이 입력된 템플릿 매개 변수 입력 상자.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc1-step3.png)

1. 확인을 선택하면 제공된 템플릿을 기반으로 완전한 소스 및 실행 환경 구조를 갖춘 로컬 개발 Eclipse 프로젝트가 생성됩니다.  
![\[구조를 보여주는 로컬 개발 Eclipse 프로젝트.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc1-step4.png)

   이 `System` 구조에는 BANKDEMO에 필요한 항목이 포함된 전체 리소스 정의 파일, 항목이 추가된 필수 카탈로그 및 해당 ASCII 데이터 파일이 포함되어 있습니다.

   소스 템플릿 구조에는 모든 소스 항목이 포함되므로 이러한 파일은 로컬 프로젝트에 복사되므로 Enterprise Developer에서 자동으로 빌드됩니다.

## 사용 사례 2 - 소스 구성 요소 없이 COBOL 프로젝트 템플릿 사용
<a name="tutorial-templates-ed-step2"></a>

1\$13단계는 [사용 사례 1 - 소스 구성 요소가 포함된 COBOL 프로젝트 템플릿 사용](#tutorial-templates-ed-step1)과 동일합니다.

이 사용 사례의 `System` 구조에는 BankDemo의 필수 항목이 포함된 전체 리소스 정의 파일, 항목이 추가된 필수 카탈로그 및 해당 ASCII 데이터 파일도 포함됩니다.

하지만 템플릿 소스 구조에는 구성 요소가 포함되어 있지 않습니다. 사용 중인 소스 리포지토리에서 프로젝트로 이러한 항목을 가져와야 합니다.

1. 프로젝트 이름을 선택합니다. 관련 컨텍스트 메뉴에서 **가져오기**를 선택합니다.  
![\[가져오기가 선택된 프로젝트 컨텍스트 메뉴.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc2-step4.png)

1. 표시되는 대화 상자의 **일반** 섹션에서 **파일 시스템**을 선택한 후 다음을 선택합니다.  
![\[파일 시스템이 선택된 상태로 가져오기 상자.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc2-step5.png)

1. 저장소 폴더를 가리키도록 파일 시스템을 검색하여 **디렉터리에서** 필드를 채웁니다. 가져오려는 폴더(예: `sources`)를 모두 선택합니다. `Into folder` 필드가 미리 채워져 있습니다. **마침**을 클릭합니다.  
![\[BankDemo 디렉토리가 확장된 파일 시스템 상자.\]](http://docs.aws.amazon.com/ko_kr/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/ko_kr/m2/latest/userguide/images/ed-uc3-step1.png)

1. **파일** 메뉴에서 **가져오기**를 선택합니다.  
![\[가져오기가 선택된 파일 메뉴.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc3-step2.png)

1. 표시되는 대화 상자의 **일반**에서 **폴더 또는 아카이브의 프로젝트**를 선택하고 **다음**을 선택합니다.  
![\[폴더 또는 아카이브의 프로젝트가 선택된 상태로 가져오기 상자가 나타납니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc3-step3.png)

1. **가져오기 소스**를 채우고 **디렉터리**를 선택한 다음 파일 시스템을 탐색하여 사전 정의된 프로젝트 폴더를 선택합니다. 안에 포함된 프로젝트에는 동일한 저장소의 소스 폴더로 연결되는 링크가 있습니다.  
![\[파일 시스템 또는 보관함에서 프로젝트 가져오기(입력한 가져오기 소스 경로 포함).\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-uc3-step4.png)

   **마침**을 클릭합니다.

   프로젝트는 소스 폴더 링크로 채워지므로 코드가 자동으로 빌드됩니다.

## 리전 정의 JSON 템플릿 사용
<a name="tutorial-templates-ed-step4"></a>

1. 서버 탐색기 보기로 전환합니다. 관련 컨텍스트 메뉴에서 **관리 페이지 열기를** 선택합니다. 그러면 기본 브라우저가 시작됩니다.  
![\[열린 관리 페이지가 선택된 서버 탐색기 컨텍스트 메뉴.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-json-admin-page.png)

1. 표시되는 엔터프라이즈 서버 공용 웹 관리(ESCWA) 화면에서 **가져오기**를 선택합니다.  
![\[가져오기가 선택된 엔터프라이즈 서버 공용 웹 관리 화면.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-json-import.png)

1. **JSON** 가져오기 유형을 선택하고 **다음**을 선택합니다.  
![\[JSON이 선택된 상태로 가져오기 유형 선택 상자.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-json-import-type.png)

1. 제공된 `BANKDEMO.JSON` 파일을 업로드합니다.  
![\[BANKDEMO 파일이 선택된 상태로 업로드할 파일 선택 상자입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-json-upload.png)

   선택한 후 **다음**을 선택합니다.  
![\[엔드포인트에서 포트를 지우는 영역 선택 상자는 선택되지 않았습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-json-next.png)

   **리전 선택** 패널에서 **엔드포인트에서 포트 지우기** 옵션이 선택되지 않았는지 확인한 다음 **가져오기 수행** 패널이 표시될 때까지 패널을 통해 **다음**을 계속 선택합니다. 왼쪽 탐색 창에서 **가져오기**를 선택합니다.

   마지막으로 **마침**을 클릭합니다. 그러면 BANKDEMO 리전이 서버 목록에 추가됩니다.  
![\[BANKDEMO가 추가된 리전 및 서버 목록.\]](http://docs.aws.amazon.com/ko_kr/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/ko_kr/m2/latest/userguide/images/ed-json-ESP.png)

1. **적용**를 클릭합니다.

   이제 이 리전은 Eclipse COBOL 프로젝트와 함께 실행되도록 완전히 구성되었습니다.

1. 마지막으로 Enterprise Developer로 돌아가서 가져온 리전을 프로젝트에 연결합니다.  
![\[프로젝트와 연관이 선택된 프로젝트 컨텍스트 메뉴.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ed-json-associate.png)

   이제 완전히 작동하는 BankDemo 버전과 함께 Enterprise Developer 환경을 사용할 준비가 되었습니다. 해당 리전을 대상으로 코드를 편집, 컴파일 및 디버그할 수 있습니다.
**중요**  
Windows용 Enterprise Developer 버전을 사용하는 경우 컴파일러에서 생성된 바이너리는 Enterprise Developer와 함께 제공된 엔터프라이즈 서버에서만 실행할 수 있습니다. Linux를 기반으로 하는 AWS Mainframe Modernization 런타임에서는 실행할 수 없습니다.

# 자습서: WorkSpaces 애플리케이션에서 Enterprise Analyzer 설정
<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 Mainframe Modernization이 고객과 공유하는 WorkSpaces 애플리케이션 Windows 이미지를 기반으로 합니다. 설정은에 설명된 대로 WorkSpaces 애플리케이션 플릿 및 스택 생성을 기반으로 합니다[자습서: Rocket Enterprise Analyzer 및 Rocket Enterprise Developer와 함께 사용할 WorkSpaces 애플리케이션 설정](set-up-appstream-mf.md).

**중요**  
이 자습서의 단계에서는 다운로드 가능한 CloudFormation 템플릿 [cfn-m2-appstream-fleet-ea-ed.yml](https://drm0z31ua8gi7.cloudfront.net/tutorials/mf/appstream/cfn-m2-appstream-fleet-ea-ed.yml)을 사용하여 WorkSpaces 애플리케이션을 설정한다고 가정합니다. 자세한 내용은 [자습서: Rocket Enterprise Analyzer 및 Rocket Enterprise Developer와 함께 사용할 WorkSpaces 애플리케이션 설정](set-up-appstream-mf.md) 단원을 참조하십시오.  
이 자습서의 단계를 수행하려면 Enterprise Analyzer 플릿 및 스택을 설정하고 실행 중이어야 합니다.

Enterprise Analyzer 기능 및 결과물에 대한 전체 설명은 Rocket Software(이전 Micro Focus) 웹 사이트의 [Enterprise Analyzer 설명서를](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`에 있는 라이브러리
+ Enterprise Developer를 위한 BankDemo 소스 코드 및 프로젝트 정의: `m2-bankdemo-template.zip`.
+ Mainframe용 MFA 설치 패키지: `mfa.zip`. 자세한 내용은 *Micro Focus Enterprise Developer* 설명서의 [Mainframe 액세스 개요](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단계: Amazon S3 기반 가상 폴더를 Windows에서 생성](#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단계: Amazon S3 기반 가상 폴더를 Windows에서 생성
<a name="tutorial-ea-step2"></a>

**참고**  
 AWS 메인프레임 현대화 미리 보기 중에 이미 Rclone을 사용한 경우에 있는 `m2-rclone.cmd` 최신 버전으로 업데이트해야 합니다`C:\Users\Public`.

1. 파일 탐색기를 사용하여 제공된 `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`입니다.
   + Amazon S3 버킷 키로 `your-s3-folder-key`를 변경합니다. 예를 들어 `myProject`입니다.
   + 애플리케이션 파일이 포함된 Amazon S3 버킷에서 애플리케이션 파일을 동기화하려는 디렉토리의 경로로 `your-local-folder-path`를 변경합니다. 예를 들어 `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. cd to `C:\Users\PhotonUser\My Files\Home Folder` Windows 명령 프롬프트를 열고 필요한 경우 `m2-rclone.cmd`를 실행합니다. 이 명령 스크립트는 연속 루프를 실행하여 Amazon S3 버킷과 키를 10초마다 로컬 폴더에 동기화합니다. 필요에 따라 타임아웃을 조정할 수 있습니다. 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. Create New Data Source(새 데이터 소스 생성) 대화 상자에서 **PostgreSQL Unicode** 드라이버를 선택한 다음 **Finish(마침)**를 선택합니다.

1. **PostgreSQL 유니코드 ODBC 드라이버(psqlODBC) 설치** 대화 상자에서 원하는 데이터 소스 이름을 정의하고 기록해 둡니다. 이전에 만든 RDS 인스턴스의 값을 사용하여 다음 파라미터를 완성하세요.  
**설명**  
이 데이터베이스 연결을 빠르게 식별하는 데 도움이 되는 선택적 설명입니다.  
**Database**  
앞에서 만든 Amazon RDS 데이터베이스.  
**Server**  
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. 이 옵션을 사용하여 작업 공간 파일을 공유하는 경우 Amazon S3 백업 디스크에 연결하기 위해 `Rclone`를 시작하세요.

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**을 선택하여 Enterprise Analyzer 관리 도구를 시작합니다.  
![\[Rocket Enterprise Developer 관리 도구가 선택된 WorkSpaces 애플리케이션 시작 선택기 메뉴입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/aas-launch-selector.png)

1. **관리** 메뉴에서 **작업 영역 경로 새로 고침...**을 선택합니다.  
![\[Workspace 경로 새로 고침이 선택된 Rocket Enterprise Analyzer 관리 도구의 관리 메뉴입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ea_admin-administer-refresh.png)

1. **작업 영역 선택**에서 원하는 작업 영역을 선택한 다음 **확인**을 선택합니다.  
![\[프로젝트가 선택된 Rocket Enterprise Analyzer 관리 도구의 작업 영역 선택 대화 상자.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ea_admin-select-workspace.png)

1. **확인**을 선택하여 오류 메시지를 확인합니다.  
![\[확인이 선택된 ‘작업 영역 디렉터리에 액세스할 수 없음’ Enterprise Analyzer 오류 메시지.\]](http://docs.aws.amazon.com/ko_kr/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/ko_kr/m2/latest/userguide/images/ea_admin-workspace-directory-network-path.png)

1. Micro Focus Enterprise Analyzer 관리 도구를 닫습니다.  
![\[닫기 버튼이 선택된 Micro Focus Enterprise Analyzer 관리 도구.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ea_admin-close.png)

1. WorkSpaces 애플리케이션에서 도구 모음의 **애플리케이션 시작** 아이콘을 선택한 다음 **EA**를 선택하여 Micro Focus Enterprise Analyzer를 시작합니다.  
![\[EA가 선택된 WorkSpaces 애플리케이션 시작 애플리케이션 아이콘.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/aas-launch-ea.png)

1. 3\$15단계를 반복합니다.

이제 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)를 참조하세요.
+ 이 자습서용으로 생성한 RDS 데이터베이스를 선택합니다. 자세한 내용은 [DB 인스턴스 삭제](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.PostgreSQL.html#CHAP_GettingStarted.Deleting.PostgreSQL)를 참조하세요.

# 자습서: WorkSpaces 애플리케이션에서 Rocket Enterprise Developer 설정
<a name="set-up-ed"></a>

이 자습서에서는 Enterprise Developer 기능을 사용하여 유지 관리, 컴파일 및 테스트하기 위해 하나 이상의 메인프레임 애플리케이션에 대해 Rocket Enterprise Developer(이전 Micro Focus Enterprise Developer)를 설정하는 방법을 설명합니다. 설정은 AWS 메인프레임 현대화가 고객과 공유하는 WorkSpaces 애플리케이션 Windows 이미지와에 설명된 대로 WorkSpaces 애플리케이션 플릿 및 스택 생성을 기반으로 합니다[자습서: Rocket Enterprise Analyzer 및 Rocket Enterprise Developer와 함께 사용할 WorkSpaces 애플리케이션 설정](set-up-appstream-mf.md).

**중요**  
이 자습서의 단계에서는 다운로드 가능한 CloudFormation 템플릿 [cfn-m2-appstream-fleet-ea-ed.yaml](https://d1vi4vxke6c2hu.cloudfront.net/tutorial/cfn-m2-appstream-fleet-ea-ed.yaml)을 사용하여 WorkSpaces 애플리케이션을 설정한다고 가정합니다. 자세한 내용은 [자습서: Rocket Enterprise Analyzer 및 Rocket Enterprise Developer와 함께 사용할 WorkSpaces 애플리케이션 설정](set-up-appstream-mf.md) 단원을 참조하십시오.  
Enterprise Developer 플릿 및 스택이 가동되고 실행될 때 이 설정의 단계를 수행해야 합니다.

Enterprise Developer v7 기능 및 결과물에 대한 전체 설명은 Rocket Software[(이전 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>

이미지에는 Enterprise Developer 자체 외에도 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`에 있는 라이브러리
+ Enterprise Developer를 위한 BankDemo 소스 코드 및 프로젝트 정의: `m2-bankdemo-template.zip`.
+ Mainframe용 MFA 설치 패키지: `mfa.zip`. 자세한 내용은 *Micro Focus Enterprise Developer* 설명서의 [Mainframe 액세스 개요](https://www.microfocus.com/documentation/enterprise-developer/30pu12/ED-VS2012/BKMMMMINTRS001.html)를 참조하세요.
+ Rclone용 명령 및 구성 파일(자습서에서의 사용 지침): `m2-rclone.cmd` 및 `m2-rclone.conf`.

CodeCommit 리포지토리에 아직 로드되지 않았지만 Amazon S3 버킷에서 사용할 수 있는 소스 코드에 액세스해야 하는 경우(예: 소스 코드를 git에 처음 로드하기 위해) [자습서: WorkSpaces 애플리케이션에서 Enterprise Analyzer 설정](set-up-ea.md)에 설명된 절차에 따라 가상 Windows 디스크를 생성합니다.

**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 CodeCommit의 인증 및 액세스 제어](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control.html)에 있는 정보에 따라 계정 관리자가 정의한 CodeCommit 리포지토리 또는 리포지토리에 대한 보안 인증을 가지고 있어야 합니다. 이러한 보안 인증의 구조는 [AWS CodeCommit의 인증 및 액세스 제어](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control.html)에서 검토되며 CodeCommit의 IAM 인증에 대한 전체 참조는 [CodeCommit 권한 참조](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control-permissions-reference.html)에 있습니다. 관리자는 각 리포지토리의 역할별 보안 인증을 사용하고 해당 저장소에서 수행해야 하는 특정 작업 집합으로 사용자의 권한 부여를 제한하여 고유한 역할에 대해 고유한 IAM 정책을 정의할 수 있습니다. 따라서 CodeCommit 리포지토리의 각 유지 관리자에 대해 계정 관리자는 기본 사용자를 생성하고 CodeCommit 액세스에 적합한 IAM 정책 또는 정책을 선택하여 이 사용자에게 필요한 리포지토리에 액세스할 수 있는 권한을 부여합니다.

## 1단계: 개별 Enterprise Developer 사용자에 의한 구성
<a name="tutorial-ed-step1"></a>

1. IAM 보안 인증 구성:

   1. [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) AWS 콘솔에 연결합니다.

   1. *AWS CodeCommit 사용 설명서*의 [Git 보안 인증을 사용하는 HTTPS 사용자용 설정](https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html)의 3단계에 설명된 절차를 따르세요.

   1. IAM이 생성한 CodeCommit 관련 로그인 보안 인증을 복사합니다. 이 정보를 표시하고 복사한 다음 로컬 컴퓨터의 보안 파일에 붙여넣거나 **보안 인증 다운로드**를 선택하여 이 정보를.CSV 파일로 다운로드합니다. CodeCommit에 접속하려면 이 정보가 필요합니다.

1. 환영 이메일에 수신된 URL을 기반으로 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. 파일 탐색기를 사용하여 제공된 `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`입니다.
   + Amazon S3 버킷 키로 `your-s3-folder-key`를 변경합니다. 예를 들어 `myProject`입니다.
   + 애플리케이션 파일이 포함된 Amazon S3 버킷에서 애플리케이션 파일을 동기화하려는 디렉토리의 경로로 `your-local-folder-path`를 변경합니다. 예를 들어 `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. cd to `C:\Users\PhotonUser\My Files\Home Folder` Windows 명령 프롬프트를 열고 필요한 경우 `m2-rclone.cmd`를 실행합니다. 이 명령 스크립트는 연속 루프를 실행하여 Amazon S3 버킷과 키를 10초마다 로컬 폴더에 동기화합니다. 필요에 따라 타임아웃을 조정할 수 있습니다. Windows 파일 탐색기의 Amazon S3 버킷에 있는 애플리케이션의 소스 코드를 확인해야 합니다.

작업 중인 세트에 새 파일을 추가하거나 기존 파일을 업데이트하려면 Amazon S3 버킷에 파일을 업로드하세요. 그러면 파일이`m2-rclone.cmd` 에서 정의한 다음 반복에서 디렉터리에 동기화됩니다. 마찬가지로 일부 파일을 삭제하려면 Amazon S3 버킷에서 삭제합니다. 다음 동기화 작업에서는 로컬 디렉터리에서 파일이 삭제됩니다.

## 3단계: 리포지토리 복제
<a name="tutorial-ed-step3"></a>

1. 브라우저 창의 왼쪽 상단에 있는 애플리케이션 선택기 메뉴로 이동하여 Enterprise Developer를 선택합니다.

1. 작업 영역 위치로 `C:\Users\PhotonUser\My Files\Home Folder`(일명`D: \PhotonUser\My Files\Home Folder`)를 선택하여 홈 폴더에서 Enterprise Developer에 필요한 작업 영역 생성을 완료하세요.

1. Enterprise Developer에서는 프로젝트 탐색기로 이동하여 CodeCommit 리포지토리를 복제하고 **가져오기**, **... 가져오기**, **Git**, **Git** **복제 URI**에서**프로젝트**를 선택합니다. 그런 다음 CodeCommit별 로그인 보안 인증을 입력하고 Eclipse 대화 상자를 완료하여 코드를 가져옵니다.

CodeCommit git 리포지토리가 이제 로컬 작업 영역에 복제되었습니다.

이제 Enterprise Developer 작업 영역이 애플리케이션에 대한 유지 관리 작업을 시작할 준비가 되었습니다. 특히 Enterprise Developer와 통합된 Enterprise Server(ES)의 로컬 인스턴스를 사용하여 애플리케이션을 대화식으로 디버깅하고 실행하여 로컬에서 변경 사항을 검증할 수 있습니다.

**참고**  
로컬 Enterprise Server 인스턴스를 포함한 로컬 Enterprise Developer 환경은 Windows에서 실행되는 반면 AWS Mainframe Modernization은 Linux에서 실행됩니다. 새 애플리케이션을 CodeCommit에 커밋하고이 대상에 맞게 다시 빌드한 후 새 애플리케이션을 프로덕션에 롤아웃하기 전에 AWS Mainframe Modernization에서 제공하는 Linux 환경에서 보완 테스트를 실행하는 것이 좋습니다.

## 후속 세션
<a name="tutorial-ed-step4"></a>

CodeCommit 리포지토리 복제를 위한 홈 폴더와 같이 WorkSpaces 애플리케이션 관리 아래에 있는 폴더를 선택하면 세션 간에 투명하게 저장되고 복원됩니다. 다음에 애플리케이션으로 작업해야 할 때 다음 단계를 완료합니다.

1. 환영 이메일에 수신된 URL을 기반으로 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)를 참조하세요.
+ 이 자습서용으로 생성한 데이터베이스를 삭제합니다. 자세한 내용은 [DB 인스턴스 삭제](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_GettingStarted.CreatingConnecting.PostgreSQL.html#CHAP_GettingStarted.Deleting.PostgreSQL)를 참조하세요.

# AWS Mainframe Modernization에서 사용 가능한 배치 유틸리티
<a name="utilities-m2"></a>

메인프레임 애플리케이션은 주로 배치 유틸리티 프로그램을 사용하여 데이터 정렬, FTP를 사용한 파일 전송, DB2와 같은 데이터베이스로 데이터 로드, 데이터베이스에서 데이터 언로드 등과 같은 특정 기능을 수행합니다.

애플리케이션을 AWS Mainframe Modernization으로 마이그레이션할 때는 메인프레임에서 사용한 것과 동일한 작업을 수행할 수 있는 기능적으로 동등한 대체 유틸리티가 필요합니다. 이러한 유틸리티 중 일부는 이미 AWS Mainframe Modernization 런타임 엔진의 일부로 사용할 수 있지만 다음과 같은 대체 유틸리티를 제공합니다.
+ M2SFTP - SFTP 프로토콜을 사용하여 파일을 안전하게 전송할 수 있습니다.
+ M2WAIT - 배치 작업의 다음 단계를 계속하기 전에 지정된 시간 동안 기다립니다.
+ TXT2PDF - 텍스트 파일을 PDF 형식으로 변환합니다.
+ M2DFUTIL - 메인프레임 ADRDSSU 유틸리티에서 제공하는 지원과 유사한 데이터 세트에 대한 백업, 복원, 삭제 및 복사 기능을 제공합니다.
+ M2RUNCMD - JCL에서 직접 Rocket Software(이전 Micro Focus) 명령, 스크립트 및 시스템 호출을 실행할 수 있습니다.

당사는 고객 피드백을 기반으로 이러한 배치 유틸리티를 개발하고 메인프레임 유틸리티와 동일한 기능을 제공하도록 설계했습니다. 목표는 메인프레임에서 AWS 메인프레임 현대화로 최대한 원활하게 전환하는 것입니다.

**Topics**
+ [이진 위치](#location-utilities)
+ [M2SFTP 배치 유틸리티](m2sftp.md)
+ [M2WAIT 배치 유틸리티](m2wait.md)
+ [TXT2PDF 배치 유틸리티](txt2pdf.md)
+ [M2DFUTIL 배치 유틸리티](m2dfutil.md)
+ [M2RUNCMD 배치 유틸리티](m2runcmd.md)

## 이진 위치
<a name="location-utilities"></a>

이러한 유틸리티는 Rocket Enterprise Developer(ED) 및 Rocket Software(ES) 제품에 사전 설치되어 있습니다. ED 및 ES의 모든 변형에 대해서는 다음 위치에서 찾을 수 있습니다.
+ Linux: `/opt/aws/m2/microfocus/utilities/64bit`
+ Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\32bit`
+ Windows(64비트): `C:\AWS\M2\MicroFocus\Utilities\64bit`

# M2SFTP 배치 유틸리티
<a name="m2sftp"></a>

M2SFTP는 보안 File Transfer 프로토콜(SFTP)을 사용하여 시스템 간에 안전한 파일 전송을 수행하도록 설계된 JCL 유틸리티 프로그램입니다. 프로그램은 Putty SFTP 클라이언트를 사용하여 실제 `psftp` 파일 전송을 수행합니다. 이 프로그램은 메인프레임 FTP 유틸리티 프로그램과 유사하게 작동하며 사용자 및 암호 인증을 사용합니다.

**참고**  
퍼블릭 키 인증은 지원되지 않습니다.

메인프레임 FTP JCL을 SFTP를 사용하도록 변환하려면 `PGM=FTP`를 `PGM=M2SFTP`로 변경하세요.

**Topics**
+ [지원하는 플랫폼](#m2sftp-platforms)
+ [종속성 설치](#m2sftp-dependencies)
+ [AWS 메인프레임 현대화 관리형을 위한 M2SFTP 구성](#m2sftp-configure-managed)
+ [Amazon EC22에서 메인프레임 현대화 런타임을 위한 M2SFTP 구성(WorkSpaces 애플리케이션 포함) AWS](#m2sftp-configure-customer-infra)
+ [샘플 JCL](#m2sftp-jcl)
+ [Putty SFTP(PSFTP) 클라이언트 명령 참조](#m2sftp-cmd-ref)
+ [다음 단계](#m2sftp-next)

## 지원하는 플랫폼
<a name="m2sftp-platforms"></a>

다음 플랫폼 중 하나에서 M2SFTP를 사용할 수 있습니다.
+ AWS 메인프레임 현대화 로켓 소프트웨어(이전 Micro Focus) 관리형
+ Rocket Software 런타임(Amazon EC2)
+ Rocket Software Enterprise Developer(ED) 및 Rocket Software Enterprise Server(ES) 제품의 모든 변형입니다.

## 종속성 설치
<a name="m2sftp-dependencies"></a>

**윈도우에 퍼티 SFTP 클라이언트를 설치하려면**
+ [PuTTY SFTP](https://www.putty.org/) 클라이언트를 다운로드하고 설치합니다.

**Linux에 퍼티 SFTP 클라이언트 설치하기:**
+ 다음 명령을 실행하여 Putty SFTP 클라이언트를 설치합니다.

  ```
    sudo yum -y install putty
  ```

## AWS 메인프레임 현대화 관리형을 위한 M2SFTP 구성
<a name="m2sftp-configure-managed"></a>

마이그레이션된 애플리케이션이 AWS Mainframe Modernization Managed에서 실행 중인 경우 다음과 같이 M2SFTP를 구성해야 합니다.
+ MFFTP에 적합한 Rocket Enterprise Server 환경 변수를 설정합니다. 다음은 몇 가지 예입니다.
  + `MFFTP_TEMP_DIR`
  + `MFFTP_SENDEOL`
  + `MFFTP_TIME`
  + `MFFTP_ABEND`

  이러한 변수를 원하는 만큼 적게 또는 많이 설정할 수 있습니다. `ENVAR DD` 명령문을 사용하여 JCL에서 설정할 수 있습니다. 이러한 변수에 대한 자세한 내용은 Micro Focus 설명서의 [MFFTP 제어 변수](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-3F94BBC8-CB97-4642-A4A7-4235C0C079E2.html)를 참조하세요.

구성을 테스트하려면 [샘플 JCL](#m2sftp-jcl)를 참조하세요.

## Amazon EC22에서 메인프레임 현대화 런타임을 위한 M2SFTP 구성(WorkSpaces 애플리케이션 포함) AWS
<a name="m2sftp-configure-customer-infra"></a>

마이그레이션된 애플리케이션이 Amazon EC2의 AWS Mainframe Modernization 런타임에서 실행 중인 경우 다음과 같이 M2SFTP를 구성합니다.

1. 배치 유틸리티의 바이너리 위치를 포함하도록 [Micro Focus JES 프로그램 경로](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html)를 변경하세요. 여러 경로를 지정해야 하는 경우 Linux에서는 콜론(`:`)을 사용하여 경로를 구분하고 Windows에서는 세미콜론(`;`)을 사용하여 경로를 구분하세요.
   + Linux: `/opt/aws/m2/microfocus/utilities/64bit`
   + Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\32bit`
   + Windows(64비트): `C:\AWS\M2\MicroFocus\Utilities\64bit`

1. MFFTP에 적합한 Rocket Enterprise Server 환경 변수를 설정합니다. 다음은 몇 가지 예입니다.
   + `MFFTP_TEMP_DIR`
   + `MFFTP_SENDEOL`
   + `MFFTP_TIME`
   + ``MFFTP\$1ABEND

   이러한 변수를 원하는 만큼 적게 또는 많이 설정할 수 있습니다. `ENVAR DD` 명령문을 사용하여 JCL에서 설정할 수 있습니다. 이러한 변수에 대한 자세한 내용은 Micro Focus 설명서의 [MFFTP 제어 변수](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-3F94BBC8-CB97-4642-A4A7-4235C0C079E2.html)를 참조하세요.

구성을 테스트하려면 [샘플 JCL](#m2sftp-jcl)를 참조하세요.

## 샘플 JCL
<a name="m2sftp-jcl"></a>

다음 샘플 JCL 파일 중 하나를 사용할 수 있습니다.

**M2SFTP1 .jcl**

이 JCL은 M2SFTP를 직접적으로 호출하여 원격 SFTP 서버로 파일을 보내는 방법을 보여줍니다. `ENVVAR DD` 명령문에 설정된 환경 변수를 확인하세요.

```
//M2SFTP1 JOB 'M2SFTP1',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* Sample SFTP JCL step to send a file to SFTP server* 
//*-------------------------------------------------------------------**
//*
//STEP01 EXEC PGM=M2SFTP,
//            PARM='127.0.0.1 (EXIT=99 TIMEOUT 300'
//*
//SYSFTPD  DD  *
RECFM FB
LRECL 80
SBSENDEOL CRLF
MBSENDEOL CRLF
TRAILINGBLANKS FALSE
/*
//NETRC    DD  *
machine 127.0.0.1 login sftpuser password sftppass
/*
//SYSPRINT DD  SYSOUT=*
//OUTPUT   DD  SYSOUT=*
//STDOUT   DD  SYSOUT=*
//INPUT    DD  *
type a
locsite notrailingblanks
cd files
put 'AWS.M2.TXT2PDF1.PDF' AWS.M2.TXT2PDF1.pdf   
put 'AWS.M2.CARDDEMO.CARDDATA.PS' AWS.M2.CARDDEMO.CARDDATA.PS1.txt
quit
/*
//ENVVAR   DD *
MFFTP_VERBOSE_OUTPUT=ON
MFFTP_KEEP=N
/*
//*
//
```

**M2SFTP2 .jcl**

이 JCL은 M2SFTP를 직접적으로 호출하여 원격 SFTP 서버로부터 파일을 수신하는 방법을 보여줍니다. `ENVVAR DD` 명령문에 설정된 환경 변수를 확인하세요.

```
//M2SFTP2 JOB 'M2SFTP2',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* Sample SFTP JCL step to receive a file from SFTP server* 
//*-------------------------------------------------------------------**
//*
//STEP01 EXEC PGM=M2SFTP
//*
//SYSPRINT DD  SYSOUT=*
//OUTPUT   DD  SYSOUT=*
//STDOUT   DD  SYSOUT=*
//INPUT    DD  *
open 127.0.0.1
sftpuser
sftppass
cd files
locsite recfm=fb lrecl=150
get AWS.M2.CARDDEMO.CARDDATA.PS.txt +
'AWS.M2.CARDDEMO.CARDDATA.PS2' (replace
quit
/*
//ENVVAR   DD *
MFFTP_VERBOSE_OUTPUT=ON
MFFTP_KEEP=N
/*
//*
//
```

**참고**  
FTP 자격 증명을 NETRC 파일에 저장하고 권한이 있는 사용자만 액세스할 수 있도록 제한하는 것이 좋습니다.

## Putty SFTP(PSFTP) 클라이언트 명령 참조
<a name="m2sftp-cmd-ref"></a>

PSFTP 클라이언트가 모든 FTP 명령을 지원하는 것은 아닙니다. 다음 목록은 PSFTP가 지원하는 모든 명령을 보여줍니다.


| 명령 | 설명 | 
| --- | --- | 
|  \$1  |  로컬 명령 실행  | 
|  bye  |  SFTP 세션을 끝내세요  | 
|  cd  |  원격 작업 디렉터리 변경  | 
|  chmod  |  파일 권한 및 모드 변경  | 
|  해지  |  SFTP 세션을 종료하되 PSFTP를 종료하지 마세요  | 
|  del  |  원격 서버의 파일 삭제  | 
|  dir  |  원격 파일 나열  | 
|  exit  |  SFTP 세션을 마칩니다  | 
|  시작  |  서버에서 로컬 시스템으로 파일 다운로드  | 
|  help  |  도움 제공  | 
|  lcd  |  로컬 작업 디렉터리 변경  | 
|  lpwd  |  로컬 작업 디렉터리 인쇄  | 
|  ls  |  원격 파일 나열  | 
|  mget  |  여러 파일을 한 번에 다운로드  | 
|  mkdir  |  원격 서버에 디렉터리 생성  | 
|  mput  |  한 번에 여러 파일을 업로드할 수 있습니다  | 
|  mv  |  원격 서버의 파일 이동 또는 이름 변경  | 
|  open  |  호스트에 연결  | 
|  put  |  로컬 시스템에서 서버로 파일 업로드  | 
|  PWD  |  원격 작업 디렉터리 인쇄  | 
|  종료  |  SFTP 세션을 마칩니다  | 
|  reget  |  파일 계속 다운로드  | 
|  ren  |  원격 서버의 파일 이동 또는 이름 변경  | 
|  reput  |  파일 계속 업로드  | 
|  rm  |  원격 서버의 파일 삭제  | 
|  rmdir  |  원격 서버의 디렉터리 제거  | 

## 다음 단계
<a name="m2sftp-next"></a>

SFTP를 사용하여 Amazon Simple Storage Service에 파일을 업로드하고 다운로드하려면 다음 블로그 게시물에 설명된 AWS Transfer Family대로 M2SFTP를와 함께 사용할 수 있습니다.
+ [AWS SFTP 논리적 디렉터리를 사용하여 간단한 데이터 배포 서비스 구축](https://aws.amazon.com/blogs/storage/using-aws-sftp-logical-directories-to-build-a-simple-data-distribution-service/)
+ [를 AWS Transfer for SFTP 사용하기 위한 암호 인증 활성화 AWS Secrets Manager](https://aws.amazon.com/blogs/storage/enable-password-authentication-for-aws-transfer-for-sftp-using-aws-secrets-manager/)

# M2WAIT 배치 유틸리티
<a name="m2wait"></a>

M2WAIT는 시간을 초, 분 또는 시간 단위로 지정하여 JCL 스크립트에 대기 기간을 도입할 수 있는 메인프레임 유틸리티 프로그램입니다. 대기하려는 시간을 입력 파라미터로 전달하여 JCL에서 직접 M2WAIT를 직접적으로 호출할 수 있습니다. 내부적으로 M2WAIT 프로그램은 Rocket Software(이전 Micro Focus)에서 제공한 모듈을 호출`C$SLEEP`하여 지정된 시간 동안 기다립니다.

**참고**  
Micro Focus 별칭을 사용하여 JCL 스크립트에 있는 내용을 대체할 수 있습니다. 자세한 내용은 Microsoft 설명서의 [JES 별칭](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-D4206FF9-32C4-43E7-9413-5E7E96AA8092.html)을 참조하세요.

**Topics**
+ [지원하는 플랫폼](#m2wait-platforms)
+ [M2WAIT for AWS Mainframe Modernization Managed 구성](#m2wait-configure-managed)
+ [Amazon EC22에서 메인프레임 현대화 런타임을 위한 M2WAIT 구성(WorkSpaces 애플리케이션 포함) AWS](#m2wait-configure-customer-infra)
+ [샘플 ACL](#m2wait-jcl)

## 지원하는 플랫폼
<a name="m2wait-platforms"></a>

다음 플랫폼 중 하나에서 M2WAIT를 사용할 수 있습니다.
+ AWS 메인프레임 현대화 로켓 소프트웨어(이전 Micro Focus) 관리형
+ Rocket Software 런타임(Amazon EC2)
+ Rocket Software Enterprise Developer(ED) 및 Rocket Software Enterprise Server(ES) 제품의 모든 변형입니다.

## M2WAIT for AWS Mainframe Modernization Managed 구성
<a name="m2wait-configure-managed"></a>

마이그레이션된 애플리케이션이 AWS Mainframe Modernization Managed에서 실행 중인 경우 다음과 같이 M2WAIT를 구성해야 합니다.
+ [샘플 ACL](#m2wait-jcl)와 같이 입력 파라미터를 전달하여 JCL에서 M2WAIT 프로그램을 사용하세요.

## Amazon EC22에서 메인프레임 현대화 런타임을 위한 M2WAIT 구성(WorkSpaces 애플리케이션 포함) AWS
<a name="m2wait-configure-customer-infra"></a>

마이그레이션된 애플리케이션이 Amazon EC2의 AWS Mainframe Modernization 런타임에서 실행 중인 경우 다음과 같이 M2WAIT를 구성합니다.

1. 배치 유틸리티의 바이너리 위치를 포함하도록 [Micro Focus JES 프로그램 경로](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html)를 변경하세요. 여러 경로를 지정해야 하는 경우 Linux에서는 콜론(`:`)을 사용하여 경로를 구분하고 Windows에서는 세미콜론(`;`)을 사용하여 경로를 구분하세요.
   + Linux: `/opt/aws/m2/microfocus/utilities/64bit`
   + Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\32bit`
   + Windows(64비트): `C:\AWS\M2\MicroFocus\Utilities\64bit`

1. [샘플 ACL](#m2wait-jcl)과 같이 입력 파라미터를 전달하여 JCL에서 M2WAIT 프로그램을 사용하세요.

## 샘플 ACL
<a name="m2wait-jcl"></a>

설치를 테스트하려면 `M2WAIT1.jcl` 프로그램을 사용할 수 있습니다.

이 샘플 JCL은 M2WAIT를 직접적으로 호출하고 여러 지속 시간을 전달하는 방법을 보여줍니다.

```
//M2WAIT1 JOB 'M2WAIT',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* Wait for 12 Seconds*
//*-------------------------------------------------------------------**
//*
//STEP01 EXEC PGM=M2WAIT,PARM='S012'
//SYSOUT DD SYSOUT=*
//*
//*-------------------------------------------------------------------**
//* Wait for 0 Seconds (defaulted to 10 Seconds)*
//*-------------------------------------------------------------------**
//*
//STEP02 EXEC PGM=M2WAIT,PARM='S000'
//SYSOUT DD SYSOUT=*
//*
//*-------------------------------------------------------------------**
//* Wait for 1 Minute*
//*-------------------------------------------------------------------**
//*
//STEP03 EXEC PGM=M2WAIT,PARM='M001'
//SYSOUT DD SYSOUT=*
//*
//
```

# TXT2PDF 배치 유틸리티
<a name="txt2pdf"></a>

TXT2PDF는 텍스트 파일을 PDF 파일로 변환하는 데 일반적으로 사용되는 메인프레임 유틸리티 프로그램입니다. 이 유틸리티는 TXT2PDF(z/OS 프리웨어)에 동일한 소스 코드를 사용합니다. AWS Mainframe Modernization Rocket Software(이전 Micro Focus) 런타임 환경에서 실행되도록 수정했습니다.

**Topics**
+ [지원하는 플랫폼](#txt2pdf-platforms)
+ [AWS 메인프레임 현대화 관리형을 위한 TXT2PDF 구성](#txt2pdf-configure-managed)
+ [Amazon EC22의 메인프레임 현대화 런타임을 위한 TXT2PDF 구성(WorkSpaces 애플리케이션 포함) AWS](#txt2pdf-configure-customer-infra)
+ [샘플 ACL](#txt2pdf-jcl)
+ [수정](#txt2pdf-mods)
+ [참조](#txt2pdf-ref)

## 지원하는 플랫폼
<a name="txt2pdf-platforms"></a>

다음 플랫폼 중 하나에서 TXT2PDF를 사용할 수 있습니다.
+ AWS 메인프레임 현대화 Rocket 소프트웨어 관리형
+ Rocket Software 런타임(Amazon EC2)
+ Rocket Enterprise Developer(ED) 및 Rocket Enterprise Server(ES) 제품의 모든 변형입니다.

## AWS 메인프레임 현대화 관리형을 위한 TXT2PDF 구성
<a name="txt2pdf-configure-managed"></a>

마이그레이션된 애플리케이션이 AWS Mainframe Modernization Managed에서 실행 중인 경우 다음과 같이 TXT2PDF를 구성합니다.
+ `AWS.M2.REXX.EXEC`라는 REXX EXEC 라이브러리를 생성합니다. 이 [REXX 모듈](https://drm0z31ua8gi7.cloudfront.net/utilities/mf/TXT2PDF/rexx/TXT2PDF_rexx.zip)을 다운로드하고 라이브러리에 복사하세요.
  + `TXT2PDF.rex` - TXT2PDF z/OS 프리웨어(수정됨)
  + `TXT2PDFD.rex` - TXT2PDF z/OS 프리웨어(수정되지 않음)
  + `TXT2PDFX.rex` - TXT2PDF z/OS 프리웨어(수정됨)
  + `M2GETOS.rex` - To check the OS type(Windows 또는 Linux)

구성을 테스트하려면 [샘플 ACL](#txt2pdf-jcl)를 참조하세요.

## Amazon EC22의 메인프레임 현대화 런타임을 위한 TXT2PDF 구성(WorkSpaces 애플리케이션 포함) AWS
<a name="txt2pdf-configure-customer-infra"></a>

마이그레이션된 애플리케이션이 Amazon EC2의 AWS Mainframe Modernization 런타임에서 실행 중인 경우 다음과 같이 TXT2PDF를 구성합니다.

1. Rocket Software 환경 변수를 ASCII 데이터의 `A`경우 “"와 같은 `MFREXX_CHARSET` 적절한 값으로 설정합니다.
**중요**  
잘못된 값을 입력하면 데이터 변환 문제(EBCDIC에서 ASCII로)가 발생하여 결과 PDF를 읽을 수 없거나 작동하지 않을 수 있습니다. `MFREXX_CHARSET`를 `MF_CHARSET`와 일치하도록 설정하는 것이 좋습니다.

1. 배치 유틸리티의 바이너리 위치를 포함하도록 [Micro Focus JES 프로그램 경로](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html)를 변경하세요. 여러 경로를 지정해야 하는 경우 Linux에서는 콜론(`:`)을 사용하여 경로를 구분하고 Windows에서는 세미콜론(`;`)을 사용하여 경로를 구분하세요.
   + Linux: `/opt/aws/m2/microfocus/utilities/64bit`
   + Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\32bit`
   + Windows(64비트): `C:\AWS\M2\MicroFocus\Utilities\64bit`

1. `AWS.M2.REXX.EXEC``라는 REXX EXEC 라이브러리를 생성합니다. 이 [REXX 모듈](https://drm0z31ua8gi7.cloudfront.net/utilities/mf/TXT2PDF/rexx/TXT2PDF_rexx.zip)을 다운로드하고 라이브러리에 복사하세요.
   + `TXT2PDF.rex` - TXT2PDF z/OS 프리웨어(수정됨)
   + `TXT2PDFD.rex` - TXT2PDF z/OS 프리웨어(수정되지 않음)
   + `TXT2PDFX.rex` - TXT2PDF z/OS 프리웨어(수정됨)
   + `M2GETOS.rex` - To check the OS type(Windows 또는 Linux)

구성을 테스트하려면 [샘플 ACL](#txt2pdf-jcl)를 참조하세요.

## 샘플 ACL
<a name="txt2pdf-jcl"></a>

다음 샘플 JCL 파일 중 하나를 사용할 수 있습니다.

**TXT2PDF1.jcl**

이 샘플 JCL 파일은 TXT2PDF 변환에 DD 이름을 사용합니다.

```
//TXT2PDF1 JOB 'TXT2PDF1',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* PRE DELETE*
//*-------------------------------------------------------------------**
//*
//PREDEL  EXEC PGM=IEFBR14
//* 
//DD01     DD DSN=AWS.M2.TXT2PDF1.PDF.VB,                      
//            DISP=(MOD,DELETE,DELETE)
//*
//DD02     DD DSN=AWS.M2.TXT2PDF1.PDF,                       
//            DISP=(MOD,DELETE,DELETE)
//* 
//*-------------------------------------------------------------------**
//* CALL TXT2PDF TO CONVERT FROM TEXT TO PDF (VB)*
//*-------------------------------------------------------------------**
//*
//STEP01 EXEC PGM=IKJEFT1B
//*
//SYSEXEC  DD DISP=SHR,DSN=AWS.M2.REXX.EXEC
//*
//INDD     DD *
1THIS IS THE FIRST LINE ON THE PAGE 1
0THIS IS THE THIRD LINE ON THE PAGE 1
-THIS IS THE   6TH LINE ON THE PAGE 1
THIS IS THE   7TH LINE ON THE PAGE 1
+____________________________________ - OVERSTRIKE 7TH LINE          
1THIS IS THE FIRST LINE ON THE PAGE 2
0THIS IS THE THIRD LINE ON THE PAGE 2
-THIS IS THE   6TH LINE ON THE PAGE 2 
THIS IS THE   7TH LINE ON THE PAGE 2
+____________________________________ - OVERSTRIKE 7TH LINE                 
/*
//*
//OUTDD    DD DSN=AWS.M2.TXT2PDF1.PDF.VB,
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(LRECL=256,DSORG=PS,RECFM=VB,BLKSIZE=0)
//*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD DDNAME=SYSIN
//*
//SYSIN    DD *
%TXT2PDF BROWSE Y IN DD:INDD +
OUT DD:OUTDD +
CC YES
/*
//*
//*-------------------------------------------------------------------**
//* CONVERT PDF (VB) TO PDF (LSEQ - BYTE STREAM)*
//*-------------------------------------------------------------------**
//* 
//STEP02 EXEC PGM=VB2LSEQ
//*
//INFILE   DD DSN=AWS.M2.TXT2PDF1.PDF.VB,DISP=SHR             
//*
//OUTFILE  DD DSN=AWS.M2.TXT2PDF1.PDF,                      
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(LRECL=256,DSORG=PS,RECFM=LSEQ,BLKSIZE=0)
//*
//SYSOUT   DD SYSOUT=*
//*
//
```

**TXT2PDF2.jcl**

이 샘플 JCL은 TXT2PDF 변환에 DSN 이름을 사용합니다.

```
//TXT2PDF2 JOB 'TXT2PDF2',CLASS=A,MSGCLASS=X,TIME=1440
//*
//* Copyright Amazon.com, Inc. or its affiliates.* 
//* All Rights Reserved.* 
//*
//*-------------------------------------------------------------------**
//* PRE DELETE*
//*-------------------------------------------------------------------**
//*
//PREDEL  EXEC PGM=IEFBR14
//* 
//DD01     DD DSN=AWS.M2.TXT2PDF2.PDF.VB,                      
//            DISP=(MOD,DELETE,DELETE)
//*
//DD02     DD DSN=AWS.M2.TXT2PDF2.PDF,                       
//            DISP=(MOD,DELETE,DELETE)
//* 
//*-------------------------------------------------------------------**
//* CALL TXT2PDF TO CONVERT FROM TEXT TO PDF (VB)*
//*-------------------------------------------------------------------**
//* 
//STEP01 EXEC PGM=IKJEFT1B
//*
//SYSEXEC  DD DISP=SHR,DSN=AWS.M2.REXX.EXEC
//*
//INDD     DD *
1THIS IS THE FIRST LINE ON THE PAGE 1
0THIS IS THE THIRD LINE ON THE PAGE 1
-THIS IS THE   6TH LINE ON THE PAGE 1
THIS IS THE   7TH LINE ON THE PAGE 1
+____________________________________ - OVERSTRIKE 7TH LINE          
1THIS IS THE FIRST LINE ON THE PAGE 2
0THIS IS THE THIRD LINE ON THE PAGE 2
-THIS IS THE   6TH LINE ON THE PAGE 2 
THIS IS THE   7TH LINE ON THE PAGE 2
+____________________________________ - OVERSTRIKE 7TH LINE                 
/*
//*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD DDNAME=SYSIN
//*
//SYSIN    DD *
%TXT2PDF BROWSE Y IN DD:INDD +
OUT 'AWS.M2.TXT2PDF2.PDF.VB' +
CC YES
/*
//*
//*-------------------------------------------------------------------**
//* CONVERT PDF (VB) TO PDF (LSEQ - BYTE STREAM)*
//*-------------------------------------------------------------------**
//*
//STEP02 EXEC PGM=VB2LSEQ
//*
//INFILE   DD DSN=AWS.M2.TXT2PDF2.PDF.VB,DISP=SHR             
//*
//OUTFILE  DD DSN=AWS.M2.TXT2PDF2.PDF,                      
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(LRECL=256,DSORG=PS,RECFM=LSEQ,BLKSIZE=0)
//*
//SYSOUT   DD SYSOUT=*
//*
//
```

## 수정
<a name="txt2pdf-mods"></a>

 AWS Mainframe Modernization Rocket Software 런타임 환경에서 TXT2PDF 프로그램을 실행하기 위해 다음과 같이 변경했습니다.
+ Rocket Software REXX 런타임과의 호환성을 보장하기 위한 소스 코드 변경
+ 프로그램이 Windows 및 Linux 운영 체제에서 모두 실행될 수 있도록 변경되었습니다.
+ EBCDIC 및 ASCII 런타임을 모두 지원하도록 수정

## 참조
<a name="txt2pdf-ref"></a>

TXT2PDF 참조 및 소스 코드:
+ [텍스트를 PDF로 변환](https://homerow.net/rexx/txt2pdf/)
+ [z/OS 프리웨어 TCP/IP 및 메일 도구](http://www.lbdsoftware.com/tcpip.html)
+ [TXT2PDF 사용자 참조 가이드](http://www.lbdsoftware.com/TXT2PDF-User-Guide.pdf)

# M2DFUTIL 배치 유틸리티
<a name="m2dfutil"></a>

M2DFUTIL은 메인프레임 ADRDSSU 유틸리티에서 제공하는 지원과 마찬가지로 데이터 세트에 백업, 복원, 삭제 및 복사 기능을 제공하는 JCL 유틸리티 프로그램입니다. 이 프로그램은 ADRDSSU의 많은 SYSIN 파라미터를 유지하므로, 최신 유틸리티로 마이그레이션하는 프로세스가 간소화됩니다.

**Topics**
+ [지원하는 플랫폼](#m2dfutil-platforms)
+ [플랫폼 요구 사항](#m2dfutil-platform)
+ [향후 지원 예정](#m2udfutil-future-support)
+ [자산 위치](#mdfutil-assets)
+ [Amazon EC22에서 M2DFUTIL 또는 AWS Mainframe Modernization 런타임 구성(AppStream 2.0 포함)](#mdfutil-dependencies)
+ [일반 구문](#mdfutil-syntax)
+ [샘플 JCL](#mdfutil-sample-jcls)

## 지원하는 플랫폼
<a name="m2dfutil-platforms"></a>

다음 플랫폼 중 하나에서 M2DFUTIL을 사용할 수 있습니다.
+ Windows의 Rocket Software(이전 Micro Focus) ES(64비트 및 32비트)
+ Linux의 Rocket Software ES(64비트)

## 플랫폼 요구 사항
<a name="m2dfutil-platform"></a>

M2DFUTIL은 정규 표현식 테스트를 수행하기 위한 스크립트 호출에 따라 달라집니다. Windows에서는 Windows Services for Linux(WSL)를 설치해야 이 스크립트를 실행할 수 있습니다.

## 향후 지원 예정
<a name="m2udfutil-future-support"></a>

현재는 메인프레임 ADRDSSU 유틸리티에서 사용할 수 없지만, 추후 다음과 같은 기능이 제공됩니다.
+ M2 관리형
+ VSAM
+ 파일 이름 변경에 대한 COPY 지원
+ RESTORE에 대한 RENAME 지원 
+ 다중 INCLUDE 및 EXCLUDE
+ DSORG, CREDT, EXPDT별 하위 선택을 위한 BY 절
+ 대기열에 넣기 실패를 재시도하기 위한 MWAIT 절
+ DUMP/RESTORE를 위한 S3 스토리지 지원

## 자산 위치
<a name="mdfutil-assets"></a>

이 유틸리티의 로드 모듈 이름은 Linux에서는 `M2DFUTIL.so`, Windows에서는 `M2DFUTIL.dll`입니다. 이 로드 모듈은 다음 위치에서 찾을 수 있습니다.
+ Linux: `/opt/aws/m2/microfocus/utilities/64bit`
+ Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\32bit`
+ Windows(64비트): `C:\AWS\M2\MicroFocus\Utilities\64bit`

정규 표현식 테스트에 사용되는 스크립트의 이름은 `compare.sh`입니다. 다음 위치에서 이 스크립트를 찾을 수 있습니다.
+ Linux: `/opt/aws/m2/microfocus/utilities/scripts`
+ Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\scripts`

## Amazon EC22에서 M2DFUTIL 또는 AWS Mainframe Modernization 런타임 구성(AppStream 2.0 포함)
<a name="mdfutil-dependencies"></a>

다음을 사용하여 엔터프라이즈 서버 리전을 구성합니다.
+ **[ES-환경]**에 다음 변수를 추가합니다.
  + `M2DFUTILS_BASE_LOC` - DUMP 출력의 기본 위치
  + `M2DFUTILS_SCRIPTPATH` - **자산 위치**에 문서화된 `compare.sh` 스크립트의 위치
  + `M2DFUTILS_VERBOSE` - [VERBOSE 또는 NORMAL]. 이는 `SYSPRINT ` 출력의 세부 수준을 제어합니다.
+ 로드 모듈 경로가 `JES\Configuration\JES Program Path` 설정에 추가되었는지 확인합니다.
+ 유틸리티 디렉터리의 스크립트에 실행 권한이 있는지 확인합니다. Linux 환경에서 `chmod + x <script name>` 명령을 사용하여 실행 권한을 추가할 수 있습니다.

## 일반 구문
<a name="mdfutil-syntax"></a>

### DUMP
<a name="mdfutil-dump"></a>

현재 카탈로그 위치에서 백업 위치로 파일을 복사하는 기능을 제공합니다. 이 위치는 현재 파일 시스템이어야 합니다.

#### 프로세스
<a name="mdfutil-dump-process"></a>

DUMP는 다음을 수행합니다.

1. 대상 위치 디렉터리를 생성합니다.

1. 대상 위치 디렉터리를 PDS 멤버로 카탈로그화합니다.

1. INCLUDE 파라미터를 처리하여 포함할 파일을 결정합니다.

1. EXCLUDE 파라미터를 처리하여 포함된 파일을 선택 취소합니다.

1. 덤프되는 파일을 삭제할지 여부를 결정합니다.

1. 처리해야 할 파일을 대기열에 넣습니다.

1. 파일을 복사합니다.

1. 복사된 파일 카탈로그 DCB 정보를 대상 위치의 사이드 파일로 내보내 향후 RESTORE 작업을 지원합니다.

#### 구문
<a name="mdfutil-dump-syntax"></a>

```
DUMP
TARGET ( TARGET LOCATION  )    -
INCLUDE ( DSN. )
[ EXCLUDE ( DSN ) ]
[ CANCEL | IGNORE ]
[ DELETE ]
```

#### 필수 파라미터
<a name="mdfutil-dump-requiredparam"></a>

DUMP의 필수 파라미터는 다음과 같습니다.
+ `SYSPRINT DD NAME` - 추가 로깅 정보를 포함하기 위해 사용합니다.
+ `TARGET` - 대상 위치입니다. 다음 중 하나일 수 있습니다.
  + 덤프 위치의 전체 경로
  + **M2DFUTILS\$1BASE\$1LOC** 변수에 정의된 위치에 생성된 하위 디렉터리 이름
+ `INCLUDE` - 이름이 지정된 단일 DSNAME 또는 유효한 메인프레임 DSN 검색 문자열
+ `EXCLUDE` - 이름이 지정된 단일 DSNAME 또는 유효한 메인프레임 DSN 검색 문자열

#### 선택적 파라미터
<a name="mdfutil-dump-optionalparam"></a>
+ CANCEL - 오류가 발생하면 취소합니다. 처리된 파일은 유지됩니다.
+ (기본값) IGNORE - 모든 오류를 무시하고 종료될 때까지 처리합니다.
+ DELETE - ENQ 오류가 발생하지 않으면 파일이 삭제되고 카탈로그화되지 않습니다.

### DELETE
<a name="mdfutil-delete"></a>

파일을 대량 삭제하고 카탈로그화를 해제할 수 있는 기능을 제공합니다. 파일은 백업되지 않습니다.

#### 프로세스
<a name="mdfutil-delete-process"></a>

DELETE는 다음을 수행합니다.

1. INCLUDE 파라미터를 처리하여 포함할 파일을 결정합니다.

1. EXCLUDE 파라미터를 처리하여 포함된 파일을 선택 취소합니다.

1. 처리해야 할 파일을 대기열에 넣습니다. 처리를 OLD, DELETE, KEEP으로 설정합니다.

#### 구문
<a name="mdfutil-delete-syntax"></a>

```
DELETE
INCLUDE ( DSN )
[ EXCLUDE ( DSN ) ]
[ CANCEL | IGNORE ]
[ DELETE ]
```

#### 필수 파라미터
<a name="mdfutil-delete-requiredparam"></a>

DELETE의 필수 파라미터는 다음과 같습니다.
+ `SYSPRINT DD NAME` - 추가 로깅 정보를 포함하기 위해 사용합니다.
+ `INCLUDE` - 이름이 지정된 단일 DSNAME 또는 유효한 메인프레임 DSN 검색 문자열 
+ `EXCLUDE` - 이름이 지정된 단일 DSNAME 또는 유효한 메인프레임 DSN 검색 문자열 

#### 선택적 파라미터
<a name="mdfutil-delete-optionalparam"></a>
+ CANCEL - 오류가 발생하면 취소합니다. 처리된 파일은 유지됩니다.
+ (기본값) IGNORE - 모든 오류를 무시하고 종료될 때까지 처리합니다.

### RESTORE
<a name="mdfutil-restore"></a>

DUMP를 사용하여 이전에 백업한 파일을 복원하는 기능을 제공합니다. RENAME을 사용하여 복원된 DSNAME을 변경하지 않는 한, 파일은 카탈로그화된 원래 위치에 복원됩니다.

#### 프로세스
<a name="mdfutil-restore-process"></a>

RESTORE는 다음을 수행합니다.

1. 소스 위치 디렉터리의 유효성을 검사합니다.

1. 카탈로그 내보내기 파일을 처리하여 포함할 파일을 결정합니다.

1. EXCLUDE 파라미터를 처리하여 포함된 파일을 선택 취소합니다.

1. 처리해야 할 파일을 대기열에 넣습니다.

1. 내보내기 정보를 기반으로 카탈로그화되지 않은 카탈로그 파일.

1. 파일이 이미 카탈로그화되어 있고 내보내기 카탈로그 정보가 동일한 경우 REPLACE 옵션이 설정되었다면 RESTORE는 카탈로그화된 데이터 세트를 대체합니다.

#### 구문
<a name="mdfutil-restore-syntax"></a>

```
RESTORE
SOURCE ( TARGET LOCATION ) 
INCLUDE ( DSN )
[ EXCLUDE ( DSN ) ]
[ CANCEL | IGNORE ]
[ REPLACE]
```

#### 필수 파라미터
<a name="mdfutil-restore-requiredparam"></a>

RESTORE의 필수 파라미터는 다음과 같습니다.
+ `SYSPRINT DD NAME` - 추가 로깅 정보를 포함하기 위해 사용합니다.
+ `SOURCE` - 소스 위치입니다. 다음 중 하나일 수 있습니다.
  + 덤프 위치의 전체 경로
  + **M2DFUTILS\$1BASE\$1LOC** 변수에 정의된 위치에 생성된 하위 디렉터리 이름
+ `INCLUDE` - 이름이 지정된 단일 DSNAME 또는 유효한 메인프레임 DSN 검색 문자열
+ `EXCLUDE` - 이름이 지정된 단일 DSNAME 또는 유효한 메인프레임 DSN 검색 문자열

#### 선택적 파라미터
<a name="mdfutil-restore-optionalparam"></a>
+ CANCEL - 오류가 있으면 취소합니다. 처리된 파일은 유지됩니다.
+ (기본값) IGNORE - 모든 오류를 무시하고 종료될 때까지 처리합니다.
+ REPLACE - 복원 중인 파일이 이미 카탈로그화되어 있고 카탈로그 레코드가 동일한 경우 카탈로그화된 파일을 교체합니다.

## 샘플 JCL
<a name="mdfutil-sample-jcls"></a>

 **DUMP 작업**

이 작업을 수행하면 `TESTDUMP`라는 하위 디렉터리가 생성됩니다. 이는 **M2DFUTILS\$1BASE\$1LOC** 변수로 지정된 기본 백업 위치입니다. `M2DFUTILS.TESTDUMP`라는 이름의 백업용 PDS 라이브러리를 생성합니다. 내보낸 카탈로그 데이터는 `CATDUMP.DAT`라는 백업 디렉터리의 행 순차 파일에 저장됩니다. 선택한 모든 파일이 이 백업 디렉터리에 복사됩니다.

```
//M2DFDMP JOB 'M2DFDMP',CLASS=A,MSGCLASS=X
//STEP001  EXEC PGM=M2DFUTIL
//SYSPRINT DD DSN=TESTDUMP.SYSPRINT,
//        DISP=(NEW,CATLG,DELETE),
//        DCB=(RECFM=LSEQ,LRECL=256)
//SYSIN    DD *
DUMP TARGET(TESTDUMP)               -
     INCLUDE(TEST.FB.FILE*.ABC)     -
 CANCEL
/*
//
```

 **DELETE 작업**

이 작업은 카탈로그에서 INCLUDE 파라미터와 일치하는 모든 파일을 삭제합니다.

```
/M2DFDEL JOB 'M2DFDEL',CLASS=A,MSGCLASS=X
//STEP001  EXEC PGM=M2DFUTIL
//SYSPRINT DD DSN=TESTDEL.SYSPRINT,
//        DISP=(NEW,CATLG,DELETE),
//        DCB=(RECFM=LSEQ,LRECL=256)
//SYSPRINT DD SYSOUT=A
//SYSIN    DD *
  DELETE                               -
     INCLUDE(TEST.FB.FILE*.ABC)        -
 CANCEL
/*
 //
```

 **RESTORE 작업**

이 작업은 INCLUDE 파라미터와 일치하는 파일을 `TESTDUMP` 백업 위치에서 복원합니다. 카탈로그화된 파일이 CATDUMP 내보내기에 있는 파일과 동일하고 REPLACE 옵션이 지정된 경우 카탈로그화된 파일이 교체됩니다.

```
//M2DFREST JOB 'M2DFREST',CLASS=A,MSGCLASS=X
//STEP001  EXEC PGM=M2DFUTIL
////SYSPRINT DD DSN=TESTREST.SYSPRINT,
//        DISP=(NEW,CATLG,DELETE),
//        DCB=(RECFM=LSEQ,LRECL=256)
//SYSPRINT DD SYSOUT=A
//SYSIN    DD *
RESTORE SOURCE(TESTDUMP)               -
     INCLUDE(TEST.FB.FILE*.ABC)        -
 IGNORE
 REPLACE
/*
//
```

# M2RUNCMD 배치 유틸리티
<a name="m2runcmd"></a>

배치 유틸리티 프로그램인 M2RUNCMD를 사용하여 터미널 또는 명령 프롬프트에서 실행하는 대신 JCL에서 직접 Rocket Software(이전 Micro Focus) 명령, 스크립트 및 시스템 호출을 실행할 수 있습니다. 명령의 출력은 배치 작업의 스풀 로그에 기록됩니다.

**Topics**
+ [지원하는 플랫폼](#m2runcmd-platforms)
+ [Amazon EC22에서 메인프레임 현대화 런타임을 위한 M2RUNCMD 구성(AppStream 2.0 포함) AWS](#m2runcmd-configure)
+ [샘플 JCL](#m2runcmd-sample-jcls)

## 지원하는 플랫폼
<a name="m2runcmd-platforms"></a>

다음 플랫폼에서 M2RUNCMD를 사용할 수 있습니다.
+ Rocket Software 런타임(Amazon EC2)
+  Rocket Software Enterprise Developer(ED) 및 Rocket Software Enterprise Server(ES) 제품의 모든 변형입니다.

## Amazon EC22에서 메인프레임 현대화 런타임을 위한 M2RUNCMD 구성(AppStream 2.0 포함) AWS
<a name="m2runcmd-configure"></a>

마이그레이션된 애플리케이션이 Amazon EC2의 AWS Mainframe Modernization 런타임에서 실행 중인 경우 다음과 같이 M2RUNCMD를 구성합니다.
+ 배치 유틸리티의 바이너리 위치를 포함하도록 [Micro Focus JES 프로그램 경로](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/index.html?t=GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html)를 변경하세요. 여러 경로를 지정해야 하는 경우 Linux에서는 콜론(:)을 사용하여 경로를 구분하고 Windows에서는 세미콜론(;)을 사용하여 경로를 구분합니다.
  + Linux: `/opt/aws/m2/microfocus/utilities/64bit`
  + Windows(32비트): `C:\AWS\M2\MicroFocus\Utilities\32bit`
  + Windows(64비트): `C:\AWS\M2\MicroFocus\Utilities\64bit`

## 샘플 JCL
<a name="m2runcmd-sample-jcls"></a>

다음 샘플 JCL 중 하나를 사용하여 설치를 테스트할 수 있습니다.

 **RUNSCRL1.jcl**

이 샘플 JCL은 스크립트를 생성하여 실행합니다. 첫 번째 단계는 `/tmp/TEST_SCRIPT.sh`라는 스크립트를 생성하고 `SYSUT1` 인스트림 데이터의 내용을 포함합니다. 두 번째 단계에서는 실행 권한을 설정하고 첫 번째 단계에서 만든 스크립트를 실행합니다. 두 번째 단계만 수행하여 이미 존재하는 Rocket 소프트웨어 및 시스템 명령을 실행하도록 선택할 수도 있습니다.

```
//RUNSCRL1 JOB 'RUN SCRIPT',CLASS=A,MSGCLASS=X,TIME=1440
//*
//*
//*-------------------------------------------------------------------*
//*  CREATE SCRIPT (LINUX)                                           
//*-------------------------------------------------------------------*
//*
//STEP0010 EXEC PGM=IEBGENER
//*
//SYSPRINT DD SYSOUT=*
//SYSIN    DD DUMMY
//*
//SYSUT1   DD *
#!/bin/bash

set -x

## ECHO PATH ENVIRONMNET VARIABLE
echo $PATH

## CLOSE/DISABLE VSAM FILE
casfile -r$ES_SERVER -oc  -ed -dACCTFIL

## OPEN/ENABLE VSAM FILE
casfile -r$ES_SERVER -ooi -ee -dACCTFIL

exit $?
/*
//SYSUT2   DD DSN=&&TEMP,
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(RECFM=LSEQ,LRECL=300,DSORG=PS,BLKSIZE=0)
//*MFE: %PCDSN='/tmp/TEST_SCRIPT.sh'
//*
//*-------------------------------------------------------------------*
//*   RUN SCRIPT (LINUX)                                              *
//*-------------------------------------------------------------------*
//*
//STEP0020 EXEC PGM=RUNCMD
//*
//SYSOUT  DD  SYSOUT=*
//* 
//SYSIN   DD *
*RUN SCRIPT
 sh /tmp/TEST_SCRIPT.sh
/*
//
```

 **SYSOUT**

실행된 명령 또는 스크립트의 출력이 `SYSOUT` 로그에 기록됩니다. 수행된 각 명령에 대해 명령, 출력 및 반환 코드가 표시됩니다.

```
************ CMD Start ************   
                                                                                    
CMD_STR: sh /tmp/TEST_SCRIPT.sh                                                                                              
CMD_OUT:                                                                                                                                                                                                                             
+ echo /opt/microfocus/EnterpriseServer/bin:/sbin:/bin:/usr/sbin:/usr/bin    
/opt/microfocus/EnterpriseServer/bin:/sbin:/bin:/usr/sbin:/usr/bin           
+ casfile -rMYDEV -oc -ed -dACCTFIL                                                                       
-Return Code:   0                                                                                                         
Highest return code:    0                                                                                                 
+ casfile -rMYDEV -ooi -ee -dACCTFIL                                                                     
-Return Code:   8                                                                                                         
Highest return code:    8                                                                                                 
+ exit 8                                                                                                                  

CMD_RC=8                                                                                                                  

************  CMD End  ************
```

 **RUNCMDL1.jcl**

이 샘플 JCL은 RUNCMD를 사용하여 여러 명령을 실행합니다.

```
//RUNCMDL1 JOB 'RUN CMD',CLASS=A,MSGCLASS=X,TIME=1440
//*
//*
//*-------------------------------------------------------------------*
//*   RUN SYSTEM COMMANDS                                             *
//*-------------------------------------------------------------------*
//*
//STEP0001 EXEC PGM=RUNCMD
//*
//SYSOUT  DD  SYSOUT=*
//* 
//SYSIN   DD *
*LIST DIRECTORY
 ls
*ECHO PATH ENVIRONMNET VARIABLE
 echo $PATH
/*
//
```