

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) 참조하세요.

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

# 자습서: WorkSpaces 애플리케이션에서 메인프레임 개발자에 AWS 변환 사용
<a name="tutorial-ba-developer"></a>

이 자습서에서는 WorkSpaces 애플리케이션의 메인프레임 개발자용 AWS 변환에 액세스하고 이를 샘플 애플리케이션과 함께 사용하여 기능을 사용해 보는 방법을 보여줍니다. 이 자습서를 마치면 자체 애플리케이션에 동일한 단계를 사용할 수 있습니다.

**Topics**
+ [1단계: 데이터베이스 생성](#tutorial-ba-developer-create-db)
+ [2단계: 환경에 액세스](#tutorial-ba-developer-access-env)
+ [3단계: 런타임 설정](#tutorial-ba-developer-set-up-runtime)
+ [4단계: Eclipse IDE 시작](#tutorial-ba-developer-start-eclipse)
+ [5단계: Maven 프로젝트 설정](#tutorial-ba-developer-set-up-maven)
+ [6단계: Tomcat 서버 구성](#tutorial-ba-developer-config-tomcat)
+ [7단계: Tomcat에 배포](#tutorial-ba-developer-deploy-tomcat)
+ [8단계: JICS 데이터베이스 생성](#tutorial-ba-developer-create-jics)
+ [8단계: 애플리케이션 시작 및 테스트](#tutorial-ba-developer-test-app)
+ [10단계: 애플리케이션 디버그](#tutorial-ba-developer-debug)
+ [리소스 정리](#tutorial-ba-developer-clean)

## 1단계: 데이터베이스 생성
<a name="tutorial-ba-developer-create-db"></a>

이 단계에서는 Amazon RDS를 사용하여 관리형 PostgreSQL 데이터베이스를 생성합니다. 이 데이터베이스는 데모 애플리케이션이 구성 정보를 저장하는 데 사용합니다.

1. Amazon RDS 콘솔을 엽니다.

1. **데이터베이스 > 데이터베이스 생성**을 선택합니다.

1. **표준 생성 > PostgreSQL**을 선택하고 기본 버전을 그대로 둔 다음 **프리 티어**를 선택합니다.

1. DB 인스턴스 식별자를 선택합니다.

1. **보안 인증 설정**에서 ** AWS Secrets Manager에서 마스터 보안 인증 관리**를 선택합니다. 자세한 내용은 *Amazon RDS 사용 설명서*의 [Amazon RDS 및 AWS Secrets Manager을 사용한 암호 관리](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html)를 참조하세요.

1. VPC가 WorkSpaces 애플리케이션 인스턴스에 사용하는 것과 동일한지 확인합니다. 관리자에게 이 값을 요청할 수 있습니다.

1. **VPC 보안 그룹**의 경우 **신규 생성**을 선택합니다.

1. **퍼블릭 액세스**를 **예**로 설정합니다.

1. 다른 기본값을 그대로 둡니다. 이 값을 검토하세요.

1. **데이터베이스 생성**를 선택합니다.

인스턴스에서 데이터베이스 서버에 액세스할 수 있게 하려면 Amazon RDS에서 데이터베이스 서버를 선택합니다. **연결 및 보안**에서 데이터베이스 서버의 VPC 보안 그룹을 선택합니다. 이 보안 그룹은 이전에 사용자를 위해 생성되었으므로 **RDS 관리 콘솔로 생성**의 설명과 비슷한 설명이 있어야 합니다. **작업 > 인바운드 규칙 편집**을 선택하고 **규칙 추가**를 선택한 다음 **PostgreSQL** 유형의 규칙을 생성합니다. 규칙 소스의 경우 보안 그룹 **기본값을** 사용합니다. 소스 필드에 **소스** 이름을 입력한 다음 제안된 ID를 수락할 수 있습니다. 마지막으로 **규칙 저장**을 선택합니다.

## 2단계: 환경에 액세스
<a name="tutorial-ba-developer-access-env"></a>

이 단계에서는 WorkSpaces 애플리케이션의 메인프레임 개발 환경을 위한 AWS 변환에 액세스합니다.

1. WorkSpaces 애플리케이션 인스턴스에 액세스하는 적절한 방법은 관리자에게 문의하십시오. 가능한 클라이언트 및 구성에 대한 일반적인 내용은 Amazon [WorkSpaces 애플리케이션 관리 안내서의 WorkSpaces 애플리케이션 액세스 방법 및 클라이언트](https://docs.aws.amazon.com/appstream2/latest/developerguide/clients-access-methods-user.html)를 참조하세요. *Amazon WorkSpaces * 최상의 경험을 위해 네이티브 클라이언트를 사용하는 것을 고려해 보세요.

1. WorkSpaces 애플리케이션에서 **데스크톱**을 선택합니다.

## 3단계: 런타임 설정
<a name="tutorial-ba-developer-set-up-runtime"></a>

이 단계에서는 메인프레임 런타임에 대한 AWS 변환을 설정합니다. 런타임을 처음 실행할 때 설정해야 하며 런타임 업그레이드 알림을 받으면 다시 설정해야 합니다. 이 단계를 수행하면 `.m2` 폴더가 채워집니다.

1. 메뉴 막대에서 **애플리케이션**을 선택한 다음 **터미널**을 선택합니다.

1. 다음 명령을 입력합니다.

   ```
   ~/_install-velocity-runtime.sh
   ```

## 4단계: Eclipse IDE 시작
<a name="tutorial-ba-developer-start-eclipse"></a>

이 단계에서는 Eclipse IDE를 시작하고 작업 영역을 만들려는 위치를 선택합니다.

1. WorkSpaces 애플리케이션에서 도구 모음의 애플리케이션 시작 아이콘을 선택한 다음 **Eclipse JEE**를 선택합니다.  
![\[WorkSpaces 애플리케이션의 도구 모음에서 애플리케이션 시작 아이콘. Eclipse JEE가 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/aas-ba-eclipse.png)

1. 시작 프로그램이 열리면 작업 영역을 만들려는 위치를 입력하고 **시작**을 선택합니다.  
![\[AWS Transform for mainframe WorkSpaces 애플리케이션의 Eclipse IDE 시작 관리자. 작업 영역이 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-launcher.png)

선택적으로 다음과 같이 명령줄에서 Eclipse를 시작할 수 있습니다.

```
~/eclipse &
```

## 5단계: Maven 프로젝트 설정
<a name="tutorial-ba-developer-set-up-maven"></a>

이 단계에서는 Planets 데모 애플리케이션에 사용할 용도로만 Maven 프로젝트를 가져옵니다.

1. [PlanetsDemo-pom.zip](https://d3lkpej5ajcpac.cloudfront.net/appstream/bluage/developer-ide/PlanetsDemo/PlanetsDemo-pom.zip)를 홈 폴더에 업로드하세요. 네이티브 클라이언트 “내 파일” 기능을 사용하여 이 작업을 수행할 수 있습니다.

1. `unzip` 명령줄 도구를 사용하여 파일을 추출합니다.

1. 압축이 풀린 폴더 내부를 탐색하고 텍스트 편집기에서 `pom.xml` 프로젝트의 루트를 엽니다.

1. 메인프레임 런타임에 대해 설치된 AWS 변환과 일치하도록 `gapwalk.version` 속성을 편집합니다.

   설치된 버전이 확실하지 않은 경우 터미널에서 다음 명령을 실행합니다.

   ```
   cat ~/runtime-version.txt
   ```

   이 명령은 현재 사용 가능한 런타임 버전(예:`3.1.0-b3257-dev`)을 인쇄합니다.
**참고**  
`gapwalk.version`에 `-dev` 접미사를 포함시키지 마세요. 예를 들어 유효한 값은 `<gapwalk.version>3.1.0-b3257</gapwalk.version>`입니다.

1. Eclipse에서 **파일**을 선택한 다음 **가져오기**를 선택합니다. **가져오기** 대화 상자 창에서 **Maven**을 확장하고 **기존 Maven 프로젝트**를 선택합니다. **다음**을 선택합니다.

1. **Maven 프로젝트 가져오기**에서 추출한 파일의 위치를 입력하고 **완료**를 선택합니다.

   다음 팝업은 무시해도 됩니다. Maven은 프로젝트의 Angular(\$1-web) 부분을 빌드하기 위해 `node.js`의 로컬 사본을 다운로드합니다.  
![\[node.js 누락에 대한 경고 메시지입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-node-warning.png)

   빌드가 끝날 때까지 기다리세요. **진행률** 보기에서 빌드를 팔로우할 수 있습니다.

1. Eclipse에서 프로젝트를 선택하고 **다음으로 실행**을 선택합니다. 그 다음 **Maven 설치**를 선택합니다. Maven 설치가 성공하면 `PlanetsDemoPom/PlanetsDemo-web/target/PlanetsDemo-web-1.0.0.war` 아래에 `war` 파일이 생성됩니다.

## 6단계: Tomcat 서버 구성
<a name="tutorial-ba-developer-config-tomcat"></a>

이 단계에서는 컴파일된 애플리케이션을 배포하고 시작하는 Tomcat 서버를 구성합니다.

1. Eclipse에서 **창 > 보기 표시 > 서버**를 선택하여 **서버** 보기를 표시합니다.  
![\[AWS 서버 보기가 선택된 메인프레임 Eclipse에 대한 변환입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-servers.png)

1. 사용할 수 있는 **서버 없음을 선택합니다. 새 서버를 만들려면 이 링크를 클릭하세요...**. **새 서버** 마법사가 나타납니다. 마법사의 **서버 유형 선택** 필드에 **tomcat v9**를 입력하고 **Tomcat v9.0 서버**를 선택합니다. 그리고 **다음**을 선택합니다.  
![\[새 서버 대화 상자입니다. Tomcat v9.0 서버가 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-new-server.png)

1. **찾아보기**를 선택하고 홈 폴더의 루트에 있는 **tomcat** 폴더를 선택합니다. JRE를 기본값으로 두고 **완료**를 선택합니다.

   작업 영역에 **서버** 프로젝트가 생성되고 이제 **서버** 보기에서 Tomcat v9.0 서버를 사용할 수 있습니다. 컴파일된 애플리케이션이 배포되고 시작되는 곳은 다음과 같습니다.  
![\[AWS 새 Tomcat 서버가 나열된 메인프레임 Eclipse 서버 탭의 변환.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-server-added.png)

## 7단계: Tomcat에 배포
<a name="tutorial-ba-developer-deploy-tomcat"></a>

이 단계에서는 Planets 데모 애플리케이션을 Tomcat 서버에 배포하여 애플리케이션을 실행할 수 있습니다.

1. `PlanetsDemo-web` 파일을 선택하고 **다음으로 실행 > Maven 설치**를 선택합니다. npm으로 컴파일된 프론트엔드가.war로 제대로 컴파일되고 Eclipse에서 인식되도록 하려면 `PlanetsDemo-web`을 다시 선택하고 **새로 고침**을 선택합니다.

1. [PlanetsDemo-runtime.zip](https://d3lkpej5ajcpac.cloudfront.net/appstream/bluage/developer-ide/PlanetsDemo/PlanetsDemo-runtime.zip) 파일을 인스턴스에 업로드하고 액세스 가능한 위치에서 파일의 압축을 풉니다. 이렇게 하면 데모 애플리케이션이 필요한 구성 폴더와 파일에 액세스할 수 있습니다.

1. `PlanetsDemo-runtime/tomcat-config`의 내용을 Tomcat 서버용으로 만든 `Servers/Tomcat v9.0...` 하위 폴더에 복사합니다.  
![\[AWS 메인프레임 Eclipse Tomcat v9.0 하위 폴더와 여기에 포함된 파일을 변환합니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-tomcat-subfolder.png)

1. `tomcat v9.0` 서버 보기에서 서버 항목을 엽니다. 서버 속성 편집기가 나타납니다.  
![\[서버 속성 편집기. 개요 탭이 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-server-properties-editor.png)

1. 다음과 같이 **개요** 탭에서 **시간 제한** 값을 시작의 경우 450초, 중지의 경우 150초로 늘립니다.  
![\[시작 시간 제한 값을 450초로 설정했습니다. 중지 시간 제한 값이 150초로 설정되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-timeout-values.png)

1. **시작 구성 열기**를 선택합니다. 그러면 마법사가 표시됩니다. 마법사에서 **인수** 폴더로 이동한 다음 **작업 디렉터리**에 대해 **기타**를 선택합니다. **파일 시스템**을 선택하고 이전에 압축을 푼 `PlanetsDemo-runtime` 폴더로 이동합니다. 이 폴더에는 **config**라는 직접 하위 폴더가 있어야 합니다.  
![\[기타 필드에 작업 디렉토리가 지정된 구성 편집 대화 상자.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-edit-configuration.png)

1. 서버 속성 편집기의 **모듈** 탭을 선택하고 다음과 같이 변경합니다.
   + **웹 모듈 추가**를 선택하고 `PlanetsDemo-service`를 추가합니다.
   + **외부 웹 모듈 추가**를 선택합니다. **웹 모듈 추가** 대화 창이 나타납니다. 다음과 같이 변경합니다.
     + **문서 베이스**에서 **찾아보기**를 선택하고 `~/webapps/gapwalk-application...war`로 이동합니다
     + **경로**에 `/gapwalk-application`를 입력합니다.
   + 확인을 선택합니다.
   + **외부 웹 모듈 추가**를 다시 선택하고 다음과 같이 변경합니다.
     + **문서 베이스**의 경우 프런트엔드 .war(`PlanetsDemo-web/target`에 있음)로 경로를 입력합니다
     + **경로**에 `/demo`를 입력합니다
   + 확인을 선택합니다.
   + 편집기 수정 내용을 저장합니다(Ctrl \$1 S).

편집기 내용은 다음과 비슷해야 합니다.

![\[모듈이 나열된 Tomcat 서버 속성의 웹 모듈 탭.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-web-modules.png)


## 8단계: JICS 데이터베이스 생성
<a name="tutorial-ba-developer-create-jics"></a>

이 단계에서는 [1단계: 데이터베이스 생성](#tutorial-ba-developer-create-db)에서 생성한 데이터베이스에 연결합니다.

1. WorkSpaces 애플리케이션 인스턴스에서 터미널에서 다음 명령을 실행하여를 시작합니다. `pgAdmin` 

   ```
   ./pgadmin-start.sh 
   ```

1. 이메일 주소와 암호를 로그인 식별자로 선택하세요. 제공된 URL(일반적으로 http://127.0.0.1:5050)을 기록해 둡니다. 인스턴스에서 Google Chrome을 실행하고 URL을 복사하여 브라우저에 붙여넣은 다음 식별자를 사용하여 로그인합니다.  
![\[pgAdmin 로그인 대화 상자입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-pgadmin-login.png)

1. 로그인한 후 **신규 서버 추가**를 선택하고 다음과 같이 이전에 만든 데이터베이스에 대한 연결 정보를 입력합니다.  
![\[pgAdmin 서버 등록 대화 상자. 연결 탭이 선택되었습니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-pgadmin-register-server.png)

1. 데이터베이스 서버에 연결할 때 **개체 > 만들기 > 데이터베이스**를 사용하여 **jics**라는 새 데이터베이스를 생성합니다.

1. 데모 앱에서 사용한 데이터베이스 연결 정보를 편집합니다. 이 정보는 `PlanetsDemo-runtime/config/application-main.yml`에 정의되어 있습니다. `jicsDs` 항목을 검색합니다. Amazon RDS 콘솔에서 `username` 및 `password`에 대한 값을 검색하고 해당 데이터베이스로 이동하려면 해당 데이터베이스로 이동하세요. **구성** 탭의 **Master Credentials ARN**에서 **Secrets Manager에서 관리**를 선택합니다. 그런 다음 Secrets Manager 콘솔의 암호에서 **암호 값 검색**을 선택합니다.

## 8단계: 애플리케이션 시작 및 테스트
<a name="tutorial-ba-developer-test-app"></a>

이 단계에서는 테스트할 수 있도록 Tomcat 서버와 데모 애플리케이션을 시작합니다.

1. Tomcat 서버와 이전에 배포한 애플리케이션을 시작하려면 서버 보기에서 서버 항목을 선택하고 **시작**을 선택합니다. 시작 로그를 표시하는 콘솔이 나타납니다.

1. 서버 보기에서 **서버** 상태를 확인하거나 **콘솔에서 [xxx] 밀리초 내에 서버 시작** 메시지가 표시될 때까지 기다리세요. 서버가 시작된 후 gapwalk-applicatio이 제대로 배포되었는지 확인합니다. 이렇게 하려면 Google Chrome 브라우저에서 **http://localhost:8080/gapwalk-application** URL에 액세스하세요. 다음과 같은 모양이어야 합니다.  
![\[jics 애플리케이션이 실행 중임을 보여주는 확인 메시지입니다.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-jics-run-confirm.png)

1. Google Chrome의 http://localhost:8080/demo에서 배포된 애플리케이션 프론트엔드에 액세스할 수 있습니다. 다음 **트랜잭션 시작** 페이지가 표시되어야 합니다.  
![\[JICS 트랜잭션 시작 관리자 페이지.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-jics-launcher.png)

1. 애플리케이션 트랜잭션을 시작하려면 입력 필드에 `PINQ`를 입력하고 **실행**을 선택하거나 Enter 키를 누릅니다.

   데모 앱 화면이 나타나야 합니다.  
![\[삽입 모드의 PlanetsDemo 애플리케이션 화면.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-demo-app-screen.png)

1. 해당 필드에 행성 이름을 입력하고 Enter 키를 누릅니다.  
![\[행성 이름 필드에 지구가 입력된 PlanetsDemo 애플리케이션 화면.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-demo-with-data.png)

## 10단계: 애플리케이션 디버그
<a name="tutorial-ba-developer-debug"></a>

이 단계에서는 표준 Eclipse 디버깅 기능을 사용하여 테스트합니다. 이러한 기능은 현대화된 애플리케이션에서 작업할 때 사용할 수 있습니다.

1. 기본 서비스 클래스를 열려면 Ctrl \$1 Shift \$1 T를 누른 다음 `PlanetsinqProcessImpl`를 입력합니다.  
![\[PlanetsinqProcessImpl이 입력된 Eclipse 열기 유형 대화 상자 창.\]](http://docs.aws.amazon.com/ko_kr/m2/latest/userguide/images/ba-eclipse-open-type.png)

1. `searchPlanet` 메서드로 이동한 다음 중단점을 입력하세요.

1. 서버 이름을 선택하고 **디버그에서 재시작**을 선택합니다.

1. 그런 다음 이전 단계를 반복합니다. 즉, 애플리케이션에 접속하여 행성 이름을 입력하고 Enter 키를 누릅니다.

   Eclipse는 `searchPlanet` 메서드에서 애플리케이션을 중지합니다. 이제 검사할 수 있습니다.

## 리소스 정리
<a name="tutorial-ba-developer-clean"></a>

이 자습서에 사용할 때 생성한 리소스가 더 이상 필요하지 않은 경우 삭제하여 추가 요금이 발생하지 않도록 하세요. 다음 단계를 완료합니다.
+ Planets 애플리케이션이 아직 실행 중이면 중지하세요.
+ [1단계: 데이터베이스 생성](#tutorial-ba-developer-create-db)에서 생성한 데이터베이스를 삭제합니다. 자세한 내용은 [DB 인스턴스 삭제](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_DeleteInstance.html)를 참조하세요.