2020/12/3

AWS Auto Scalingとは?注意ポイント3つやメリットも紹介

 
  

AWS Auto Scalingとは

AWS Auto Scalingとはアプリケーションサービスの利用をモニタリングし可能な限り容量の増減(スケーリング)を調整するものです。そのためコストを抑えることができます。 AWS Auto ScalingはAWSのEC2インスタンスとスポットフリートやサービス、DynamoDBテーブルとインデックス、Auroraレプリカ、ECSタスクなどリソースのためにスケーリングプランを構築できます。

EC2インスタンスについて

AWS EC2インスタンス(仮想サーバー)は、最適化されたCPU、メモリ、ストレージ、ネットワークキャパシティの組み合わせによって構成されたアプリケーションのリソースです。 AWS EC2 Auto ScalingはAWS EC2フリート(オンデマンドとスポットのインスタンスグループ)の正常性の維持に役立つでしょう。AWS Auto Scalingは、ターゲット追跡スケーリングポリシーのみに対応します。

AWS Auto Scalingのメリット3つ

AWS Auto Scalingのメリットは、断続的なワークロード環境で予測が不可能な変化が常に起こる環境でも最適なパフォーマンスを自動的に維持できることです。 インターフェイスが直感的な設定ができ、使用率のレベルを調整するため、異なるリソースのグループの需要変化に対応する仕組みづくりを自動化する計画が立てられるのです。 AWS Auto Scalingを活用することでコスト効率を最適化できます。

Auto Scalingのメリット1:可用性の維持・向上

Auto Scalingではユーザーがリソース使用率スケーリング設定をします。その設定した範囲で最適なアプリケーションの可用性を維持できます。継続的にモニタリングしてアプリケーションに適したパフォーマンスレベルで動作します。 需要が急に増えた時はサービスの品質を維持するようAuto Scalingが制約していたリソースの容量を自動的に増加したり、余る時は自動的に減らしたりします。

動的スケーリング

Auto Scalingの動的スケーリングは、スケーリング設定時にスペックに対するターゲットの追跡とスケーリングポリシーを作成し、使用率の変化にリアルタイムで対応して許容量を調整します。 スケーリングポリシーを設定すると、クラウドサーバー上でコンテナを簡単に動かせる(ECS)サービスが、設定された使用率を維持するように許容量を調整し提供するよう、増加した負荷に応じて別のタスクを追加します。

予測スケーリング

予測スケーリングは、機械学習アルゴリズムを使ってトラフィックの変動を予測します。予測スケーリングは各リソースの履歴が分析され翌2日間の負荷を定期的に予測します。 予測によりスケジュールされたスケーリングアクションは、アプリケーションが必要とする前にリソースのキャパシティを準備します。 予測スケーリングは動的にスケーリング機能し予測によって用意されたターゲット値に稼働率を一定にしながら、CPU使用率を確保します。

Auto Scalingのメリット2:負荷分散

Auto Scalingのグループで負荷分散機能としてElastic Load Balancingを使用することができます。ロードバランサーをセットアップして取り込み、Auto Scalingグループに登録します。 Auto Scaling グループで使用できる3つのロードバランサー (Classic Load Balancer、Application Load Balancer、Network Load Balancer)があります。

Auto Scalingのメリット3:コストの最適化

AWS Auto Scaling自体の使用は無料です。AWS Auto ScalingはAWSのサービスの使用時に、使用率やコストの効率性を最適化する有効な手段となるでしょう。必要なリソースを実際使用している分のみ支払いが発生する仕組みです。 リソースの需要が減ると、コスト最適化の機能は、需要の変動があったアプリケーションで緩衝記憶装置(バッファ)容量の減少に対応できる場合はリソースの削減を行い、AWS環境のコスト最適化に貢献します。

AWS Auto Scalingの注意点3つ

