【AWS再入門】5分でわかるEC2
AWS Solution Architectをとってもうすぐ早2年。 更新をするにあたり、最新情報をおさらいしようと思います。なので、それに合わせて自分の"学び直したこと"と"気になったこと"をこのブログにも書いていこうかと思います。今日は最初にして最大の情報量になるだろうAmazon EC2です。
Amazon EC2とは
- Amazon Elastic Compute Cloudの略称
- AWSのクラウド上で稼動する仮想サーバー
- そのそれぞれをインスタンスと呼ぶ(仮想サーバーなので、1台と呼ぶのは気持ち悪い。物理的には1つのH/W内に複数インスタンスが動いているので)
- 任意のリージョン、アベイラビリティーゾーンで稼動
- WebブラウザからAWSマネージメントコンソール経由、API、CLI経由での操作が可能
リージョンとは?
- いわゆる国、エリアの概念
- 複数データセンターの集合体
- 2018年現在 18のリージョンと1つのローカルリージョンが存在
- ローカルリージョンとは機能や性能が制限されているリージョン(ちなみに大阪)
- ローカルリージョンを除くリージョンは2つ以上のアベイラビリティーゾーンで構成されている
- リージョン間は高速ネットワークが構築されている
アベイラビリティーゾーン(AZ)
- リージョン内に複数存在する
- 地理、電源、ネットワーク、空調などを互いに影響を受けないレベルで別れたデータセンター群の単位 (よくデータセンターそのものと表現する人もいるが厳密には複数あるらしいのでデータセンター"群")
- リージョン内での災害対策の地理冗長などを目的に複数AZにインスタンスを立ててを組み合わせて利用することが多い
EC2の物理基盤
EC2インスタンスの種類
- インスタンスファミリー + 世代 . インスタンスサイズ という記法で表現 ex) c5.large
- インスタンスファミリー:何に最適かしているか
- 世代:文字通り世代。
- インスタンスサイズ:バーチャルCPU、メモリ、RAM、ネットワークスペックの大小
- インスタンスファミリーと現行の世代は以下 - T2:汎用(開発環境など向け) - M5:汎用(小中規模のDBなど) - C5:コンピュート最適化 - D2:ストレージ最適化(Big Dataなど) - H1:ストレージ最適化(同じくBig Dataなど) - I3:ストレージ最適化(NoSQL DWHなど) - R4;メモリ最適化(ハイパフォーマンスDB) - X1e:メモリ最適化(インメモリDB) - G3:アクセラレーテッド(3Dレンダリング) - P3:アクセラレーテッド(機械学習) - F1:アクセラレーテッド(ゲノム解析)
- 通常は低負荷だが稀にスパイクするサービスのためにT2 unlimitedというオプション機能がある
物理ホストの占有
- ハードウェア占有インスタンス/ EC2 Dedigated Hostの2択
- どちらも専用の物理サーバでインスタンスを起動
- EC2 Dedicated Hostはハードウェア単位のBYOL(ライセンス持ち込み)が可能
- ただしハードウェア自体の直アクセスは両方できない
- そこで第3の選択肢「AWS EC" BareMetal」がプレビュー中
- ハードウェアへのダイレクトアクセスを提供する新しいEC2インスタンスのシリーズ
EC2の機能
- Key pair:EC2は公開鍵認証でアクセスをする。そのための公開鍵と秘密鍵の組み合わせ
- Security Group:インスタンス単位のFirewall機能
- Elastic IP:インスタンスにアタッチできる固定のパブリックIPアドレス
- Elastic Network Interfaces (ENI):EC2をホストするVPC(Virtual Private Cloud)内の仮想ネットワークインタフェース
- 拡張ネットワーキング:各インスタンスの通信性能を最適化する機能
- Cluster Placement Groups:各インスタンスをグループ化してインスタンス間のネットワーク通信を最適化する機能
- Auto recovery:何らかの原因でインスタンスが落ちた場合に自動復旧させるオプション(起動時の実行コマンドも仕込める)
EC2のストレージ
- 「インスタンスストアボリューム」と「Elastic Block Store(EBS)」の2種類
- インスタンスストア:インスタンスに密結合されたストレージ領域(停止/起動で中身が削除される揮発性メモリ)
- EBS:着脱可能なブロックストレージ(停止/起動で中身が削除されない)
Amazon Machine Image
- インスタンスのイメージを取得して保存する機能。
- AMIを取得してインスタンスを削除しても、AMIからインスタンスをシド作成すればイメージを元にインスタンスを作成できる
- AWS本家だけでなくサードパーティーからも提供されている
インスタンスのライフサイクル
- 起動/停止/削除の3パターン
- 起動(Start):文字通り実行。Stoped→Runningにステータスが変わる
- 停止 (Stop):停止状態。Running→Stopedにステータスが変わる
- 削除(Terminate):削除状態。インスタンス自体を破棄しているので、二度と同じインスタンスは立てられなくなる。
EC2の費用
- 起動時間の1秒単位で課金
- インスタンスの種類によって単価が分かる
- 購入オプションごとにも金額が変わる
購入オプション
- 以下の5種類
- オンデマンドインスタンス:初期費用無し、従量課金
- リザーブドインスタンス:1年間または3年間、常に利用可能なキャパシティ予約により、最大75%の割引
- スポットインスタンス:未使用キャパシティを時価で提供、最大90%の大幅な割引で利用可能。ベットした金額を上回る入札があれば強制終了される
- 専用ホスト(Dedicated Hosts):インスタンス実行用物理ホストの単位で支払い。
- ハードウェア専有インスタンス( Dedicated Instance):シングルテナントのため丸々かかる