CloudFormation レジストリの概念 - AWS CloudFormation

CloudFormation レジストリの概念

このトピックでは、CloudFormation レジストリの学習および使用の開始に役立つ主な概念について説明します。

拡張タイプ

レジストリには次の拡張タイプが用意されています。

フック

フックは、CloudFormation によってスタックまたは特定のリソースが作成、更新、または削除される前に、それらを検査する検証チェックです。さらに、フックは変更セットの作成オペレーション中に呼び出すことができます。特定の要件に対してリソース設定を検証することにより、組織の基準およびベストプラクティスを実施するメカニズムを提供します。フックがフックロジックに準拠していない設定を検出した場合、警告を配信するか、プロビジョニングプロセスに失敗させて非準拠のリソースのデプロイを防止することができます。詳細については、「AWS CloudFormation フックのユーザーガイド」を参照してください。

モジュール

モジュールは、複数の CloudFormation スタックテンプレート間に含めることができる再利用可能なリソース設定です。複雑または頻繁に使用されるリソース設定を再利用可能なコンポーネントにカプセル化することにより、CloudFormation テンプレートの作成およびメンテナンスを簡素化するように設計されています。組織のインフラストラクチャのデプロイ全体で一貫性および標準化が促進されます。

リソースタイプ

リソースタイプは、CloudFormation でネイティブにサポートされていないサードパーティーリソースまたはカスタムリソースをモデル化および自動化できるようにします。リソースタイプを開発することによって CloudFormation の機能を拡張し、さまざまなサードパーティーのサービスからリソースをプロビジョニングおよび管理できます。

パブリック拡張タイプ

パブリック拡張機能は、すべての CloudFormation ユーザーが使用できるようにレジストリに公開されている CloudFormation の拡張機能です。これには、AWS およびサードパーティーの拡張の発行元によって公開される拡張が含まれます。

パブリック拡張には 2 種類あります。

  • AWS パブリック拡張 - AWS によって公開される拡張は常に公開されており、デフォルトで有効化されているため、アカウントで使用する前に何もアクションを実行する必要はありません。加えて、AWS は拡張のバージョニング管理を制御するため、常に最新のバージョンを使用しています。

  • サードパーティー拡張 - これらは、AWS 以外のパブリッシャーが一般的に使用できるようになっている拡張です。パブリック拡張機能を使用するには、まずアカウントおよびリージョンでアクティブ化する必要があります。詳細については、「CloudFormation レジストリからサードパーティーのパブリック拡張を使用する」を参照してください。

注記

プライベート拡張と同様に、サードパーティーパブリッシャーからのパブリック拡張は、リソースの作成、読み取り、更新、一覧表示、およびスタックの削除オペレーション中に実行されるイベントハンドラーを実装する場合があります。このため、これらの拡張を CloudFormation スタックで使用すると、アカウントに料金が発生する場合があります。これは、作成されたリソースに対して発生した料金に追加されます。詳細については、「AWS CloudFormation 料金表」を参照してください。

プライベート拡張タイプ

プライベート拡張は、AWS アカウント で使用するために明示的にアクティブ化したサードパーティの拡張です。

プライベート拡張には 2 種類あります。

  • アクティブ化されたプライベート拡張機能 - アカウントおよびリージョンに対してアクティブ化したサードパーティ拡張機能のローカルコピーです。サードパーティーのパブリック拡張をアクティブ化すると、CloudFormation はその拡張のローカルコピーをアカウントのレジストリに作成します。詳細については、「共有されているサードパーティーのプライベート拡張機能を使用する」を参照してください。

  • 登録されているプライベート拡張 - パブリック CloudFormation レジストリにリストされていないプライベート拡張をアクティブ化することもできます。これらは、ご自身で作成された拡張、または組織やその他のサードパーティーから共有された拡張である場合があります。アカウントでこのようなプライベート拡張を使用するには、必ず先に登録しておく必要があります。拡張を登録すると、そのコピーがアカウントの CloudFormation レジストリにアップロードされ、アクティブ化されます。

アカウントでプライベート拡張を使用することは、サンドボックス環境での使用と似ています。これは、拡張がバージョン管理されており、プロビジョニングの動作がバージョン固有であるためです。つまり、プライベート拡張は公開されたかのように動作します。

注記

プライベート拡張、およびサードパーティーパブリッシャーからのアクティブ化されたパブリック拡張は、作成、読み取り、更新、一覧表示、および削除オペレーション中に実行されるイベントハンドラーを実装する場合があります。このため、これらの拡張を CloudFormation スタックで使用すると、アカウントに料金が発生します。これは、作成されたリソースに対して発生した料金に追加されます。詳細については、「AWS CloudFormation 料金表」を参照してください。