すべてのプロダクト
Search
ドキュメントセンター

Elastic Container Instance:自動スケーリングを使用して、エラスティックコンテナインスタンスを自動的にスケールインまたはスケールアウトします

最終更新日:Feb 21, 2025

Alibaba Cloudの自動スケーリングは、ビジネス要件とポリシーに基づいてコンピューティング能力(インスタンス数)を自動的に調整するサービスです。エラスティックコンテナインスタンスでコンテナ化されたアプリケーションを実行する場合、自動スケーリングを使用して、ワークロードに基づいてエラスティックコンテナインスタンスをスケールインまたはスケールアウトできます。これにより、ビジネスの正常な運用を確保しながらコストを削減できます。

説明

自動スケーリングは、ワークロードの変化とスケーリングポリシーに基づいてインスタンスを自動的に追加または削除するクラウドサービスです。自動スケーリングを使用すると、十分なコンピューティングリソースを確保し、アイドル状態のリソースを防ぎ、コストを削減できます。詳細については、自動スケーリングとは を参照してください。

同じサービスを実行するエラスティックコンテナインスタンスをスケーリンググループに追加し、スケーリンググループの最小インスタンス数を設定して日々のビジネス運用を確保し、スケーリンググループの最大インスタンス数を設定して過剰なコストを回避できます。また、スケーリングルールに基づいてスケジュールタスクまたはイベントトリガータスクを実行して、スケーリンググループ内のエラスティックコンテナインスタンスを自動的にスケールインまたはスケールアウトすることもできます。次の図は、エラスティックコンテナインスタンスにおける自動スケーリングの機能を示しています。

ESS2

次のシナリオでは、自動スケーリングを使用してエラスティックコンテナインスタンスをスケールインまたはスケールアウトできます。

  • データ転送の変化が予測可能であり、特定の時点でインスタンスをスケーリングする必要がある場合。

    たとえば、ゲーム企業で毎日18:00:00から24:00:00までデータ転送量が急増する場合、毎日18:00:00にエラスティックコンテナインスタンスをスケールアウトし、24:00:00にインスタンスをスケールインするスケジュールタスクを作成できます。

    ESS3

  • データ転送の変化が予測不可能であり、メトリックに基づいてインスタンスを自動的にスケーリングする必要がある場合。

    たとえば、動画ストリーミング企業のデータ転送の変化が予測不可能な場合、イベントトリガータスクを作成して、スケーリンググループ内のエラスティックコンテナインスタンスのCPU使用率を監視できます。システムは、監視結果に基づいてインスタンスを自動的にスケールインまたはスケールアウトし、CPU使用率を60%に維持します。

    ESS4

手順

次の図は、自動スケーリングを使用してエラスティックコンテナインスタンスを自動的にスケールインまたはスケールアウトする方法を示しています。

image
説明

スケーリンググループの作成時に[インスタンス設定ソース]パラメータを[既存のインスタンスを選択]に設定すると、自動スケーリングは自動的にスケーリング設定を作成して有効にします。この場合、スケーリング設定を手動で作成せずにスケーリンググループを有効にできます。

  1. スケーリンググループの作成

    スケーリンググループは、同じシナリオ用に設計されたエラスティックコンテナインスタンスを管理するために使用されます。スケーリンググループを使用して、インスタンスの最大数と最小数、インスタンスのスケールインとスケールアウトに使用するインスタンステンプレート、およびインスタンスを削除するポリシーを指定できます。このようにして、スケーリンググループはビジネス要件に基づいてインスタンスを管理できます。詳細については、スケーリンググループの作成 を参照してください。

  2. スケーリング設定の作成

    自動スケーリングがスケーリンググループをスケールアップすると、自動スケーリングはスケーリング設定に基づいてエラスティックコンテナインスタンスを作成し、エラスティックコンテナインスタンスをスケーリンググループに追加します。詳細については、エラスティックコンテナインスタンスタイプのスケーリング設定の作成 を参照してください。

    説明

    ほとんどの場合、コンテナイメージのサイズは大きくなります。コンテナイメージをプルすると、エラスティックコンテナインスタンスの起動速度が低下します。スケーリング設定を作成するときに、イメージキャッシュの自動一致を有効にすることをお勧めします。これにより、エラスティックコンテナインスタンスを高速に作成できます。

  3. スケーリンググループの有効化

    スケーリングイベントは、[有効]状態のスケーリンググループでのみ発生します。スケーリンググループにアクティブなスケーリング設定がある場合、スケーリンググループを有効にするように求めるメッセージが表示されます。[スケーリンググループ]ページに移動して、スケーリンググループを手動で有効にすることもできます。詳細については、スケーリンググループの管理 を参照してください。

  4. スケーリングルールの作成

    スケーリングルールは、スケーリングアクティビティをトリガーするために使用されます。ビジネス要件に基づいて、次のいずれかのタイプのスケーリングルールを作成できます。

    • 単純なスケーリングルール:増減するインスタンス数、またはスケーリンググループで維持するインスタンス数を指定します。

    • ターゲット追跡スケーリングルール:メトリックを選択し、そのメトリックの目標値を設定できます。その後、システムは、メトリック値を目標値に近づけるためにインスタンスをスケールインまたはスケールアウトします。

    詳細については、スケーリングルールの作成 を参照してください。

  5. スケーリングルールの実行

    次のいずれかの方法を使用してスケーリングルールを実行し、スケーリンググループ内のエラスティックインスタンスをスケールインまたはスケールアウトできます。詳細については、スケーリングルールの実行 を参照してください。

    • 手動実行:この方法は、一時的なビジネス需要に対応するのに適しています。

    • スケジュールタスクをトリガーすることによる自動実行:スケジュールタスクを使用して、指定した時点でスケーリングルールを実行できます。この方法は、特定のパターンに従うワークロードの変動を管理するのに適しています。スケジュールタスクの詳細については、概要 を参照してください。

    • イベントトリガータスクをトリガーすることによる自動実行:イベントトリガータスクを使用して、特定のメトリックを監視し、アラートを報告し、スケーリングルールを実行できます。この方法は、特定のパターンに従わないワークロードの変動を管理するのに適しています。イベントトリガータスクの詳細については、概要 を参照してください。

