・・・AWS上に仮想サーバーを構築し、管理できるシステム。
◆サービスのジャンル:仮想サーバー
◆特徴:
- 必要な数(またはそれ以下)の仮想サーバーの起動、セキュリティおよびネットワーキングの構成、ストレージの管理ができる。
- 月次または年次の処理やウェブサイトのトラフィックの急増など、計算量の多いタスクを処理するためのキャパシティーを追加(スケールアップ)できる。使用量が減った場合はキャパシティーを再び減らす(スケールダウン)こともできる。
◆使用用途:
- ウェブサイト・ウェブアプリケーションのホスティング
- バッチ処理・データ処理
- 開発・テスト環境の構築
- ハイパフォーマンスコンピューティング(HPC)、科学計算
- 機械学習のモデルトレーニング・推論
Amazon EC2 の機能
インスタンス
・・・仮想サーバー。
インスタンスのタイプ
インスタンス用の CPU、メモリ、ストレージ、ネットワーキングキャパシティーのさまざまなリソースの組み合わせを使用して設計された仮想サーバーの専用構成。
◆EC2インスタンスタイプの分類
- 汎用:コンピューティング、メモリ、ネットワークリソースのバランスが取れたタイプ。ウェブサーバーやコードリポジトリなど、これらのリソースを均等に使用するアプリケーションに最適
- コンピューティング最適化:ハイパフォーマンスプロセッサの恩恵を受けるアプリケーション向け。バッチ処理、メディアトランスコーディング、高性能ウェブサーバー、HPC(ハイパフォーマンスコンピューティング)、科学モデリング、ゲーム専用サーバー、機械学習推論などに適する
- メモリ最適化:メモリ内で大規模データを高速に処理するワークロード向け
- ストレージ最適化:ローカルストレージ上の大規模なデータセットに対する高いシーケンシャル読み書き性能が必要なワークロード向け
- 高速コンピューティング:GPUやFPGAなどのハードウェアアクセラレータを使用するタイプ。機械学習・グラフィックス処理向け
Amazon マシンイメージ (AMI)
・・・サーバーに必要なコンポーネントをパッケージ化した、インスタンス用に事前に設定されているテンプレート(オペレーティングシステムおよび追加のソフトウェアを含む)。
AMIの種類
- クイックスタートAMI:・・・AWSが用意しているOSの中から選択ができる無料のAMI
- カスタムAMI:・・・ユーザーが独自に作成したAMI
- AWS Marketplace AMI:・・・AWS Marketplace で販売されている AMI
- コミュニティ AMI:・・・他のユーザーが作成したAMI
AMIを選択するときに確認するポイント
- リージョン
※AMIはリージョンごとに固有のもので、リージョンをまたいでそのまま使うことはできない
- オペレーティングシステム
AMIは、OS+αをパッケージ化したもの
- プロセッサアーキテクチャ
- 起動許可
・・・AMI を使用してインスタンスを起動できるユーザーの範囲を管理する機能
| 起動アクセス許可 | 説明 |
|---|---|
| パブリック | 所有者はすべての AWS アカウントに起動許可を与えます。 |
| 明示的 | 所有者は特定の AWS アカウント、組織、または組織単位 (OU) に起動許可を与えます。 |
| 暗示的 | 所有者には AMI の暗示的起動許可があります。 |
- ルートボリュームタイプ
起動したインスタンスのルートボリューム(OSが入っている部分)が、何のストレージでできているか。
・ルートボリューム・・・インスタンスを起動すると作成されるストレージ。
Amazon EBS ボリューム
・Amazon エラスティックブロックストア (Amazon EBS) を使用したデータ用の永続的ストレージボリューム。
インスタンスストアボリューム
・インスタンスを停止、休止、または終了するときに削除される一時データ用のストレージボリューム。
| 特徴 | Amazon EBS-backed AMI | Amazon S3-backed AMI |
|---|---|---|
| ルートボリューム | EBS ボリューム | インスタンスストアボリューム |
| インスタンスの起動時間 | 通常 1 分以内 | 通常 5 分以内 |
| データの永続性 | インスタンス終了後もEBSボリュームは残せる(設定次第) | インスタンスの存続中のみデータが使える(終了で消える) |
| 停止状態 | 可能 | 不可(実行中か終了のみ) |
- 仮想化タイプ
・・・AMIが、どうやってOSを起動させ、ハードウェアとやり取りするかの方式
仮想化タイプ
| タイプ | 概要 | 使えるインスタンス | GPU・高速ネットワーク | Windows AMI |
|---|---|---|---|---|
| HVM | 今の主流 | 現行世代すべて | 使える | 常にこちら |
| PV | 古い方式 | 旧世代のみ(C1/C3/M1/M2/M3/T1) | 使えない | 非対応 |
AMIの種類と特徴
| AMIの種類 | リージョン | オペレーティングシステム | プロセッサアーキテクチャ | 起動許可 | ルートボリュームタイプ | 仮想化タイプ |
|---|---|---|---|---|---|---|
| クイックスタートAMI | 主要リージョンで広く提供 | AWSが動作検証済みの主要OS(Amazon Linux、Ubuntu、Windows Serverなど)から選択 | x86_64版・arm64版の両方が用意されていることが多い | パブリック | Amazon EBS-backed AMI/Amazon S3-backed AMI | HVM/PV |
| カスタムAMI | 作成したリージョンにのみ存在。別リージョンで使うには手動コピーが必要 | 元にしたインスタンスのOS。自分でインストールしたミドルウェア・アプリまで含む | 元にしたインスタンスタイプのアーキテクチャに準拠 | パブリック/明示的/暗示的 | Amazon EBS-backed AMI/Amazon S3-backed AMI | HVM/PV |
| AWS Marketplace AMI | 提供元がリージョンごとに用意しているかに依存。対応リージョンが限定される製品もある | ベンダーが用意したOS+特定ソフトウェア(製品)のセット | 製品によってサポートするアーキテクチャが限定されることがある(Pricing欄で起動可能なインスタンスタイプを確認可能) | パブリック | Amazon EBS-backed AMI/Amazon S3-backed AMI | HVM/PV |
| コミュニティAMI | 作成者が公開したリージョンにのみ存在することが多く、別リージョンでは見つからない場合がある | 作成者依存でさまざま。AWSによる動作検証はされていない点に注意 | 作成者依存。arm64版が用意されていないことも多い | パブリック | Amazon EBS-backed AMI/Amazon S3-backed AMI | HVM/PV |
キーペア
・パブリックキーとプライベートキーの組み合わせで、EC2インスタンスに接続する際の身分証明に使うセキュリティ認証情報。
※プライベートキーを持っている人だけが、対応するインスタンスに接続できる
パブリックキー:AWS(Amazon EC2)側が、起動したインスタンス内に保管する
プライベートキー:ユーザー自身が安全な場所に保管する
セキュリティグループ
・VPCが提供する仮想ファイアウォール機能で、EC2インスタンスに関連付けて通信を制御する
・インスタンスの起動時にセキュリティグループを関連付けられる
・起動後でも、追加でセキュリティグループを関連付けることができる
・1つのインスタンスに、複数のセキュリティグループを同時に関連付け可能(その場合、各グループのルールが集約されて適用される)
・関連付けたセキュリティグループのルールを追加・削除すると、その変更はそのセキュリティグループを使っている全インスタンスに自動的に反映される
・SSH(Linux)・RDP(Windows)接続を許可するルールや、Webサーバー宛てのHTTP/HTTPSを許可するルールなど、インスタンスの用途に応じたルールを追加して使う
Amazon EC2 の請求および購入オプション
・・・以下の4つの支払い方法から、コストを最適化できる。
- オンデマンドインスタンス:起動するインスタンスに対して秒単位で支払う。前払いや長期契約は不要
- リザーブドインスタンス:1〜3年の期間、インスタンスタイプとリージョンを含むインスタンス設定を維持する契約により、コストを削減
- Savings Plans:1〜3年の期間、1時間あたり USD 単位で一定の使用量を契約することでコストを削減。インスタンスファミリー、サイズ、OS、テナンシー、AWSリージョンを問わず適用できる柔軟な料金モデル
- スポットインスタンス:未使用のEC2インスタンスをリクエストすることで、コストを大幅に削減できる。中断される可能性がある点に注意