PERF02-BP01 ワークロードに最適なコンピューティングオプションを選択する - AWS Well-Architected Framework

PERF02-BP01 ワークロードに最適なコンピューティングオプションを選択する

ワークロードに最適なコンピューティングオプションを選択することで、パフォーマンスを高め、不要なインフラストラクチャコストを削減し、ワークロードを維持するために必要な運用工数を軽減できます。

一般的なアンチパターン:

  • オンプレミスで使用されていたものと同じコンピューティングオプションを使用している。

  • クラウドコンピューティングのオプション、機能、ソリューション、およびそうしたソリューションがコンピューティング性能の向上にどのように役立つかについての認識が足りない。

  • ワークロードの特性により的確に適合する代替のコンピューティングオプションがあるにもかかわらず、スケーリングやパフォーマンスの要件を満たすために既存のコンピューティングオプションを過剰にプロビジョニングしている。

このベストプラクティスを活用するメリット: コンピューティング要件を特定し、利用可能なオプションに照らし合わせて評価することで、ワークロードのリソース効率を高めることができます。

このベストプラクティスを活用しない場合のリスクレベル:

実装のガイダンス

クラウドワークロードを最適化してパフォーマンスを効率化するには、ユースケースとパフォーマンス要件に最適なコンピューティングオプションを選択することが重要です。AWS では、クラウド内のさまざまなワークロードに対応するさまざまなコンピューティングオプションを用意しています。例えば、 Amazon EC2 を使用した仮想サーバーの起動および管理、AWS Lambda を使用したサーバーのプロビジョニングや管理が不要なコードの実行、Amazon ECS または Amazon EKS を使用したコンテナの実行と管理、または AWS Batch を使用した大量データの並列処理を行えます。スケールとコンピューティングニーズを基に、状況に最適なコンピューティングソリューションを選んで構成する必要があります。また、コンピューティングソリューションにもそれぞれ利点と欠点があるため、1 つのワークロードで複数のタイプを使用することも検討できます。

次の手順では、ワークロードの特性とパフォーマンス要件に合わせて適切なコンピューティングオプションを選択する方法を説明します。

実装手順

  1. ワークロードのコンピューティング要件を把握します。主な要件には、処理ニーズ、トラフィックパターン、データアクセスパターン、スケーリングの必要性、レイテンシー要件があります。

  2. AWS 上のワークロードで使用できるさまざまなコンピューティングオプションについて学びます (概要については、 PERF01-BP01 利用可能なクラウドサービスと機能について学び、理解するを参照)。AWS の主要なコンピューティングオプション、その特徴、一般的な使用例は次のとおりです。

    AWS のサービス 主な特徴 一般的なユースケース
    Amazon Elastic Compute Cloud (Amazon EC2) ハードウェア、ライセンス要件、さまざまなインスタンスファミリーの幅広い選択肢、プロセッサタイプおよびコンピューティングアクセラレーターの専用オプション リフトアンドシフトの移行、モノリシックなアプリケーション、ハイブリッド環境、エンタープライズアプリケーション
    Amazon Elastic Container Service (Amazon ECS) Amazon Elastic Kubernetes Service (Amazon EKS)  簡単な導入、一貫性のある環境、スケーラビリティ マイクロサービス、ハイブリッド環境
    AWS Lambda  イベントに応じてコードを実行し、基盤となるコンピューティングリソースを自動的に管理する サーバーレスコンピューティングサービス。 マイクロサービス、イベント駆動型アプリケーション
    AWS Batch 効率的かつ動的な Amazon Elastic Container Service (Amazon ECS)、 Amazon Elastic Kubernetes Service (Amazon EKS)、 AWS Fargate コンピューティングリソースのプロビジョニングとスケーリング (ジョブ要件に応じてオンデマンドインスタンスまたはスポットインスタンスを使用するオプションがあります) HPC、機械学習モデルのトレーニング
    Amazon Lightsail 小規模なワークロードを実行するための事前構成済みの Linux および Windows アプリケーション シンプルなウェブアプリケーション、カスタムウェブサイト
  3. 各コンピューティングオプションに関連するコスト (時間単位の料金やデータ転送など) と管理諸経費 (パッチ適用やスケーリングなど) を評価します。

  4. 非運用環境で実験とベンチマーキングを行い、どのコンピューティングオプションがワークロード要件に最も適しているかを特定します。

  5. 実験を通じて新しいコンピューティングソリューションを特定したら、移行を計画し、パフォーマンスメトリクスを検証します。

  6. Amazon CloudWatch のような AWS モニタリングツールや AWS Compute Optimizer のような 最適化サービスを使用し、 実際の使用パターンに基づいてコンピューティングリソースを継続的に最適化します。

リソース

関連ドキュメント:

関連動画:

関連する例: