2022/10/4

AWSの「ベストプラクティス」とは|概要やメリットについて解説

 
  

AWSの「ベストプラクティス」とは?


AWSの「ベストプラクティス」とは、AWS上で適切なアーキテクチャを設計するための「設計原則」をまとめたものです。

このベストプラクティスは、AWS社のソリューションアーキテクト(SA)と顧客との設計上のやり取りを通じて、長期間の経験から生み出されました。

そもそも「ベストプラクティス(Best Practice)」とは、ある目的を実現するために極めて効果的な手法やプロセスのことを一般的には示します。

AWSでは、このベストプラクティスを「AWS Well-Architected フレームワーク」と呼称しています。またこういった設計原則のベストプラクティスは、一般的には「リファレンス・アーキテクチャ」とも呼ばれます。

AWSの「ベストプラクティス」のメリットとは?

AWSの「ベストプラクティス」には、これを参照して設計することで、顧客要件に応じたシステムの設計を検討する労力、クラウド特有のアーキテクチャ設計や性能評価のための労力等を削減することができるというメリットがあります。

具体的には、AWS上でアーキテクチャを設計する際に、適切に設計するための指針となる「設計原則」とは何かが分かること、そして設計時のアーキテクチャが適切であるかを第三者の視点からレビューして、問題点を抽出できること、などが挙げられます。

つまり、AWSの利用経験がない、もしくは使い始めたばかりの方には、AWSサービスの仕様を詳細に検討したり、PoC(概念検証)のためにシステムのプロトタイプを構築して性能検証したりといった作業が不要になります。

加えて、クラウドのAWSであるから可能になる設計、クラウドの特徴を考慮した方が良くなる設計を簡単に行えるようになります。

AWSの「ベストプラクティス」の概要


AWSの「ベストプラクティス(AWS Well-Architected フレームワーク)」の概要は、「①運用上の優秀性」、「②セキュリティ」、「③信頼性」、「④パフォーマンス効率」、「⑤コスト最適化」の5個の観点で構成されています。

これらの観点を解説するための資料として、適切アーキテクチャを設計するための設計原則をまとめた「ホワイトペーパー」、設計したアーキテクチャがこの設計原則に適合しているかを確認するための「QA形式のチェックリスト」が提供されています。

各観点について、以下に詳しく解説していきます。

①運用上の優秀性について

①運用上の優秀性(オペレーショナルエクセレンス)については、ビジネスにおけるサービスの価値を向上させるために、システムの稼働状況、監視モニタリング、運用プロセスの継続的改善について、ベストプラクティスがまとめられています。

具体的なトピックとしては、システム改修時の作業自動化、アラート等の発生したイベントへの対応、通常時のシステム運用を管理していくために必要な工程標準化などがあります。

②セキュリティについて

②セキュリティについては、顧客情報や取引情報といった機密データとシステムのセキュリティ保護について、ベストプラクティスがまとめられています。

具体的なトピックとしては、機密性と整合性を保持したデータ類、アクセス権限の管理、アクセスログの保全、システムのセキュリティ保護、不正アクセス等によるセキュリティ上のイベント発生を検知する手法の確立などがあります。

③信頼性について

③信頼性については、システムの各種機能が想定通りに実行されることを保証する観点で、ベストプラクティスがまとめられています。

例えば、障害発生時からの「回復力」を保証しているアーキテクチャを採用したシステムは、障害発生状況から迅速に復旧することで、自社サービスが停止することを防ぐことができます。

また具体的なトピックとしては、分散処理システムの設計手法、障害時の復旧計画手法、システム変更の処理方式などがあります。

④パフォーマンス効率について

④パフォーマンス効率については、ITインフラ基盤やシステムリソースを効率的に使用する手法について、ベストプラクティスがまとめられています。

具体的なトピックとして、「Amazon EC2」等の実行インスタンスのシステム要件に応じた適切なインスタンスタイプやサイズの選択手法、「Amazon RDS」等のパフォーマンスをモニタリングする手法、サービスの急激な拡大時における性能効率を維持するために必要な判断手法があります。

⑤コスト最適化について

⑤コスト最適化については、無駄なコストを回避する手法について、ベストプラクティスがまとめられています。

具体的なトピックとしては、費用(AWS利用料金)が発生するAWSサービスの確認方法と管理方法、最適化されたリソースタイプの選択方法、長期的なレンジでの費用の増減傾向の分析手法、ビジネス要件に応じながらのコストを抑制したスケーリング手法などがあります。

