

새로운 *CloudFormation 템플릿 참조 안내서*입니다. 북마크와 링크를 업데이트하세요. CloudFormation을 시작하는 데 도움이 필요한 경우 [AWS CloudFormation 사용 설명서](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)를 참조하세요.

# CloudFormation 헬퍼 스크립트 참조
<a name="cfn-helper-scripts-reference"></a>

CloudFormation에서는 스택의 일부로 생성한 Amazon EC2 인스턴스에서 소프트웨어를 설치하고 서비스를 시작하는 데 사용할 수 있도록 다음과 같은 Python 헬퍼 스크립트 세트를 제공합니다.
+  [cfn-init](cfn-init.md) - 리소스 메타데이터를 검색 및 해석하고, 패키지를 설치하고, 파일을 생성하고, 서비스를 시작하는 데 사용됩니다.
+  [cfn-signal](cfn-signal.md) - 필수 리소스나 애플리케이션이 준비될 때 스택에서 다른 리소스를 동기화할 수 있도록 `CreationPolicy` 또는 `WaitCondition`에서 신호를 전송하는 데 사용됩니다.
+  [cfn-get-metadata](cfn-get-metadata.md) - 특정 키에 대한 리소스나 경로의 메타데이터를 검색하는 데 사용됩니다.
+  [cfn-hup](cfn-hup.md) - 메타데이터에 대한 업데이트가 있는지 확인하고 변경 사항이 감지된 경우 사용자 지정 후크를 실행하는 데 사용됩니다.

템플릿에서 직접 헬퍼 스크립트를 호출할 수 있습니다. 헬퍼 스크립트는 동일한 템플릿에서 정의한 리소스 메타데이터와 함께 작동합니다. 헬퍼 스크립트는 스택 생성 과정에서 Amazon EC2 인스턴스에서 실행됩니다.

**참고**  
기본적으로 이러한 스크립트는 실행되지 않습니다. 특정 헬퍼 스크립트를 실행하는 호출이 템플릿에 포함되어 있어야 합니다.