設定例

シナリオ

設定例

効果

企業は毎日のデータ転送に10個のエラスティックコンテナインスタンスを必要としています。ただし、データ転送量は毎日18:00:00から23:00:00まで劇的に増加します。企業はこの期間中に5つのエラスティックコンテナインスタンスを追加する必要があります。

  1. スケーリンググループを作成します。スケーリンググループのタイプをエラスティックコンテナインスタンスに設定し、最小インスタンス数を10、最大インスタンス数を20に設定します。

  2. スケーリング設定を作成します。スケーリング設定を作成するときに、インスタンス設定ソースを指定します。

  3. スケーリンググループを有効にします。スケーリンググループを有効にすると、システムは10個のエラスティックコンテナインスタンスを作成します。

  4. 2つの単純なスケーリングルールを作成します。

    • ルール1:インスタンス数を15に調整します。

    • ルール2:インスタンス数を10に調整します。

  5. 2つのスケジュールタスクを作成します。

    • タスク1:毎日17:55:00にルール1を実行します。

    • タスク2:毎日23:05:00にルール2を実行します。

オフピーク時には、10個のエラスティックコンテナインスタンスが毎日のデータ転送をサポートします。18:00:00から23:00:00までのピーク時には、15個のエラスティックコンテナインスタンスが使用されます。

企業は毎日のデータ転送に10個のエラスティックコンテナインスタンスを必要としています。ただし、企業はデータ転送の変化と増減する必要があるエラスティックコンテナインスタンスの数を予測できません。

  1. スケーリンググループを作成します。スケーリンググループのタイプをエラスティックコンテナインスタンスに設定し、最小インスタンス数を10、最大インスタンス数を30に設定します。

  2. スケーリング設定を作成します。スケーリング設定を作成するときに、インスタンス設定ソースを指定します。

  3. スケーリンググループを有効にします。スケーリンググループを有効にすると、システムは10個のエラスティックコンテナインスタンスを作成します。

  4. ターゲット追跡スケーリングルールを作成します。

    • 監視メトリック:CPU使用率。

    • 目標値:60%。

    • その他のパラメータにはデフォルト値を使用します。

  5. イベントトリガータスクを表示して、スケーリングのトリガー条件を確認します。

    ターゲット追跡スケーリングルールが作成されると、システムはCPU使用率を監視するイベントトリガータスクを自動的に作成します。

システムは、スケーリンググループ内のエラスティックコンテナインスタンスのCPU使用率を継続的に監視し、イベントトリガータスクのスケーリングトリガー条件に基づいてエラスティックコンテナインスタンスを自動的にスケールインまたはスケールアウトします。このようにして、システムはCPU使用率を60%未満に維持しながら、スケーリンググループ内に少なくとも10個のエラスティックコンテナインスタンスを保持して、通常のビジネス運用を確保します。