Cookie の設定を選択する

当社は、当社のサイトおよびサービスを提供するために必要な必須 Cookie および類似のツールを使用しています。当社は、パフォーマンス Cookie を使用して匿名の統計情報を収集することで、お客様が当社のサイトをどのように利用しているかを把握し、改善に役立てています。必須 Cookie は無効化できませんが、[カスタマイズ] または [拒否] をクリックしてパフォーマンス Cookie を拒否することはできます。

お客様が同意した場合、AWS および承認された第三者は、Cookie を使用して便利なサイト機能を提供したり、お客様の選択を記憶したり、関連する広告を含む関連コンテンツを表示したりします。すべての必須ではない Cookie を受け入れるか拒否するには、[受け入れる] または [拒否] をクリックしてください。より詳細な選択を行うには、[カスタマイズ] をクリックしてください。

cfn-hup

フォーカスモード
cfn-hup - AWS CloudFormation
フィルタビュー

cfn-hup ヘルパーは、リソースメタデータの変更を検出し、変更が検出された場合に、ユーザーが指定した操作を実行するデーモンです。これによって、UpdateStack API アクションを介して、実行中の Amazon EC2 インスタンスに構成を更新できます。

構文

cfn-hup --config|-c config.dir \ --no-daemon \ --verbose|-v

オプション

名前 説明 必須

--config|-c config.dir

cfn-hup スクリプトが cfn-hup.conf および hooks.d ディレクトリを探すパスを指定します。Windows では、デフォルトのパスは system_drive\cfn です。Linux では、デフォルトのパスは /etc/cfn です。

いいえ

--no-daemon

cfn-hup スクリプトを一度実行して終了するには、このオプションを指定します。

いいえ

-v, --verbose

詳細モードを使用するには、このオプションを指定します。

いいえ

cfn-hup.conf 構成ファイル

cfn-hup.conf ファイルは、cfn-hup デーモンのターゲットとなるスタックの名前と AWS 認証情報を格納します。

cfn-hup.conf ファイルは、次の形式を使用します。

[main] stack=<stack-name-or-id>
名前 説明 必須

stack

スタックの名前または ID です。

タイプ: 文字列

あり

credential-file

コマンドラインツールで使用するのと同じ形式の、所有者のみの認証情報ファイルです。

タイプ: 文字列

条件: role パラメータは、このパラメータより優先されます。

いいえ

role

インスタンスに関連付けられた IAM ロールの名前です。

タイプ: 文字列

いいえ

region

スタックを含む AWS リージョンの名前です。

例: us-east-2

いいえ

umask

umask デーモンで使用される cfn-hup

この値は、前に 0 を付けても、付けなくても指定できます。両方の場合も、8 進数として解釈されます (Linux の umask コマンドと同様)。このパラメータは Windows には影響しません。

タイプ : 00777 の 8 進数の整数

デフォルト: 022、バージョン 1.4–22 以上。022 のデフォルト値は、グループとワールド書き込み許可をマスクするため、cfn-hup デーモンによって作成されるファイルは、デフォルトでグループまたはワールドの書き込みができません。バージョン 1.4〜21 以前のデフォルト値は 0 で、何もマスクされません。

いいえ

interval

リソースメタデータへの変更を確認する間隔 (分単位)。

タイプ: 整数

デフォルト: 15

いいえ

verbose

詳細ログ記録を行うかどうかを指定します。

タイプ: ブール

デフォルト: false

いいえ

hooks.conf 設定ファイル

cfn-hup デーモンが定期的に呼び出すユーザーアクションは、hooks.conf 構成ファイルに定義されています。hooks.conf ファイルは、次の形式を使用します。

[hookname] triggers=post.add or post.update or post.remove path=Resources.<logicalResourceId> (.Metadata or .PhysicalResourceId)(.<optionalMetadatapath>) action=<arbitrary shell command> runas=<runas user>

オペレーションが実行されるとき、現在の環境 (cfn-hup が所在する環境) のコピーで実行され、かつ CFN_OLD_METADATA はパスで指定された前のメタデータ値に設定され、CFN_NEW_METADATA は現在の値に設定されます。