**Topics**
+ [Amazon Linux AMI 이미지](#cfn-helper-scripts-reference-amazon-amis)
+ [다른 플랫폼에서 패키지 다운로드](#cfn-helper-scripts-reference-downloads)
+ [헬퍼 스크립트에 대한 권한](#cfn-helper-scripts-reference-permissions)
+ [최신 버전 사용](#cfn-helper-scripts-reference-latest-version)
+ [cfn-init](cfn-init.md)
+ [cfn-signal](cfn-signal.md)
+ [cfn-get-metadata](cfn-get-metadata.md)
+ [cfn-hup](cfn-hup.md)

## Amazon Linux AMI 이미지
<a name="cfn-helper-scripts-reference-amazon-amis"></a>

CloudFormation 헬퍼 스크립트는 부트스트랩 스크립트가 설치된 Amazon Linux AMI 이미지에 사전 설치됩니다.
+ 최신 버전의 Amazon Linux AMI에는 `/opt/aws/bin`에 헬퍼 스크립트가 설치되어 있습니다.
+ 이전 버전의 Amazon Linux AMI의 경우, 헬퍼 스크립트가 포함된 `aws-cfn-bootstrap` 패키지가 Yum 리포지토리에 위치합니다.

**참고**  
헬퍼 스크립트는 Amazon Linux를 기반으로 사용하는 ECS Optimized Image와 같은 최적화 AMI가 아닌 최신 버전의 Amazon Linux AMI에 사전 설치됩니다.

## 다른 플랫폼에서 패키지 다운로드
<a name="cfn-helper-scripts-reference-downloads"></a>

<a name="cfn-helper-scripts-reference-downloads"></a>Amazon Linux AMI 이미지 이외의 Linux/Unix 배포판 및 Microsoft Windows(2008 이상)의 경우에는 `aws-cfn-bootstrap` 패키지를 다운로드할 수 있습니다.

**참고**  
헬퍼 스크립트 버전 2.0–1 이상은 Python 3.4 이상을 지원합니다. 이전 버전의 Python을 지원하는 헬퍼 스크립트가 필요한 경우 [CloudFormation 헬퍼 스크립트 1.4의 릴리스 기록](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/releasehistory-aws-cfn-bootstrap.html#releasehistory-aws-cfn-bootstrap-v1)을 참조하세요.


| 파일 형식 | 다운로드 URL | 
| --- | --- | 
|  TAR.GZ  |  [ https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-latest.tar.gz](https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-latest.tar.gz) Python의 pip를 사용하여 `tar.gz`를 설치합니다. Ubuntu의 경우 설치를 완료하려면 symlink를 생성해야 합니다. `ln -s /<path-to-extracted-tar>/aws-cfn-bootstrap-2.0/init/ubuntu/cfn-hup /etc/init.d/cfn-hup`  | 
|  ZIP  |  [ https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-latest.zip](https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-latest.zip)  | 
|  EXE  |  32비트 Windows: [ https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-latest.exe](https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-latest.exe)  64비트 Windows: [ https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-win64-latest.exe](https://s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-py3-win64-latest.exe)  | 

## 헬퍼 스크립트에 대한 권한
<a name="cfn-helper-scripts-reference-permissions"></a>

기본적으로 헬퍼 스크립트에는 자격 증명이 필요 없기 때문에 `--access-key`, `--secret-key`, `--role` 또는 `--credential-file` 옵션을 사용할 필요가 없습니다. 그러나 자격 증명을 지정하지 않으면 CloudFormation이 스택 멤버십을 확인하고 해당 인스턴스가 속한 스택에 대한 호출 범위를 제한합니다.

옵션 지정을 선택할 경우 다음 중 하나만 지정하는 것이 좋습니다.
+ `--role`
+ `--credential-file`
+ `--access-key`와 `--secret-key`

옵션을 지정할 경우 다양한 헬퍼 스크립트에 필요한 권한을 염두에 두십시오.
+ `cfn-signal`에는 `cloudformation:SignalResource`가 필요합니다.
+ 다른 모든 헬퍼 스크립트에는 `cloudformation:DescribeStackResource`가 필요합니다.

IAM 정책에서 CloudFormation 고유 작업 및 조건 컨텍스트 키를 사용하는 방법에 대한 자세한 내용은 *AWS CloudFormation 사용 설명서*의 [AWS Identity and Access Management를 사용하여 CloudFormation 액세스 제어](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html)를 참조하세요.

## 최신 버전 사용
<a name="cfn-helper-scripts-reference-latest-version"></a>

헬퍼 스크립트는 주기적으로 업데이트됩니다. 헬퍼 스크립트를 사용하는 경우 시작된 인스턴스가 최신 버전의 스크립트를 사용 중인지 확인합니다.
+ 스크립트를 호출하기 전에 템플릿의 `UserData` 속성에 다음 명령을 포함합니다. 이 명령은 최신 버전을 가져오도록 합니다.

  `yum install -y aws-cfn-bootstrap`
+ `yum install` 명령을 포함하지 않고 `cfn-init`, `cfn-signal` 또는 `cfn-get-metadata` 스크립트를 사용하는 경우 다음 명령을 사용해 각 Amazon EC2 Linux 인스턴스에서 스크립트를 수동으로 업데이트해야 합니다.

  `sudo yum install -y aws-cfn-bootstrap`
**참고**  
`sudo yum install -y aws-cfn-bootstrap`을 실행하면 `yum` 리포지토리에서 도우미 스크립트가 설치됩니다.
+ `yum install` 명령을 포함하지 않고 `cfn-hup` 스크립트를 사용하는 경우 다음 명령을 사용해 각 Amazon EC2 Linux 인스턴스에서 스크립트를 수동으로 업데이트해야 합니다.

  `sudo yum install -y aws-cfn-bootstrap`

  `sudo /sbin/service cfn-hup restart`
**참고**  
`sudo yum install -y aws-cfn-bootstrap`을 실행하면 `yum` 리포지토리에서 도우미 스크립트가 설치됩니다.
+ 다른 Linux 버전 또는 다른 플랫폼에서 작업하기 위해 스크립트의 소스 코드를 사용하는데 고유한 트러스트 스토어를 이미 생성한 경우에는 트러스트 스토어도 업데이트된 상태로 유지해야 합니다.

`aws-cfn-bootstrap` 패키지의 버전 이력은 [CloudFormation 헬퍼 스크립트의 릴리스 기록](releasehistory-aws-cfn-bootstrap.md)의 내용을 참조하세요.