知っておきたい10個の「ベストプラクティス」


知っておきたい10個の「ベストプラクティス」をご紹介します。

このベストプラクティスは、新規にAWS導入を検討されている方、オンプレミスからクラウドへのマイグレーションを検討されている方、AWSを利用開始してベストプラクティスを適用できているかを確認したい方などにとって非常に参考になります。

ベストプラクティス1:スケーラビリティを確保する

ベストプラクティス1として、スケーラビリティを確保します。

具体的には、自分が設計したアーキテクチャが、「需要の変化」に対応可能かを検証します。

例えば、自社サイトにアクセスが集中した際に、事前に設定したしきい値でこれを検知し、アラートを発報して、自動スケーリングが待ち時間なく実行されるかを検証します。

ベストプラクティス2:環境を自動化する

ベストプラクティス2として、環境を自動化します。

具体的には、AWSサービスなどのシステムリソースの生成(プロビジョニング)、停止、設定といった作業は、可能な限り自動化していきます。

ベストプラクティス3:使い捨て可能なリソースを使用する

ベストプラクティス3として、使い捨て可能なリソースを使用します。

具体的な手法としては、いつでも終了(廃棄)可能な状態でリソースを稼働すること、個々のリソースに名前は付けずに「ラベル(もしくはタグ)」で管理すること、「Amazon EC2」などのインスタンスには状態(ステート)を持たせない、いわゆる「ステートレス」とすること、があります。

ベストプラクティス4:コンポーネントを疎結合にする

ベストプラクティス4として、コンポーネントを疎結合にします。

「疎結合」とは、システムの構成要素間の結合度や依存関係が弱い状態であり、各要素の独立している状態のことです。

具体的なメリットとしては、障害ポイントが判別しやすい、必要な部分のみを変更しやすいなどがあります。

ベストプラクティス5:サーバーではなくサービスで設計する

ベストプラクティス5として、サーバーではなくサービスで設計します。

具体的な手法としては、ユーザー認証とユーザー状態の保存にはAWSのマネージドサービスを利用する、「AWS Lambda」などのサーバーレスのソリューションをプロビジョニングする、メッセージキューを活用してアプリケーション間の通信を処理する、などがあります。

ベストプラクティス6:適切なデータベースソリューションを選択する

ベストプラクティス6として、適切なデータベース(DB)のソリューションを選択します。

具体的な検討事項としては、レイテンシー(遅延)の許容範囲、サポートされる最大同時接続ユーザー数、DBに発行するクエリの種類、DBの整合性維持のレベルなどがあります。

ベストプラクティス7:単一障害点をなくす

ベストプラクティス7として、「単一障害点」をなくします。

「単一障害点」は、「SPOF (Single Point of Failure)」とも呼ばれ、そのポイント(サーバー、DB等)が停止するとシステムの全体が停止するようなポイントのことです。

具体的な手法としては、「Amazon EC2」などのシステムリソースを冗長化することで「単一障害点」を無くしていきます。

ベストプラクティス8:コストを最適化する

ベストプラクティス8として、コストを最適化します。

具体的には、AWSの「コストエクスプローラー(コスト可視化ツール)」を活用して、定期的に利用料金をチェックします。

ベストプラクティス9:キャッシュを使用する

ベストプラクティス9として、キャッシュを使用します。

Webシステムにおける具体的な例としては、「Amazon CloudFront」のような「CDN(Contents Delivery Network)」を利用することで、クライアント(アクセス元)に近いネットワークにエッジサーバーを用意し、そこからコンテンツを配布する、といった手法があります。

ベストプラクティス10:すべてのレイヤーでセキュリティを確保する

ベストプラクティス10として、すべてのレイヤーでセキュリティを確保します。

具体的な手法としては、AWSのマネージドサービスを活用する、各種リソースへのアクセスを記録する、多要素認証(MFS)を使用する、といったものがあります。

ベストプラクティスを導入しよう!


「AWS Well-Architected Tool」を活用することで、アーキテクチャの状態をチェックし、最新のAWSアーキテクチャの「ベストプラクティス」と簡単に比較することが可能です。

こういったツールを活用して自社サービスに「ベストプラクティス」を導入し、理想的なアーキテクチャを目指してみてはいかがでしょうか。

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】