

これは新しい 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) – `WaitCondition` または `CreationPolicy` でシグナルを送信するために使用し、前提となるリソースやアプリケーションの準備ができたときに、スタックの他のリソースを同期できるようにします。
+  [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 AMI の最新バージョンにプリインストールされており、Amazon Linux をベースとして使用する ECS に最適化されたイメージなど、最適化された AMI は対象外です。

## その他のプラットフォーム用パッケージのダウンロード
<a name="cfn-helper-scripts-reference-downloads"></a>

<a name="cfn-helper-scripts-reference-downloads"></a>Amazon Linux AMI イメージと Microsoft Windows (2008 以降) を除く Linux/Unix ディストリビューション用に、`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)」を参照してください。


| File format (ファイル形式) | 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 用のインストールを完了するには、シンボリックリンクを作成する必要があります。 `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)」を参照してください。