

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

# 3단계: 스크립트를 실행할 환경 설정
<a name="migrating-to-systems-manager-script-parameters"></a>

다음 명령을 사용하여 스크립트를 실행할 환경을 설정합니다.

```
pipenv install -r requirements.txt
pipenv shell
```

**참고**  
 현재 스크립트는 Application Manager에서 단일 계층 애플리케이션만 프로비저닝할 수 있습니다. 예를 들어 동일한 스택의 두 계층에 대해 스크립트를 두 번 실행하면 이 스크립트는 Application Manager에서 서로 다른 두 개의 애플리케이션을 만듭니다.

환경을 설정한 후 스크립트 파라미터를 검토하세요. `python3 stack_exporter.py --help`명령을 실행하여 마이그레이션 스크립트에 사용할 수 있는 옵션을 볼 수 있습니다.


****  

| 파라미터 | 설명 | 필수 | Type | 기본값  | 
| --- | --- | --- | --- | --- | 
| --layer-id | 이 OpsWorks 계층 ID에 대한 CloudFormation 템플릿을 내보냅니다. | 예 | 문자열 |  | 
| --region | OpsWorks 스택의 AWS 리전입니다. OpsWorks 스택 리전과 API 엔드포인트 리전이 다른 경우 스택 리전을 사용하세요. OpsWorks 스택의 다른 리소스 부분(예: EC2 인스턴스 및 서브넷)과 동일한 리전입니다. | 아니요 | 문자열 | us-east-1 | 
| --provision-application | 기본적으로 스크립트는 CloudFormation 템플릿에서 내보낸 애플리케이션을 프로비저닝합니다. 이 파라미터를 값이 FALSE인 스크립트에 전달하면 CloudFormation 템플릿의 프로비저닝을 건너뛸 수 있습니다. | 아니요 | 부울 | TRUE | 
| --launch-template | 이 파라미터는 기존 시작 템플릿을 사용할지 또는 새 시작 템플릿을 생성할지 정의합니다. 권장 인스턴스 속성을 사용하거나 온라인 인스턴스와 일치하는 인스턴스 속성을 사용하는 새 시작 템플릿을 만들 수 있습니다. 유효한 값으로는 다음이 포함됩니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/opsworks/latest/userguide/migrating-to-systems-manager-script-parameters.html)  | 아니요 | 문자열 | RECOMMENDED | 
| --system-updates |  인스턴스 부팅 시 커널 및 패키지 업데이트 수행 여부를 정의합니다. 유효한 값으로는 다음이 포함됩니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/opsworks/latest/userguide/migrating-to-systems-manager-script-parameters.html)  | 아니요 | 문자열 | ALL\$1UPDATES | 
| --http-username | 사용자 지정 쿡북이 포함된 HTTP 아카이브를 인증하는 데 사용되는 사용자 이름을 저장하는 Systems Manager SecureString 매개변수의 이름입니다. | 아니요 | 문자열 |  | 
| --http-password | 사용자 지정 쿡북이 포함된 HTTP 아카이브를 인증하는 데 사용되는 비밀번호를 저장하는 Systems Manager SecureString 매개변수의 이름입니다. | 아니요 | 문자열 |  | 
| --repo-private-key | 사용자 지정 쿡북이 포함된 저장소를 인증하는 데 사용되는 SSH 키를 저장하는 Systems Manager SecureString 매개 변수의 이름입니다. 리포지토리가 GitHub에 있는 경우 새 Ed25519 SSH 키를 생성해야 합니다. 새 Ed25519 SSH 키를 생성하지 않으면 GitHub 리포지토리에 대한 연결이 실패합니다. | 아니요 | 문자열 |  | 
| --lb-type | 기존 로드 밸런서를 마이그레이션할 때 생성할 로드 밸런서의 유형(있는 경우) 유효한 값으로는 다음이 포함됩니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/opsworks/latest/userguide/migrating-to-systems-manager-script-parameters.html)  | 아니요 | 문자열 | ALB | 
| --lb-access-logs-path | 기존 S3 버킷의 경로와 로드 밸런서 액세스 로그를 저장하기 위한 접두사. S3 버킷 및 로드 밸런서는 동일한 리전에 있어야 합니다. 값을 제공하지 않고 --lb-type 파라미터 값이 None로 설정된 경우 스크립트는 새 S3 버킷과 접두사를 생성합니다. 이 접두사에 적합한 버킷 정책이 있는지 확인하세요. | 아니요 | 문자열 |  | 
| --enable-instance-protection | TRUE로 설정하면 스크립트가 Auto Scaling에 대한 사용자 지정 종료 정책(Lambda 함수)을 생성합니다. protected\$1instance 태그가 있는 EC2 인스턴스는 스케일 인 이벤트로부터 보호됩니다. 스케일 인 이벤트로부터 보호하려는 각 EC2 인스턴스에 protected\$1instance 태그를 추가합니다. | 아니요 | 부울 | FALSE | 
| --command-logs-bucket | AWS ApplyChefRecipe및 MountEBSVolumes 로그를 저장할 기존 S3 버킷의 이름입니다. 값을 제공하지 않으면 스크립트는 새 S3 버킷을 생성합니다. | 아니요 | 문자열 | aws-opsworks-application-manager-logs-account-id | 
| --custom-json-bucket | 사용자 지정 JSON을 저장할 기존 S3 버킷의 이름입니다. 값을 제공하지 않으면 스크립트는 새 S3 버킷을 생성합니다. | 아니요 | 문자열 | aws-apply-chef-application-manager-transition-data-account-id | 

**참고**:
+ 프라이빗 GitHub 리포지토리를 사용하는 경우 SSH용 새 `Ed25519` 호스트 키를 생성해야 합니다. 이는 GitHub가 SSH에서 지원되는 키를 변경하고 암호화되지 않은 Git 프로토콜을 제거했기 때문입니다. `Ed25519` 호스트 키에 대한 자세한 내용은 GitHub 블로그 게시물 [GitHub의 Git 프로토콜 보안 개선을](https://github.blog/2021-09-01-improving-git-protocol-security-github/) 참조하세요. 새 `Ed25519` 호스트 키를 생성한 후 SSH 키에 대한 Systems Manager `SecureString` 매개변수를 생성하고 `SecureString` 매개변수 이름을 `--repo-private-key` 매개변수 값으로 사용합니다. Systems Manager `SecureString` 파라미터 생성 방법에 대한 자세한 내용은 *AWS Systems Manager 사용 설명서*의 [SecureString 파라미터 (AWS CLI) 생성](https://docs.aws.amazon.com/systems-manager/latest/userguide/param-create-cli.html#param-create-cli-securestring) 또는 [Systems Manager 파라미터 생성(콘솔)](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-create-console.html)을 참조하세요.
+ `--http-username`, `--http-password` 및 `--repo-private-key` 파라미터는 Systems Manager `SecureString` 파라미터의 이름입니다. 마이그레이션 스크립트는 `AWS-ApplyChefRecipes` 문서를 실행할 때 이러한 매개 변수를 사용합니다.
+ `--http-username` 파라미터의 값은 `--http-password` 파라미터의 값도 지정해야 합니다. 
+  `--http-username` 파라미터의 값은 `--http-password` 파라미터의 값도 지정해야 합니다. 
+ `--http-password`과 `--repo-private-key` 모두에 값을 설정하지 마세요. SSH 키 (`--repo-private-key`)의 Systems Manager `SecureString` 매개 변수 이름 또는 리포지토리 사용자 이름(`--http-username`) 및 암호(`--http-password`)를 제공하세요.