sql >> データベース >  >> RDS >> Database

アマゾンウェブサービス(AWS)の自動スケーリングの概要

    クラウドコンピューティングの最も重要な利点の1つは、実行時の要求に応じてスケールアップまたはスケールダウンできることです。 AWS Auto Scalingは、需要に基づいてリソースを自動的にスケーリングできるコンポーネントです。 AWS Auto Scalingを使用すると、アプリケーションを監視し、容量を自動的に変更して、コストを可能な限り低く抑えながら、アプリケーションを最高のパフォーマンス機能で実行し続けることができます。この一連の記事では、AWS Auto Scaling、その機能とその有用性、コンポーネント、およびその仕組みについての洞察を提供します。

    クラウドコンピューティングの自動スケーリングとは何ですか?

    自動スケーリング、自動スケーリング、または自動スケーリングは、オンデマンドで計算リソースを割り当てるためのクラウドコンピューティング技術を指します。負荷分散機能に基づいてアプリケーションをスケーリングできるため、自動スケーリングと負荷分散は関連しています。

    自動スケーリングはクラウドコンピューティングの機能であり、企業はトラフィックと使用レベルに応じてクラウドサービスをスケールアップまたはスケールダウンできます。自動スケーリングソリューションは、Amazon Web Services(AWS)、Microsoft Azure、Google Cloud Platform(GCP)などのクラウドコンピューティングサービスプロバイダーから入手できます。

    読む: アマゾンウェブサービス(AWS)でKubernetesを使い始める

    AWS Auto Scalingとは何ですか?

    AWS Auto Scalingは、コンピューティングリソースを自動的に監視および調整して、AWSでホストされているアプリケーションの安定した予測可能なパフォーマンスを維持することに長けたAmazonサービスです。需要が増加し、不要になると減少するため、アプリケーションで使用可能な処理能力またはストレージリソースが増加します。 AWS Auto Scalingを使用すると、アプリケーションは常に監視され、容量が自動的に変更されて、一貫した予測可能なパフォーマンスを可能な限り低いコストで提供します。

    AWS Auto Scalingは、クラウドプロバイダーが提供するAuto Scalingツールとは異なります。このツールは、個々のサービスのみをスケーリングできます。このソリューションには2つの異なるAPIが含まれており、ステップスケーリングポリシーとスケジュールされたスケーリングが可能です。これらの機能はいずれもAWSAutoScalingではサポートされていません。さらに、Amazon Web Services(AWS)は、EC2AutoScalingのサポートも提供します。これはEC2インスタンスのグループをスケーリングできる機能です。

    自動スケーリングの利点

    自動スケーリングにより、クラウドアプリケーションのワークロードとサービスは、さまざまな状況下で最適なパフォーマンスとアクセシビリティレベルで動作できます。

    自動スケーリングの利点は次のとおりです。

    割引価格

    自動スケーリングを使用していない組織やクラウドのお客様は、トラフィックの急増やトラフィックパターンの変化に対処するために、システムに継続的に容量を追加する必要があります。自動リソーススケーリングを使用すると、必要な場合にのみリソースを増やし、トラフィックが減少したときにリソースを減らすことができます。これは、企業がクラウドコンピューティングの費用を最小限に抑えるための1つの方法です。

    AWSマネジメントコンソールを使用すると、AWSサービスを使用している間、使用状況とコスト効率を追跡できます。これにより、使用したものと必要なものだけを支払うことができます。 AWSは、使用されている容量を監視し、必要に応じてユーザーに警告します。 AWS Autoscalingは、使用されていないリソースの数を減らし、過剰な支出を回避するのに役立つ無料のサービスです。

    自動化

    リソースが必要な場合、組織は必要に応じて手動でリソースを追加できます。ただし、これはスケーラブルまたは効率的な方法ではありません。自動スケーリングは自動化されており、ポリシー主導であるという事実は、必要な場合にのみアクティブになるため、手動スケーリングよりも効率的であることを意味します。

    フォールトトレランスの改善

    サービスの障害は、アプリケーションロジックの間違いや問題、ハードウェアの欠陥など、さまざまな要因によって引き起こされる可能性があります。自動スケーリングを使用する場合、ワークロードの正常性とパフォーマンスが継続的に評価され、ワー​​クロードが増加したときに必要に応じてリソースが自動的に置き換えられ、スケーリングされます。

    監視

    AWS Auto Scalingを使用する場合、アプリケーションは常に追跡され、その容量は自動的に変更され、実現可能な最小のコストで一貫した予測可能なパフォーマンスを提供します。たとえば、AWS Auto Scalingを使用すると、高可用性を維持しながら、シンプルで強力なユーザーインターフェースを使用して、Amazon DynamoDBテーブル、Amazon EC2インスタンスとスポットフリート、Amazon Auroraレプリカ、AmazonECSジョブのスケーリングプランを作成できます。

    サービスの可用性

    クラウドサービスは、リソースを大量に消費するアプリケーションや、構成されたインスタンスが処理できるよりも多くのトラフィックで過負荷になると、利用できなくなる可能性があります。トラフィックが急増した場合、自動スケーリングはサービスが引き続き利用可能であることを保証するのに役立つ場合があります。

    リソースプロビジョニングの管理

    Autoscalingを利用して、すべてのEC2自動スケーリンググループのリソースプロビジョニングと、アプリケーションで使用されているデータベーステーブルを管理できます。異なるコンソールを切り替えることなく、スケーラブルなすべてのリソースの平均使用量をすばやく簡単に観察できます。

    リソースの信頼性の向上

    AWS Auto Scalingは、スケーラブルなリソース、つまりスケーリング可能なリソースのパフォーマンスを特定して追跡することに長けています。このようなリソースは、さまざまなクラウドサービスにもまたがることができます。これらのリソースには、次のものが含まれます。

    • Amazon Elastic Container Service(ECS)コンポーネント
    • Auroraレプリカまたはクラスター
    • 自動スケーリンググループ
    • DynamoDBグローバルセカンダリインデックスまたはテーブル
    • Elastic Compute Cloud(EC2)
    • EC2スポットフリート

    需要の増加に伴い、AWS Auto Scalingサービスはそれらのリソースを自動的にスケーリングでき、需要が低下すると、それらをスケールダウンできます。

    自動スケーリングがなかったらどうなるでしょうか?

    自動スケーリングを使用しない場合、リソースは特定のリソースセットに対して事前定義された構成内で指定および制限されます。たとえば、企業が重要な分析ワークロードを処理したい場合、最初に指定されたよりも多くのコンピューティングおよびメモリリソースが必要になる場合があります。自動スケーリング戦略を導入すると、コンピューティングリソースとメモリリソースを自動的にスケーリングして、データを時間どおりに処理できます。

    さらに、サービスの可用性を保証するために自動スケーリングが必要です。たとえば、組織は、特定のサービスのトラフィックの管理を予期するインスタンスタイプの初期セットを指定する場合があります。イベントが原因でトラフィックが急増した場合、サービスサイトの一般的な使用パターンが大幅に変更される可能性があります。自動スケーリングは、トラフィックの急増時にサービスの可用性を確保することで、消費者の需要を満たしながら、サービスが効果的に動作し続けるために必要なリソースを提供する場合があります。

    AWSCloudPlatformでの自動​​スケーリングサービス

    AWSAutoScalingがAWSで実行されているサービスのスケーラビリティの管理にどのように役立つかを見てみましょう。

    • EC2インスタンスの自動スケーリング–これは、着信トラフィックの需要を満たすためにアプリケーションに必要なAmazonEC2インスタンスの数を維持するのに役立ちます。 EC2インスタンスで構成されるEC2自動スケーリンググループを構築でき、これらの各グループの最小および最大スケーリングしきい値を定義できます。
    • Amazon EC2スポットフリートリクエスト–スポットフリートはEC2スポットインスタンスのグループで構成されます。 AWS Auto Scalingは、需要に基づいてスポットフリートの容量を自動的に調整できます。
    • Elastic Container Service(ECS)Auto Scaling – AWS Auto Scalingは、AmazonWebServicesでのECSコンテナタスクの容量を自動的に拡張または削減します。
    • DynamoDB Auto Scaling –これにより、テーブルまたはセカンダリインデックスのスケーリングポリシーが作成されます。例として、読み取りと書き込みの容量、および提供される最大容量と最小容量の単位を増やすかどうかを指定することができます。テーブルまたはインデックスのプロビジョニングされた容量ユニットの最大数と最小数を指定することもできます。

    AWSAutoScalingの概要

    AWS Auto Scalingの推奨事項を利用して、パフォーマンスの向上や費用の削減などを行うことができます。AWSEC2AutoScalingをAmazonEC2Auto Scalingと組み合わせて使用​​して、より多くのリソースをスケーリングすることもできます。

    AWS Auto Scalingは、米国東部(バージニア北部)、米国東部(オハイオ)、米国西部(オレゴン)、欧州連合(アイルランド)、アジア太平洋のパブリックAWSリージョンを含むいくつかのリージョンで利用できます。間もなくこのリストにさらに地域が追加されます。


    1. グループごとの最大値

    2. Oracle SQLクエリを使用して、列のカンマ区切り値を行に分割します

    3. SQLiteでミリ秒を日付に変換する方法

    4. SQLServerのジョブ履歴を取得する4つの方法