Jayendra’s Blog

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


EC2

  • スケーラブルなコンピューティング能力を提供
  • 機能
    • EC2 インスタンスと呼ばれる仮想コンピューティング環境。
    • サーバーに必要なビット (オペレーティングシステムや追加ソフトウェアを含む) をパッケージ化する、Amazon マシンイメージ (AMI) と呼ばれる EC2 インスタンス用に構成されたテンプレート。
    • インスタンスタイプと呼ばれる、インスタンスの CPU、メモリ、ストレージ、ネットワーク容量のさまざまな構成。
    • キーペアを使用してインスタンスのログイン情報を保護する (プライベートがユーザーによって保持される公開キー)。
    • インスタンスを停止または終了したときに削除される一時データのストレージボリューム (インスタンスストアボリュームと呼ばれます)。
    • Elastic Block Store (EBS) を使用したデータの永続ストレージボリューム。
    • インスタンスや EBS ボリュームなど、リソースの複数の物理的な場所 (リージョンとアベイラビリティーゾーンとも呼ばれます)。
    • セキュリティグループを使用してインスタンスに到達できるプロトコル、ポート、および発信元 IP 範囲を指定するファイアウォール。
    • Elastic IP アドレスと呼ばれる静的 IP アドレス。
    • タグと呼ばれるメタデータを作成し、EC2 リソースに割り当てることができます。
    • 仮想ネットワークは、AWS クラウドの残りの部分から論理的に分離され、必要に応じてオンプレミスネットワーク (仮想プライベートクラウド (VPC) と呼ばれます) に接続できます。
  • Amazon マシンイメージ
    • EC2 インスタンスをすばやく起動できるテンプレート。
    • リージョン間でまたがっていないため、コピーする必要があります。
    • 他の特定 AWS アカウントと共有したり、公開したりすることができます。
  • 購入オプション
    • オンデマンドインスタンス
      • 時間によって使用するインスタンスとコンピューティング容量を支払う
      • 長期的なコミットメントアップフロントの支払いなし
    • リザーブドインスタンス
      • 請求割引を提供することにより、1時間ごとのランニングコストを削減
      • インスタンスに適用される容量の予約
      • 一貫性があり、重く、予測可能な使用法の場合に適しています
      • 統合請求のメリットを提供
      • インスタンスサイズのフットプリント (正規化係数) が同じである場合に、アベイラビリティーゾーンまたはインスタンスサイズを同じインスタンスタイプ内で切り替えるように変更できます。
      • 使用量に関係なく期間全体を支払うので、費用対効果の高い解決策と回答が予約されたインスタンスは購入され使用されていないと言われる場合、無視することができます。
    • スポットインスタンス
      • 費用対効果の高い選択肢ですが、可用性を保証するものではありません。
      • 実行可能なタイミングに柔軟なアプリケーションであり、状態を外部に保存することで処理を中断することもできます。
      • インスタンスを終了して未保存の作業を保存する場合は、AWS によって2分間の警告が表示されます。
    • 専用インスタンスは、単一の顧客専用のハードウェア上でVPCでインスタンスを実行できるテナントオプションです。
    • ライト、ミディアム、およびヘビー利用率リザーブドインスタンスは購入できなくなり、以前の世代のAWS EC2購買モデルの一部となりました。
  • Enhanced Networking
    • 帯域幅が増え、PPS(Packet Per Second)性能が向上し、レイテンシ、整合性、スケーラビリティ、ジッタが低くなります。
    • サポートされているインスタンスタイプでのみ、単一ルート I/O 仮想化 (SR-IOV) を使用してサポート
    • VPC でのみサポートされています (EC2 クラシックではありません)、HVM 仮想化タイプと Amazon AMI でデフォルトで利用可能ですが、他の AMI にもインストールできます。
  • プレイスメントグループ
    • 10Gbps ネットワークを介して低レイテンシ、高性能コンピューティングを提供。
    • 1つの AZ 内のインスタンスの論理グループです。
    • アベイラビリティーゾーンをスパンしない、複数のサブネットにまたがることができますが、サブネットは同じ AZ でなければなりません
    • 同じアベイラビリティゾーンでピアリングされたVPCにまたがることができます。
    • 既存のインスタンスを既存のプレイスメントグループに移動できない。
    • 容量エラーについては、プレイスメントグループのインスタンスを停止して開始します。
    • 拡張ネットワーキングをサポートし、すべてのインスタンスを一度に起動する同種のインスタンスタイプを使用する。