AWS Auto Scaling使用時の主な注意点を3つお伝えします。 インスタンスが消滅する理由や対処法、複数のインスタンスタイプがある中で活用しているインスタンスの状態把握をすること、急激なアクセス増加の場合の対応の仕方についてお話しします。

Auto Scalingの注意点1:インスタンス消滅時のデータ保護

AWS EC2 Auto Scalingのインスタンス作成時に、容量の設定と需要に応じてトラブルが発生した場合はインスタンスが消滅することがあります。データは消えてしまうためコピーを生成することが不可能になります。 したがって、バックアップデータを作成する設定が必要です。ライフサイクルフック機能を使用することで、インスタンス起動や消滅時にカスタムアクションができます。Amazon RDSはデータを簡単に移行またはレプリケートできます。

Auto Scalingの注意点2:インスタンスの状態把握

AWS Auto Scalingは、インスタンスの稼働状態を確認するまで待機する猶予期間を決定します。猶予期間中にヘルスチェックし改善する必要があります。あらかじめ300秒の設定がされていますが、対応に必要な猶予期間を再設定できます。 AWS EC2のステータスチェックはデフォルト機能で、Elastic Load Balancing (ELB)はインスタンスグループごとの健全性ヘルスチェックを有効に設定できます。

Auto Scalingの注意点3:急激なアクセス増加への対応

Auto Scalingを利用している間、予想を超える急激なアクセス増の場合は、即対応することが難しいことがあります。 急激なサイトアクセス数の増加が起きることとは、例えばスポーツ観戦の試合の視聴者数が急激に増えたり、スキャンダルの発生によって検索や書き込みなどのデータが集中したりした場合などです。

急なアクセス増加に備えるには

AWS Auto Scalingの急なアクセス増加に備える対応策が必要です。AWS Auto Scalingのオートスケールはユーザー数の増加に対してリソースを増やす機能ですが、急激な増加に対して数秒で対応するのは非常に困難です。 そのため高速コンテンツ配信ネットワークサービスのAmazon CloudFrontの導入や、処理上限を設けるAmazon API GatewayなどAWSの他のサービスで対応する必要があります。

AWS Auto Scalingを始める手順2ステップ

AWS Auto Scalingを始める手順についてお伝えします。Auto Scaling は、AWSマネジメントコンソール、AWSコマンドラインインターフェイス (CLI) 、または AWS SDKを通じて設定できます。 AWSのアカウントを作成するとコンソールにサインインが可能で、新規の利用者は無料利用枠を使用できます。

起動テンプレートの作成

AWS EC2のダッシュボードで起動テンプレートを作成します。起動テンプレートでは、テンプレート名を作成し、Amazonマシンイメージ(AMI)を選択します。 次に用途に合わせたインスタンスタイプの指定をしますが、公式サイトでは32ビットAMIをサポートするt2.micro(無料利用枠)が推奨されています。そしてセキュリティグループを設定し任意で仮想ファイアウォールを設定できます。

Auto Scalingグループを作成する

Auto Scalingウィザードを使用してグループ名を指定し、最小容量、最大容量、希望する容量といったグループサイズを設定します。 Auto Scalingグループ用のネットワークを指定します。起動テンプレートでネットワークタイプはVPC、EC2 classic、サブネット、およびアベイラビリティーゾーンを設定できますが、グループ指定されている内容によっては指定できない場合があります。

注意点を踏まえてAWS Auto Scalingの導入を検討してみよう

AWS Auto Scalingの注意ポイントやメリットについて紹介しました。用途にあわせたスケーリングを選択することが必要です。予測スケーリングを活用するには最大2週間までの履歴データを必要としますが、1日分でも予測スケーリングスケジュールを生成が可能です。 AWS Auto Scalingの始め方はいくつかあり、EC2 Auto ScalingはEC2インスタンスのタイプを指定する起動テンプレートを作成します。]]>

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

この記事の監修者・著者

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

おすすめの動画

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

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

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