Jayendra’s Blog

この記事は自己学習用に「AWS Certification – Management Tools – Cheat Sheet(Jayendra’s Blogより)」を日本語に訳した記事です。


CloudFormation

  • 開発者およびシステム管理者が、関連する AWS リソースのコレクションを簡単に作成および管理できるようにします。
  • リソースは、ソフトウェアコードのコードとして AWS インフラストラクチャにバージョン管理を適用することで、整然とした、制御された、予測可能な方法で更新、削除、変更することができます。
  • CloudFormation テンプレートは、JSON 形式のアーキテクチャ図であり、スタックは実際にプロビジョニングされたそのダイアグラムの最終結果です。
  • テンプレートを使用して、複数の地域にわたってリソースを一貫して繰り返し設定することができます。
    • AWS リソースの一覧とその構成値。
    • オプションのテンプレートファイル形式のバージョン番号。
    • テンプレートパラメータのオプションリスト (スタック作成時に指定された入力値)
    • Fn::GetAtt 関数を使用したパブリック IP アドレスのような出力値のオプションリスト。
    • たとえば、AZ あたりの AMI 名などの静的構成値を参照するために使用されるデータテーブルのリスト。
  • Chef と Puppet Integration をサポートし、アプリケーション層を右下に配置して構成する。
  • パッケージ、ファイル、およびサービスを、CF テンプレートで簡単に記述して EC2 インスタンスにインストールするためのブートストラップスクリプトをサポートします。
  • エラー時自動ロールバック機能がデフォルトで有効になっているため、CFがスタックで正常に作成したすべてのAWSリソースが、エラーが発生した時点まで削除されます。
  • 外部ソースから完了信号が受信されるまで、他のリソースの作成をブロックする WaitCondition リソースを提供します。
  • テンプレート内のリソースに対して DeletionPolicy 属性を定義できるようにする。
    • スタック削除後も S3 のようなリソースを保持。
    • スタック削除後の RDS のようなバックアップリソースへのスナップショット。
  • DependsOn 属性は、特定のリソースの作成が、別のリソースの作成を指定する。
  • サービスロールは、AWS CloudFormation がユーザーの代わりにスタック内のリソースを呼び出すことを可能にする IAM ロールです。
  • 再利用可能な共通コンポーネントを分離し、異なるテンプレートを混在させ、入れ子になったスタックを使用して単一の統一されたスタックを作成する専用のテンプレートを作成できる入れ子になったスタックをサポートします。

Elastic Beanstalk

  • 開発者は、AWS クラウド内のアプリケーションを簡単にデプロイおよび管理できるようになります。
  • キャパシティ・プロビジョニング、ロード・バランシング、自動スケーリング、アプリケーション・ヘルス・モニタリングのデプロイメントの詳細を自動的に処理。
  • CloudFormation は ElasticBeanstalk をサポートします。
  • サポートするリソースの準備
    • HTTP(S) 要求を処理する Web アプリケーション または
    • バックグラウンド処理 (ワーカー) タスクを処理する Web アプリケーション
  • Out of the BOX サポート
    • Java アプリケーション用の Apache Tomcat
    • PHP アプリケーション用の Apache HTTP サーバ
    • Python アプリケーション用の Apache HTTP サーバ
    • Node.js アプリケーション用の Nginx または Apache HTTP サーバ
    • Ruby アプリケーション用 Passenger
    • .Net アプリケーション用の Microsoft IIS 7.5
    • シングルおよびマルチコンテナ Docker
  • 使用するカスタム AMI をサポート
  • 開発、QA、プリプロダクション、生産など、複数の実行環境をサポートするように設計されています。
  • バージョン管理をサポートし、時間の経過と共にアプリケーションのバージョンを記録し、以前の版に簡単にロールバックできるようにする。
  • RDS DB インスタンスと接続情報のプロビジョニングは、環境変数によってアプリケーションに公開されますが、RDS がElastic Beanstalk ライフサイクルと結び付けられ、削除された場合には、RDS インスタンスも削除するため、運用設定には推奨されません

OpsWorks

  • Chef を使用してクラウド企業でアプリケーションを構成および運用するのに役立つ構成管理サービスです。
  • 複数のレイヤーを持つスタックのアプリケーションの展開と監視を支援。
  • アプリケーション、データベース、ロードバランサー、キャッシュの構成済みレイヤーをサポート。
  • OpsWorks スタックの機能は、セットアップ、構成、デプロイ、アンデプロイ、およびシャットダウンの一連のライフサイクルイベントであり、各インスタンスの適切なタイミングで特定のレシピセットを自動的に実行します。
  • レイヤーは、Chef レシピに依存して、インスタンスへのパッケージのインストール、アプリの展開、スクリプトの実行などのタスクを処理します。
  • インスタンスが複数のレイヤーに属している場合でも、OpsWorks スタックは各レイヤーのレシピを実行します。
  • 自動ヒーリングと自動スケーリングをサポートし、インスタンスのヘルスを監視し、新しいインスタンスをプロビジョニング。

CloudWatch

  • AWS リソースとアプリケーションのリアルタイムでの監視、事前に設定またはカスタムメトリックスの収集と追跡、通知を送信したり、定義されたルールに基づいてリソースの変更を行うためのアラームの設定が可能。
  • リージョン間でデータを集計しません。
  • ログデータを無期限に保存し、ロググループごとに保存期間を変更できます。
  • アラーム履歴はわずか14日間保存されます。(2016.11 update: 最長15ヶ月間に延長された1
  • S3 の代わりに、アラームを設定し、メトリックを生成する機能を持つログを格納するために使用することができます, しかし、ログは公開することができません。
  • アラームは作成されたリージョンにのみ存在し、アラームアクションは同じリージョンに常駐する必要があります。

CloudTrail

  • AWS マネジメントコンソール、SDK、CLI、および上位レベルの AWS サービスから作成された AWS アカウントの API 呼び出しへのアクセスを記録します。
  • 多くの AWS サービスとトラックのサポート。
  • リージョンごとに有効にすることができます。リージョンは、グローバルサービスを含めることができます (IAM 、STS など), そのリージョン内のすべてのサポートされているサービスに適用可能です。
  • 異なるリージョンのログファイルを同じ S3 バケットに送信できます。
  • SNS と統合してログの可用性を通知し、特定の API イベントが発生したときに Cloudwatch ロググループに通知を記録できます。
  • 通話履歴により、セキュリティ分析、リソース変更の追跡、トラブルシューティング、コンプライアンス監査が可能。