フック構成ファイルは cfn-hup デーモンの開始時にのみロードされるため、新しいフックはデーモンを再起動する必要があります。以前のメタデータ値のキャッシュは /var/lib/cfn-hup/data/metadata_db に保存されます。このキャッシュを削除すると、cfn-hup はすべての post.add アクションを再度実行するように強制されます。

名前 説明 必須

hookname

このフックの一意の名前。

タイプ: 文字列

あり

triggers

検出する条件のカンマ区切りのリストです。

有効な値: post.addpost.update、または post.remove

例: post.add, post.update

あり

path

メタデータオブジェクトへのパスです。メタデータブロック内の任意の深いパスをサポートします。

パス形式オプション
  • リソース。<LogicalResourceId> — リソースの最終更新時間を監視します。リソースが変更されたらトリガーします。

  • リソース。<LogicalResourceId>.PhysicalResourceId — リソースの物理 ID を監視します。関連付けられているリソース ID が変化した場合にだけトリガーします (新しい EC2 インスタンスなど)。

  • リソース。<LogicalResourceId>.Metadata (.optional パス) — リソースのメタデータの変更を監視します (特定の値を監視するために、メタデータのサブパスが任意の深いレベルに指定される場合があります)。

あり

action

所定のものとして実行される任意のシェルコマンドです。

あり

runas

cfn-hup としてコマンドを実行するユーザーは、su コマンドを使用してユーザーに切り替えます。

あり

hooks.d ディレクトリ

変更通知フックをデプロイする複数のアプリケーションの構成をサポートするために、cfn-hup はフック構成ディレクトリにある hooks.d という名前のディレクトリをサポートします。hooks.d ディレクトリには、1 つ以上の追加のフック構成ファイルを含めることもできます。追加のフックファイルは、hooks.conf ファイルと同じレイアウトを使用する必要があります。

cfn-hup デーモンは、このディレクトリの各ファイルを解析およびロードします。hooks.d ディレクトリのいずれかのフックが hooks.conf 内のフックと同じ名前である場合、フックはマージされます (つまり、両方のファイルで指定されている値では、hooks.dhooks.conf を上書きします)。

次の例では、CloudFormation は cfn-auto-reloader.conf フックファイルを、LaunchConfig リソースに関連付けられた AWS::CloudFormation::Init リソースが変更された時にトリガーします。

JSON

... "LaunchConfig": { "Type" : "AWS::AutoScaling::LaunchConfiguration", "Metadata" : { "QBVersion": {"Ref": "paramQBVersion"}, "AWS::CloudFormation::Init" : { ... "/etc/cfn/hooks.d/cfn-auto-reloader.conf": { "content": { "Fn::Join": [ "", [ "[cfn-auto-reloader-hook]\n", "triggers=post.update\n", "path=Resources.LaunchConfig.Metadata.AWS::CloudFormation::Init\n", "action=/opt/aws/bin/cfn-init -v ", " --stack ", { "Ref" : "AWS::StackName" }, " --resource LaunchConfig ", " --configsets wordpress_install ", " --region ", { "Ref" : "AWS::Region" }, "\n", "runas=root\n" ]]}, "mode" : "000400", "owner" : "root", "group" : "root" } ...

YAML

... LaunchConfig: Type: "AWS::AutoScaling::LaunchConfiguration" Metadata: QBVersion: !Ref paramQBVersion AWS::CloudFormation::Init: ... /etc/cfn/hooks.d/cfn-auto-reloader.conf: content: !Sub | [cfn-auto-reloader-hook] triggers=post.update path=Resources.LaunchConfig.Metadata.AWS::CloudFormation::Init action=/opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource LaunchConfig --configsets wordpress_install --region ${AWS::Region} runas=root mode: "000400" owner: "root" group: "root" ...

サンプルテンプレートについては、「AWS CloudFormationユーザーガイド」の「Amazon EC2 にアプリケーションをデプロイする」を参照してください。

プライバシーサイト規約Cookie の設定
© 2025, Amazon Web Services, Inc. or its affiliates.All rights reserved.