Elastic Load Balancer & Auto Scaling

  • Elastic Load Balancer
    • 管理された負荷分散サービスと自動的にスケーリングします。
    • 受信アプリケーショントラフィックを複数の EC2 インスタンスに分散。
    • フォールトトレラントであり、AWS によってアクティブに監視されている分散システムは、要求ごとにスケーリングされます。
    • 単一障害点にならないように設計されている。
    • ロードテスト中に特に需要が発生することが予想される場合は事前にウォーム ELB する必要があります。
    • 同じリージョン内のマルチ AZ 内のインスタンスへのトラフィックのルーティングをサポート。
    • ヘルスチェックを実行して、正常なインスタンスのみにトラフィックをルーティングします。
    • HTTP, HTTPS、SSL、TCP プロトコルを使用したリスナのサポート。
    • 関連付けられた IPv4 およびデュアルスタック DNS 名を持つ。
    • EC2 インスタンスが主な作業に集中できるように、暗号化と復号化 (SSL 終了) の作業をオフロードできます。
    • クロスゾーンの負荷分散をサポートしており、それらが存在する AZ に関係なく、すべての EC2 インスタンスにわたってトラフィックを均等にルーティングできます。
    • クライアントの IP アドレスを識別するため。
      • TCP/SSL 接続用のプロキシプロトコルヘッダをサポート。
      • HTTP/HTTPS 接続用の X-フォワードヘッダをサポート。
    • ユーザーのセッションを特定のアプリケーションインスタンスにバインドするためのスティックセッション (セッションアフィニティ) をサポートします。
      • インスタンスが失われた場合、情報が失われた場合、フォールトトレラントではありません。
      • HTTP/HTTPS リスナを必要とし、TCP では動作しない。
      • ELB では、ユーザーがヘッダーを使用して SSL を終了する必要がある。
    • インスタンスが登録の場合に、機内でのリクエストを完了するための接続ドレインをサポート。
    • 高可用性を実現するには、インスタンスが単一のサブネット内にある場合でも、1つのサブネットを AZ ごとに少なくとも2つの AZ にアタッチすることをお勧めします。
    • Elastic IP アドレスを ELB に割り当てることはできません。
    • IPv4 と IPv6 のサポート。しかし、VPC は IPv6 をサポートしていません。
      • 追記:2016 re:Invent でサポートが発表されました。
    • HTTPS リスナはクライアント側証明書をサポートしていません。
    • バックエンドインスタンスでの SSL Termination またはクライアント側証明書のサポートクライアントから ELB への接続に TCP を使用するには、ELB からバックエンドアプリケーションへの接続に SSL プロトコルを使用し、要求を処理するバックエンドインスタンスに証明書を展開します。
    • 単一のSSL証明書をサポートするため、複数のSSL証明書に対して複数のELBを作成する必要があります
  • Auto Scaling
    • 需要の変化に応じて自動的にスケールアップまたはダウンして負荷を処理するために、常に正しい数の EC2 インスタンスが実行されていることを保証。
    • 複数のリージョンにまたがることはできません。
    • 自動スケーリンググループに対して有効になっている AZ 間でインスタンスを均等に配布しようとする。
    • EC2 ステータスチェックを使用してチェックを実行するか、ELB ヘルスチェックを使用してインスタンスの正常性を判断し、異常な場合はインスタンスを終了し、新しいインスタンスを起動します。
    • 手動スケーリング、スケジュールされたスケーリング、または需要ベースのスケーリングを使用してスケーリングできます。
    • クールダウン期間は、以前のスケーリングアクティビティが有効になる前にインスタンスが起動または終了されないようにし、新しく起動されたインスタンスがトラフィックの処理を開始して負荷を軽減できるようにします。
  • 自動スケーリング & ELB は、リージョン内の複数の AZ にまたがる自動スケーリンググループにまたがって、ELB を設定して、それらの AZ 間で受信トラフィックを分散することにより、高可用性と冗長性を実現するために使用できます。
  • 自動スケーリングでは、インスタンスに ELB ヘルスチェックを使用して、トラフィックが正常なインスタンスにのみルーティングされるようにします。