EC2について

EC2の概要

EC2とは

数分で利用可能となる従量課金で利用可能な仮想サーバー

・起動、ノード追加、削除、マシンスペック変更が数分で可能

・汎用的なIntelアーキテクチャを採用

・管理者権限で利用可能

WindowsLinuxなどのほとんどのOSをサポート

・OSまでは提供されているタイプを選択することで自動設定され、OSより上のレイヤーを自由に利用可能

・独自のAmazon Machine ImageにOS設定を作成し、保存して再利用が可能

リザーブインスタンス

利用期間を長期指定して利用する形式で、オンデマンドに比較して最大75%割安になる

◾️利用期間 ・スタンダード  1年(40%割引)  3年(60%割引)

・コンバーティブル  1年(31%割引)  3年(54%割引)

◾️AZ / インスタンスサイズ / ネットワークタイプ変更可否 ・スタンダード  有

・コンバーティブル  有

◾️インスタンスファミリー / テナンシー / 支払オプションの変更可否 ・スタンダード  なし

・コンバーティブル  有

◾️リザーブインスタンスマーケットプレイスでの販売可否 ・スタンダード  可能

・コンバーティブル  今度可能となる予定

◾️ユースケース ・一定した状態または使用量が予測可能なワークロード ・災害対策などキャパシティ予約が可能なアプリケーション

スポットインスタンス

予備のコンピューティング容量を、オンデマンドインスタンスに比べて割引(最大90%引き)で利用できるEC2インスタンス

・予備用を入札式で利用するためとても安い(最大90%引き)

・起動に通常よりも少し時間がかかる

・予備用のため途中で削除される可能性がある  →一時的な拡張などの用途で利用

Saving Plan

1〜3年の期間に一定の使用量を守ることによりAmazon EC2コストを削減する ・リザーブインスタンスと同様に、1年または3年の期間に特定の量の処理能力(USD / 時間で測定)を使用する契約を結ぶことで適用される割引契約

AWSコンピューティング使用料金を最大72%節約できる

Amazon EC2AWS Fargate、AWS Lamdbaに適用可能

キャパシティの予約

特定のアベイラビリティーゾーンのEC2インスタンスに対して任意の期間キャパシティを予約する

◾️期間 ・キャパシティーの予約  コミットメントは不要で必要に応じて作成及びキャンセル可能

リザーブインスタンス  固定の1年または3年のコミットメントが必要

・Saving Plan  固定の1年または3年のコミットメントが必要

◾️キャパシティの利点 ・キャパシティーの予約  特定のAZで予約されるキャパシティー

リザーブインスタンス  特定のリージョンで予約されるキャパシティー

・Saving Plan  なし

◾️請求割引 ・キャパシティーの予約  なし

リザーブインスタンス  有

・Saving Plan  有

◾️インスタンスの制約 ・キャパシティーの予約  リージョンごとのオンデマンドインスタンス制限に制限

リザーブインスタンス  AZまたはリージョンあたり20の制限  制限引き上げ申請可

・Saving Plan  なし

物理対応可能なインスタンス

物理サーバーにインスタンスを起動して制御が可能なタイプのインスタンス

◾️ハードウェア専有インスタンス ・専有HWのVPCで実行されるEC2インスタンス ・ホストHWのレベルで、他のAWSアカウントに属するインスタンスから物理的に分離する ・同じAWSアカウントのインスタンスとはHWを共有する可能性がある

◾️Dedicated Host ・EC2インスタンス容量を完全にお客様専用として利用できる物理サーバー ・サーバーにバインドされた既存のソフトウェアライセンスを利用可能

◾️Bare Metal ・アプリケーションが基盤となるサーバーのプロセッサーとメモリーに直接アクセス可能なインスタンスAWSの各種サービスとの連携が可能でOSが直接下層のハードウェアにアクセス可能

ストレージ

EC2で直接利用するストレージは不可分なインスタンスストアと自分で設定するEBSの2つ

◾️インスタンスストア ・ホストコンピューターに内蔵されたディスクでEC2と不可分のブロックレベルの物理ストレージ ・EC2の一時的なデータが保持され、EC2の停止・終了と共にクリアされる ・無料

◾️Elastic Block Store(EBS) ・ネットワークで接続されたブロックレベルのストレージでEC2とは独立して管理される ・EC2をTerminateしてもEBSは保持可能でSnapshotをS3に保持可能 ・別途EBS料金が必要

EC2のバックアップ

EC2インスタンスは定期的にバックアップすることが重要

・定期的にバックアップをとる ・定期的にリカバリプロセスを確認する ・複数のAZに重要なアプリケーションをデプロイすること ・フェイルオーバー対応を準備すること ・イベントをモニタリングして対応できるようにすること ・インスタンス起動時に動的IPアドレス処理の設定を行うこと

EBS

EC2にアタッチされるブロックレベルのストレージサービス

◾️基本 ・OSやアプリケーション、データの置き場所など様々な用途で利用される ・実態はネットワーク接続型ストレージ ・99.999%の可用性 ・サイズは1GB〜16TB ・サイズと利用期間で課金

◾️特徴 ・ボリュームデータはAZ内で複数のHWにデフォルトでレプリケートされており、冗長化不要 ・セキュリティグループによる通信制御対象外で有り、全ポートを閉じてもEBSは利用可能 ・データは永続的に保存 ・EC2インスタンスは他のAZ内のEBSにはアクセスできない ・EC2インスタンスに複数のEBSを接続することはできるが、EBSを複数のインスタンスで共有することはできない ・他のインスタンスに付け替えできる

Snapshot

EBSはスナップショットを利用してバックアップを取得する

◾️特徴 ・Snapshotでバックアップ ・SnapshotからのEBSを復元する際は別AZにも可能 ・SnapshotはS3に保存される ・Snapshotの2世代目以降は増分データを保存する増分バックアップとなる(1世代目を削除しても復元は可能) ・Snapshot作成時にブロックレベルで圧縮して保管するため、圧縮後の容量に対して課金が行われる

Snapshot作成時はデータ整合性を保つため静止点の設定を推奨 ◾️Snapshot作成時はデータ整合性を保つため静止点の設定を推奨 ・ソフトウェアの機能を利用 ・ファイルシステムの機能を利用 ・バックアップソフトウェアの機能を利用 ・アプリケーションの停止 ・ファイルシステムのアンマウントなど

◾️保存期間や世代数は無制限 ◾️世代管理が必要な場合はAWSCLIやAPI等で自動化する

スナップショットとAMI

Amazon Machine ImageはOS設定のイメージで有り、Snapshotはストレージのバックアップとなる

◾️AMI ・EC2インスタンスのOS設定などをイメージとして保持して、新規インスタンス設定に転用するもの

◾️Snapshot ・ストレージ / EBSのその時点の断面のバックアップとして保持するもの ・ストレージの復元や複製に利用

EBSのボリュームタイプ

ユースケースに応じて性能やコストが異なる5種類のボリュームタイプから選択

◾️SSD ・汎用SSD  →仮想ディスクトップ  →低レイテンシーを要求するアプリ  →小〜中規模のデータベース  →開発環境

・プロビジョンドIOPS  →高いI/O性能に依存するNoSQLやアプリ  →10,000IOPSや160MB/s超のワークロード  →大規模DB

◾️HDD ・スループット最適化HDD  →ビックデータ処理  →DWH  →大規模なETL処理やログ分析

・コールドHDD  →ログデータなどアクセス頻度が低いデータ  →バックアップやアーカイブ

◾️マグネティック  →旧世代のボリュームで基本利用しない  →データへのアクセス頻度が低いワークロード