■EC2 インスタンスの価格を決定する要素
- 購入オプション(オンデマンド、予約済み、スポット、ハードウェア専用、Dedicated)
- 選択されたAMI
- 選択されたインスタンスタイプ
- リージョン
- データの入出力
- ストレージ容量
- 利用時間
EC2 インスタンスのインスタンスタイプの特徴
- I3インスタンス … ストレージ最適化インスタンス。データ処理が多発する環境で CPU パフォーマンスを保証することができます。また、低レイテンシー、超高ランダム I/O パフォーマンス、高シーケンシャル読み込みスループット向けに最適化された不揮発性メモリエクスプレス (NVMe) 対応の SSD ベースのインスタンスストレージが含まれており、低コストで高い IOPS を実現します。また、最大 25 Gbps のネットワーク帯域幅と最大 14 Gbps の Amazon Elastic Block Store (Amazon EBS) 専用帯域幅を利用できます。
- G4 インスタンス … 費用対効果の高い GPU インスタンスを利用しています。機械学習モデルの本番環境へのデプロイやグラフィックスを多用するアプリケーションに適しています。高機能ですがI3インスタンスよりも高価です。
EC2 のストレージ
■ストレージについて
- EBS ← EC2 インスタンスにネットワーク接続されたストレージ。長く保持したいデータの場合、またはデータを暗号化したい場合はEBSボリュームを使用する。
- インスタンスストア ← EC2 インスタンスに物理的にアタッチされているストレージ。インスタンスストアのボリュームに格納されているデータは、インスタンスの停止、終了、またはハードウェアの障害によって永続化されないので一時記憶に利用されるストレージとなる。
■EBS ボリュームの種類
- 汎用 SSD
- プロビジョンド IOPS SSD(io2) ← 高いI/O
- プロビジョンド IOPS SSD(io1) ← 高いI/O
- スループット最適化 HDD
- Cold HDD
- マグネティック
■EBS ボリュームの特徴
- 耐久性に優れたブロックレベルのストレージボリュームです。
- EBS ボリュームを作成すると、そのボリュームは同じアベイラビリティーゾーン内で自動的にレプリケートされます。これは、1 つのハードウェアコンポーネントの障害が原因でデータが失われることを防ぐためです。
- EBS ボリュームは、同じアベイラビリティーゾーン内の任意の EC2 インスタンスにアタッチできます。(リージョンではありません。)
■EBS ボリュームで価格に影響を及ぼす要素
- データ容量(GB単位)
- アウトバウンドのデータ転送量
- スナップショット
ストレージ最適化インスタンス
- D2 インスタンス ← HDD ベースのストレージ。最大 48 TB。
- D3 および D3en インスタンス ← HDD ベースのストレージ。
- H1 インスタンス ← HDD ベースのストレージ。最大 16 TB。
- I3 および I3en インスタンス ← SSD ベースのストレージ。
■Amazon EC2 専有ホスト(Amazon EC2 Dedicated Hosts)
- 専用物理サーバー
- Amazon EC2 Dedicated Hosts は EC2 インスタンスを占有していますが、物理プロセッサと物理メモリに直接アクセスはできません。
■ハードウェア専有インスタンス
- ユーザー別の専用ハードウェア
- AWS アカウントが異なる場合、ハードウェアレベルで物理的に分離される。
- 同じ AWS アカウントに属する他のインスタンス (ハードウェア専有インスタンス 以外) とはハードウェアを共有される。
■Amazon EC2 専有ホスト(Amazon EC2 Dedicated Hosts)とハードウェア専有インスタンスの違い
- Amazon EC2 専有ホスト(Amazon EC2 Dedicated Hosts) ← 1インスタンスごとに完全な分離
- ハードウェア専有インスタンス ← アカウントごとに分離
※Dedicated ← 専門の。献身的な。
■Amazon EC2 ベアメタルインスタンス
- アプリが物理プロセッサと物理メモリへの直接アクセスが可能です。
- Amazon EC2 Dedicated Hosts は EC2 インスタンスを占有していますが、物理プロセッサと物理メモリに直接アクセスはできません。
■Linux AMI 仮想化タイプ
Linux AMI には以下の2つの仮想化タイプがあります。
- ハードウェア仮想マシン (HVM)
- 準仮想化 (PV)
最適なパフォーマンスを得るために HVM AMI を利用します。
ハードウェア仮想マシン(HVM)は拡張ネットワーキングと GPU 処理を利用できます。
■Elastic IP アドレスの特徴
- Elastic IP アドレスを使用すると、アドレスをアカウント内の別のインスタンスに迅速に再マッピングできます。
- Elastic IP アドレスはユーザーの AWS アカウントに割り当てられ、解放するまでユーザーのアドレスになります。
■Elastic IP アドレスで課金される条件
- Elastic IP アドレスに関連付けられているインスタンスが停止している。
■Elastic IP アドレスで課金されない条件
- Elastic IP アドレスが EC2 インスタンスに関連付けられている。
- Elastic IP アドレスに関連付けられているインスタンスが実行中である。
リザーブドインスタンス
■リザーブドインスタンス
- 全額前払い ← リザーブドインスタンス期間の料金全額を一括で前払いします。割引額が最大になります。
- 一部前払い ← 少額を前払いしていただき、リザーブドインスタンス期間が終了するまでの間、割引時間単価で計算したインスタンス料金を支払います。
- 前払いなし ← 前払いの必要はなく、期間が終了するまでの間、時間単価が割引されます。
■EC2 インスタンス以外でリザーブドが可能なサービス
- ElastiCache リザーブドノード
- DynamoDB リザーブドキャパシティ
- Redshift リザーブドノード
- RDS リザーブドインスタンス
■マーケットプレイスでの販売について
- リザーブドインスタンスのスタンダードを購入することで、マーケットプレイスで販売することが可能です。
- コンバーティブルリザーブドインスタンスはマーケットプレイスで販売できません。
スケジュールドリザーブドインスタンス
今まで日次、週次、月次と3パターンのスケジュールで利用できた「スケジュールドリザーブドインスタンス」は利用できなくなりました。
今後は代わりに「オンデマンドキャパシティー予約」を利用することになります。
オンデマンドキャパシティー予約
セキュリティグループ
- セキュリティグループは EC2 インスタンスとのトラフィックを制御するファイアウォールです。
- 1 つのインスタンスに対して同時に最大 5 つまでのセキュリティグループを設定することができます。
- セキュリティグループはステートフルです。インスタンスからリクエストを送信する場合、そのリクエストのレスポンストラフィックは、インバウンドセキュリティグループのルールにかかわらず、流れることができます。
- VPC ではデフォルトのセキュリティグループが自動的に使用されます。インスタンスの起動時に別のセキュリティグループを指定しない場合、デフォルトのセキュリティグループがインスタンスに関連付けられます。
ペネトレーションテストについて
- EC2インスタンスへのペネトレーションテストは顧客が自由に実施できます。
- AWS側への申請や許可は必要ありません。
※ペネトレーションテストとは、ネットワークに接続されているコンピュータに対して侵入を試みて、システムに脆弱性がないかどうかテストすることを言います。
プレイスメントグループ(プレースメントグループ)について
プレイスメントグループ
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/placement-groups.html
- 新しい EC2 インスタンスを起動する場合、相関性のエラーを最小限に抑えるために、すべてのインスタンスを異なるハードウェアに分散されるようにインスタンスを配置します。
- プレイスメントグループを使用することで、ワークロードのニーズに対応するために独立したインスタンスのグループのプレイスメントに影響を与えることができます。
- パーティション ← インスタンスを複数の論理パーティションに分散させ、1 つのパーティション内のインスタンスのグループが基盤となるハードウェアを別のパーティション内のインスタンスのグループと共有しないようにします。この戦略は、Hadoop、Cassandra、Kafka などの大規模な分散および複製ワークロードで一般的に使用されます。
- 分散 ← 相関性のエラーを減らすために、少数のインスタンスを厳密に基盤となるハードウェア全体に配置します。
■3つのプレイスメントグループ
- クラスター – アベイラビリティーゾーン内でインスタンスをまとめます。
- パーティション – インスタンスを複数の論理パーティションに分散させ、1 つのパーティション内のインスタンスのグループが基盤となるハードウェアを別のパーティション内のインスタンスのグループと共有しないようにします。
- スプレッド 相関性のエラーを減らすために、少数のインスタンスを基盤となるハードウェア全体に厳密に配置します。
クラスタープレイスメントグループ
同じアベイラビリティーゾーン内でインスタンスをまとめます。
この戦略により、ワークロードは、HPC アプリケーションで典型的な緊密に組み合わされたノード間通信に必要な低レイテンシーネットワークパフォーマンスを実現できます。
プレースメントグループを使⽤すると、アプリケーションを低遅延の 10 Gbps ネットワークに参加させることができます。
- HCP ← ハイパフォーマンスコンピューティング
プレイスメントグループの構成を変更する場合
プレイスメントグループの構成を変更する場合ですが、グループを構成している EC2 インスタンスと異なるスペックのインスタンスタイプを使用するとエラー(容量エラー)が発生する可能性があるので、インスタンスタイプは統一します。
既存のプレイスメントグループに新規EC2インスタンスを追加する場合
- プレイスメントグループを一旦停止します。
- 同じインスタンスタイプの新規EC2インスタンスを追加します。
- プレイスメントグループにあるEC2インスタンスを再起動します。
EC2 インスタンスの構築について
BootStrap(ブートストラップ)を利用して Amazon EC2 でインスタンスを起動するとき、起動後にそのインスタンスにユーザーデータを渡し、一般的な自動設定タスクを実行したり、スクリプトを実行したりできます。
■ENI(Elastic Network Interface)について
- 仮想ネットワークカードを表す VPC 内の論理ネットワーキングコンポーネントです。
- VPC の IPv4 アドレス範囲からのプライマリプライベート IPv4 アドレス
- VPC の IPv4 アドレス範囲からの 1 つ以上のセカンダリプライベート IPv4 アドレス
- プライベート IPv4 アドレスごとに 1 つの Elastic IP アドレス (IPv4)
- 1 つのパブリック IPv4 アドレス
- 1 つ以上のセキュリティグループ
- MAC アドレス
■EIP(Elastic IP)アドレスについて
- Elastic IP アドレスは、Amazon のパブリック IPv4 アドレスのプールまたは AWS アカウントに持ち込んだカスタム IP アドレスプールから割り当てることができます。
- EC2 インスタンスを新規作成する際にパブリック IP アドレスを割り当てることができますが、 EIP ではない場合は、再起動(EC2 インスタンスを停止/起動)するごとに IP アドレスが変わります。
■ENI と EIP の違い
- ENI はプライベート IP とパブリック IP の両方
- EIP はパブリック IP
Elastic Network Adapter (ENA) で更にネットワーク速度を上げる
Elastic Network Adapter (ENA) は、以下のインスタンスタイプでサポートされていて、最大 100 Gbps のネットワーク速度をサポートします。
- C5, C5d, C5n, F1, G3, G4, H1, I3, I3en, Inf1, m4.16xlarge, M5, M5a, M5ad, M5d, M5dn, M5n, P2, P3, R4, R5, R5a, R5ad, R5d, R5dn, R5n, T3, T3a, u-6tb1.metal, u-9tb1.metal, u-12tb1.metal, u-18tb1.metal, u-24tb1.metal, X1, X1e, z1d
EC2 で自分の IP アドレスを使用する
現在でもデータセンターや社内に物理サーバや仮想環境を構築してグローバルIPアドレスを取得して設定をしている企業が多いと思います。
クラウド環境に徐々に移行している際に「グローバルIPはどうなるの?結局持っていけるの?いけないの?」と悩んだことがある方も多いと思います。
実は AWS ではすべての IP アドレスをデータセンターや社内から AWS にもっていくことができます。
- すべての IPv4 アドレス範囲の一部またはすべてをオンプレミスのネットワークから AWS アカウントに導入できます。
- アドレス範囲は、American Registry for Internet Numbers (ARIN)、Réseaux IP Européens Network Coordination Centre (RIPE) または Asia-Pacific Network Information Centre (APNIC) といった地域インターネットレジストリ (RIR、Regional internet registry) に登録する必要があります。
- Route Origin Authorization(ROA)は Amazon が特定の AS 番号のアドレス範囲を公開することを承認します。
JPNIC 公式サイトより ROA の解説を引用
ROA (Route Origin Authorization)は、 BGP (Border Gateway Protocol)で使われるAS (Autonomous System)番号と、 IPアドレスの組み合わせに対して、それが正しい組み合わせであることを示す電子署名が施されたデータです。ROAは、数多くのBGPルータ同士でインターネットの経路情報を交換する際に、経路情報の正当性を確認できるようにすることを目的としています。
ROAの電子署名は、IPアドレスの正しい割り振りや割り当てであることを示す、リソース証明書の私有鍵を使って行われます。従ってROAの電子署名が確認できれば、ROAに含まれるIPアドレスがレジストリから正しく割り振られたものであり、かつ割り当て先によってASに対して経路広告することが認可(authorize)された、正しい経路情報であることが分かります。
IPv6 について
すべてのインスタンスタイプで IPv6 がサポートされているわけではありません。
AWS 認定試験の勉強方法
最近はコロナ禍という状況が影響しているのかどうか分かりませんが、勉強や学習意欲が非常に高くなっています。
インフラエンジニアとして AWS をメインに業務を行っていることもあり、毎日 AWS 認定試験の試験勉強をしています。
資格について IT エンジニアの場合は実績が重要なので資格は必要ないという意見もありますが、個人的には資格取得の勉強をすることにより
- 自分が知らない分野の知識やスキルが身につく
- 食わず嫌いで今まで取り組んでこなかった知識が身につくので業務を改善する新しいアイデアが生まれる
- 業務が捗る
というメリットを感じています。
AWS 認定試験についは、Udemy を利用して飽きずに楽しく勉強しています。
■Udemy のメリット
大量に問題があるので、飽きずに楽しく勉強ができます。
私の場合はテキストを読んで勉強することが非常に苦手ですぐに飽きてしまします。
しかし Udemy の大量の模擬試験問題集を解き、解答を確認して、不明な点は AWS の公式サイトを確認して学習しているので、集中して学習を続けることができます。
とにかく大量の問題を解くことが私にとって学習を続けられる唯一の方法のような気がします。
ちなみに Udemy ではたまにプレゼント企画もやっています。
先日は1つの講座を申し込んだ際に「How to Learn: Effective Approaches for Self-Guided Learning」の講座を無料で受講することが出来ました。
コメント