この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので十分ご注意ください。
はじめに
AWS Summit Tokyo 2023のセッション「Amazon EC2 のイロハとコスト最適化のキモ」で学んだ内容のうち、「イロハ」の部分をまとめてみました。
EC2を選ぶ際の課題の解決になれば幸いです。
「コスト最適化」は下記をご覧ください。
【AWS Summit Tokyo 2023】Amazon EC2のコスト最適化のキモ
目次
(1)EC2の概要
(2)EC2を利用する際の悩みは「イロハ」で解決
(1)EC2の概要
Amazon Elastic Compute Cloud (Amazon EC2) とは、Amazonが提供する「仮想サーバサービス」です。
ハードウェアに事前投資する必要がなく、アプリケーションをより速く開発およびデプロイでき、必要な数の仮想サーバーの起動、セキュリティおよびネットワーキングの構成、ストレージの管理ができます。
データセンターと物理ホストはAWSが管理と運用を実施しているため、仮想環境構築時の空きリソース管理やリプレース業務が不要です。
※公式ドキュメントはこちら。
幅広いインスタンスの選択肢
EC2インスタンスは複数のカテゴリー×機能の組み合わせがあり、600以上のインスタンスタイプを選ぶことができます。
■カテゴリーは6種類
・汎用
・コンピューティング最適化
・メモリ最適化
・高速コンピューティング
・ストレージ最適化
・HPC最適化
■様々な機能から選べる
・CPUの選択
・高周波数
・高いメモリフットプリント
・インスタンスストレージ
・高速ネットワーク
・サイズ
・ベアメタル
カテゴリーごとのユースケース
カテゴリーを選択する際には、下記のユースケースを参考にします。
■汎用
一般用途(ウェブサーバー、アプリケーションサーバーなど)
■コンピューティング最適化
高パフォーマンス処理(バッチ処理、モデリングなど)
■メモリ最適化
メモリ内の大規模データセット処理(データベース、データ分析など)
■高速コンピューティング
ハードウェアアクセラレーター利用(機械学習、流体力学、金融工学など)
■ストレージ最適化
ローカルストレージの大規模データセット処理(データベース、分散ファイルシステムなど)
■HPC最適化
ハイパフォーマンスコンピューティング
幅広いプロセッサの選択肢
【x86_64アーキテクチャ】
■intel Xeon Scalable processors
■AMD EPYC processors
【arm64アーキテクチャ】
■AWS Gravition processors
■Apple M1 processors
※すべてのインスタンスタイプの詳細は、公式ドキュメントを参照ください。
ネーミングポリシー
EC2インスタンスには以下のようにネーミングポリシーがあります。
ネーミングからカテゴリー・追加機能・世代・サイズを容易に判別することができますので覚えておきましょう。
新しいインスタンスのご紹介①
2023/02 東京リージョン提供開始した”第6世代のインスタンス”をご紹介します。
▼特徴はこちら
・第3世代Intel Xeon Scalableプロセッサ搭載
・3.5GHzのオールコアターボ周波数
・最大200Gbpsのネットワーク帯域幅
・最大80GbpsのAmazon Elastic Block Store(Amazon EBS)帯域幅
・最大秒間35万回のI/O
・ネットワーク仮想アプライアンスやリアルタイムビックデータ分析、インメモリデータベースなどネットワーク帯域を活かしたワークロードに理想的
新世代の方が基本的に性能は高く、価格も安い傾向があります!
特別な理由がない限り、積極的に最新世代を利用しましょう。
新しいインスタンスのご紹介②
2023/02 東京リージョン提供開始した”Amazon EC2 C7g インスタンス"をご紹介します。
C7gの「g」は、Gravitionの「g」。
AWS Gravitionを使用することによる1vCPUあたりの性能向上率が20%~40%向上します。
▼特徴はこちら
・AWS Gravition3プロセッサ搭載インスタンス
・コンピューティング最適化インスタンスの中で最高のコストパフォーマンス
・クラウドで最初に一般提供した、DDR5メモリ搭載インスタンス(高速、低消費電力)
・同等のx86系EC2インスタンスと比較し、同じ処理に使用するエネルギーが最大60%削減
・バッチ処理やHPC、電子設計自動化(EDA)、ビデオエンコーディング、科学的モデリングが理想的
性能は向上し、環境にも優しいAWS Gravition。
積極的に使用していきたいですね。
(2)EC2を利用する際の悩みは「イロハ」で解決
EC2インスタンスに関する悩みとして多く寄せられるのが下記です。
・インスタンスの種類が多い!どれを選べばいい?
・インスタンスをどのように配置すればいい?
・インスタンスは何台必要?
↓↓↓
この悩みは「EC2のイロハ」で解決します!
「イ」 インスタンスの変更はシンプル!
CPUアーキテクチャが同じであれば、インスタンスタイプを簡単に変更してテストできます。
(インスタンスを停止してから変更します)
マネジメントコンソール、AWS CLI、AWS SDKで変更が可能です。
ワークロードの特徴からいくつか候補を出し、実際に試して最適なインスタンスを見つけましょう!
「ロ」 ロケーションが豊富!
システム要件に合わせてぴったりなところを選びましょう!
■シングルAZ
■オンプレミスと連携
■ハイブリッド①
■ハイブリッド②
■ハイブリッド③
■マルチリージョン
・・・実に様々な場所にEC2インスタンスを配置することが可能です。
■可用性に関する検討ポイント
マルチAZ vs. マルチリージョン構成の場合は下記ポイントから検討します。
・業務システムに求められるRTO/RPOおよび可用性目標
・コスト(マルチAZ << マルチリージョン)
・下記の記事も参考ください。
可用性目標の実装例
AWS でのディザスタリカバリ (DR) アーキテクチャ
「ハ」 はみ出る負荷も任せて安心!
Amazon EC2 Auto Scalingでインスタンス数を簡単に管理できます。
■指定キャパシティの維持
ヘルスチェックで異常となったEC2インスタンスは、Auto Scalingによって自動で終了され、正常なインスタンスが起動されます。
■負荷に応じたEC2インスタンスの自動増減
▼負荷が増大した場合は、Auto Scalingによって自動でインスタンス数が起動されます。
▼負荷が減少した場合は、Auto Scalingによって自動でインスタンスが終了されます。
Amazon EC2 Auto Scalingを利用することで、EC2インスタンス数の維持が可能になり、
Auto ScalingグループをマルチAZ構成にすることで耐障害性が向上します。
最後に
EC2インスタンスは奥が深いので、語りだしたらキリがないですね。
EC2はAWSのメインサービスとも言えるので、知識を持つことで有効的に活用していきましょう。