スケーリンググループとは、同様のビジネスシナリオで使用できる Elastic Compute Service(ECS)インスタンスまたはエラスティックコンテナインスタンスの集合です。コンテナアプリケーションをエラスティックコンテナインスタンスで実行する場合、Auto Scaling を有効にして、ビジネス要件に基づいてエラスティックコンテナインスタンスの数を自動的にスケーリングできます。これにより、スムーズなサービス提供が保証され、コスト効率が最大化されます。
手順
先に進む前に、スケーリンググループの作成に使用するメソッドを選択してください。Alibaba Cloud は、スケーリンググループを作成するための複数のメソッドを提供しています。特定のビジネス要件に基づいて、このトピックに記載されている手順に従うことができます。
既存のエラスティックコンテナインスタンスがあり、そのインスタンスの構成に基づいてスケーリンググループを作成する場合は、次のリンクを参照してください。方法 1:既存のインスタンスの構成に基づいてスケーリンググループを作成する
スケーリンググループを迅速に作成し、後でグループ内のインスタンス構成ソースを構成する必要がある場合は、次のリンクを参照してください。方法 2:スケーリンググループを最初から作成する
Kubernetes YAML ファイルを使用してスケーリンググループを作成および管理する場合は、次のリンクを参照してください。方法 3:Kubernetes YAML ファイルを使用してスケーリンググループを作成する
方法 1:既存のインスタンスの構成に基づいてスケーリンググループを作成する
方法 2:スケーリンググループを最初から作成する
方法 3:Kubernetes YAML ファイルを使用してスケーリンググループを作成する
パラメーター
スケーリンググループを作成するための基本パラメーター
パラメーター | 説明 |
スケーリンググループ名 | スケーリンググループの名前は、2 ~ 64 文字の長さで、文字、数字、ピリオド(.)、アンダースコア(_)、ハイフン(-)を含めることができます。名前は文字または数字で始める必要があります。 |
タイプ | スケーリンググループでコンピューティング能力を提供するインスタンスのタイプ。スケーリングイベント中に Auto Scaling がスケーリンググループに追加または削除するインスタンスのタイプも、タイプパラメーターの値と一致します。有効な値:
|
インスタンス構成ソース | インスタンス構成ソース。Auto Scaling は、指定されたソースに基づいてスケーリンググループに ECS インスタンスを作成します。有効な値:
説明 ECS コンソールで作成された既存の ECS インスタンスに基づいてスケーリンググループを作成すると、Auto Scaling はスケーリンググループのインスタンス構成ソースとネットワークタイプを自動的に入力します。設定を保持することをお勧めします。 |
プロセスの一時停止 | 特定の操作を実行する前にプロセスを一時停止できます。たとえば、インスタンスを停止する前にヘルスチェックプロセスを一時停止できます。こうすることで、ヘルスチェックが失敗した場合でも、インスタンスはスケーリンググループから削除されません。スケーリンググループでは、次のプロセスを一時停止できます。
詳細については、スケーリンググループプロセスを一時停止および再開する を参照してください。 |
削除保護 | この機能を有効にすると、Auto Scaling コンソールまたは API 操作の呼び出しでスケーリンググループを削除できなくなります。これは、スケーリンググループが誤って削除されるのを防ぐのに役立ちます。 |
インスタンスヘルスチェック | この機能を有効にすると、Auto Scaling はインスタンスのステータスを定期的にチェックします。Auto Scaling は、インスタンスが予期したとおりに実行されていないことを検出すると、インスタンスを異常と見なし、スケーリンググループからインスタンスを削除します。詳細については、インスタンスライフサイクル を参照してください。有効な値:
|
インスタンスの最大存続期間(秒) | スケーリンググループ内の各インスタンスの最大存続期間。スケーリンググループ内のインスタンスの存続期間がこのパラメーターの値を超えると、Auto Scaling はインスタンスを置き換える新しいインスタンスを自動的に作成します。 説明 このパラメーターは、タイプ パラメーターを ECS に設定した場合にのみ使用できます。 |
インスタンス数を構成するためのパラメーター
パラメーター | 説明 |
インスタンスの最小数 | スケーリンググループ内のインスタンス数の下限。インスタンスの実際の数が下限を下回ると、Auto Scaling は実際の数が下限に達するまでスケーリンググループにインスタンスを自動的に追加します。 |
インスタンスの最大数 | スケーリンググループ内のインスタンス数の上限。インスタンスの実際の数が上限を超えると、Auto Scaling は実際の数が上限と等しくなるまでスケーリンググループからインスタンスを自動的に削除します。インスタンス削除ポリシーの詳細については、スケーリングポリシーとスケールインポリシーを組み合わせる を参照してください。 |
インスタンスの予想数 | スケーリンググループ内のインスタンスの目標数。この機能を有効にすると、Auto Scaling はスケーリンググループ内のインスタンスの実際の数が目標数と等しくなるように自動的にします。詳細については、インスタンスの予想数 を参照してください。 |
スケールアウトまたはスケールインイベントをトリガーするためのパラメーター
スケーリンググループが Elastic Container Instance タイプの場合、次のパラメーターのデフォルト設定を変更することはできません。スケーリングポリシー、スケールインポリシー、インスタンスリクレイムモード。パラメーターのデフォルト値:
スケーリングポリシー:コスト最適化ポリシー
スケールインポリシー:最初のスケールインステップとして 最も古いスケーリング構成から作成されたインスタンス、2 番目のスケールインステップとして 最も古いインスタンス
インスタンスリクレイムモード:解放
パラメーター | 説明 |
スケーリングポリシー | デフォルトでは、Auto Scaling は vSwitch の指定された順序(優先順位ポリシー)に基づいてスケーリンググループでスケーリングイベントをトリガーします。ビジネス要件に基づいて、スケーリングポリシー パラメーターを他のポリシーに設定できます。 重要 スケーリングポリシー パラメーターは、タイプ パラメーターが ECS に設定され、ネットワークタイプ パラメーターが VPC に設定されているスケーリンググループに対してのみ構成できます。スケーリンググループが ECI タイプの場合、優先順位ポリシーのみがサポートされます。
カスタム組み合わせポリシーの詳細については、スケーリングポリシーを構成する を参照してください。 |
スケールインポリシー | スケールインリクエストがトリガーされると、Auto Scaling はスケールインポリシーで定義された手順に基づいてスケーリンググループからインスタンスを削除します。このパラメーターは、タイプ パラメーターを ECS に設定した場合にのみ表示されます。有効な値:
スケールインポリシー パラメーターを 最も古いスケーリング構成から作成されたインスタンス または カスタムポリシー に設定したときに複数のインスタンスがスケールイン要件を満たしている場合は、[次に削除] パラメーターを構成できます。[次に削除] パラメーターの有効な値:
説明 スケーリングポリシー の値は、インスタンスがスケーリンググループから削除される方法にも影響します。詳細については、スケーリングポリシーとスケールインポリシーを組み合わせる を参照してください。 |
インスタンスリクレイムモード | インスタンスがスケーリンググループから削除されると、Auto Scaling はこのパラメーターの値に基づいてインスタンスをリクレイムします。有効な値: 説明 このパラメーターは、タイプ パラメーターを ECS に設定し、ネットワークタイプ パラメーターを VPC に設定した場合にのみ使用できます。デフォルトでは、エラスティックコンテナインスタンスはスケーリンググループから削除された後に解放されます。
|
ネットワークを構成するためのパラメーター
インスタンス構成ソース パラメーターを 起動テンプレート または 既存のインスタンスを選択 に設定すると、選択した起動テンプレートまたは既存のインスタンスに基づいて、次のパラメーターが自動的に入力されます。ネットワークタイプ、VPC、vSwitch。ビジネス要件に基づいてこれらのパラメーターを再構成することもできます。
パラメーター | 説明 |
ネットワークタイプ | 作成するスケーリンググループのネットワークタイプを指定します。有効な値:VPC と クラシックネットワーク。 警告 スケーリンググループを作成した後は、ネットワークタイプ パラメーターの値を変更できません。 重要 VPC を選択することをお勧めします。VPC 内のスケーリンググループは、スケーリングポリシー、インスタンスリクレイムモード、およびロードバランシング構成に大きな柔軟性を提供します。VPC の詳細については、VPC とは を参照してください。 |
VPC | このパラメーターは、ネットワークタイプ パラメーターを VPC に設定した場合にのみ表示されます。VPC ドロップダウンリストから VPC を選択すると、このスケーリンググループ内のすべての ECS インスタンスが VPC に配置されます。 警告 スケーリンググループを作成した後は、VPC パラメーターの値を変更できません。 |
vSwitch | スケーリンググループの VPC を選択した後、スケーリンググループの VPC の 1 つ以上の vSwitch を選択する必要があります。スケーリンググループの ECS インスタンスは、すべてのインスタンス間通信に構成済みの vSwitch を使用します。 重要 単一ゾーンのリソース制限によるスケールアウトエラーを防ぐために、複数の vSwitch を構成することをお勧めします。複数の vSwitch を構成する場合は、最適なクロスゾーンインスタンス割り当てのために バランスのとれた分散ポリシー を有効にします。 |
スケーリンググループを他のクラウドサービスに関連付けるためのパラメーター
パラメーター | 説明 |
ApsaraDB RDS、Redis、または MongoDB との関連付け | スケーリンググループの ECS インスタンスが ApsaraDB RDS、Redis、MongoDB などのデータベースにアクセスする必要がある場合は、IP ホワイトリストモードまたはセキュリティグループモードを使用して適切な関連付けを構成します。 説明
|
CLB インスタンスの関連付け | CLB インスタンスをスケーリンググループに関連付けると、Auto Scaling はすべてのグループインスタンスを CLB バックエンドサーバーとして自動的に登録します。その後、CLB インスタンスは着信トラフィックをこれらのサーバーに分散します。 サポートされているサーバーグループタイプ:
デフォルトサーバーグループと複数の vServer グループの両方を構成すると、Auto Scaling は新しいインスタンスを指定されたすべてのグループに自動的に登録します。 説明 Auto Scaling は、スケーリンググループごとに CLB インスタンスとサーバーグループに最大制限を設けています。クォータを表示したり、クォータの増加をリクエストしたりするには、クォータセンター に移動します。 |
ALB および NLB サーバーグループの関連付け | 重要 このパラメーターは、ネットワークタイプ パラメーターを VPC に設定した場合にのみ使用できます。 ALB/NLB サーバーグループをスケーリンググループに関連付けると、Auto Scaling はすべてのインスタンスをバックエンドサーバーとして自動的に登録します。その後、ALB/NLB インスタンスは、構成されたポートと重み設定(デフォルトの重み:50)に基づいてトラフィックをこれらのサーバーに分散します。サーバーの重みを増やすと、着信リクエストのシェアが比例して増加します。バックエンドサーバーの重みを 0 に設定すると、そのサーバーへのすべてのトラフィックルーティングが停止します。 複数の ALB/NLB サーバーグループがスケーリンググループに関連付けられている場合、Auto Scaling はすべてのインスタンスを各サーバーグループに同時に登録します。 説明 Auto Scaling は、スケーリンググループごとに関連付けられた ALB/NLB サーバーグループに最大制限を設けています。クォータを表示したり、クォータの増加をリクエストしたりするには、クォータセンター に移動します。 |
その他のパラメーター
パラメーター | 説明 |
タグ | スケーリンググループにタグを追加して、検索と集約を容易にすることができます。詳細については、タグ を参照してください。 説明 タグはスケーリンググループ自体にのみ適用されますが、ソーススケーリング構成または起動テンプレートでタグを構成することで、インスタンスにタグを付けることができます。 |
スケールアウト中にインスタンスに伝播されるタグ | スケーリンググループにタグを付けた後、スケールアウト操作中にこれらのタグを新しいインスタンスに伝播するかどうかを構成できます。 |
既存のインスタンスを追加 | このパラメーターは、タイプ パラメーターを ECS に設定し、インスタンス構成ソース パラメーターを 起動テンプレート または 既存のインスタンスを選択 に設定した場合にのみ使用できます。 インスタンスの予想数パラメーターは、既存のインスタンスを追加パラメーターに指定した値を自動的に組み合わせます。たとえば、既存のインスタンスを追加の値として 2 を指定しながら、インスタンスの予想数を 1 に設定すると、インスタンスの予想数の値は 3 に調整されます。 スケーリンググループを使用してインスタンスライフサイクルを管理する場合は、スケーリンググループがインスタンスライフサイクルを管理できるようにする を選択できます。
説明 サブスクリプションインスタンスをスケーリンググループに追加できますが、スケーリンググループがサブスクリプションインスタンスのライフサイクルを管理できるようにすることはできません。 |
定期ルールの作成 | スケーリングイベントが成功、失敗、または拒否された場合、Auto Scaling は設定したルールに基づいて、ショートメッセージ、内部メッセージ、またはメールで通知します。詳細については、定期通知ルールを作成する を参照してください。 |
リソースグループ | スケーリンググループをリソースグループに追加できます。その後、リソースグループ別にスケーリンググループを管理できます。これは、リソースの分離と権限の制御を容易にします。詳細については、リソースグループを使用してスケーリンググループを詳細に管理する を参照してください。 |
アラートルールを CloudMonitor に同期 | この機能は、スケーリンググループの作成中に構成する必要があります。この機能を有効にすると、システムはリンクされた CloudMonitor アプリケーショングループを自動的に作成し、すべてのアラートルールを CloudMonitor コンソールに同期します。 |
YAML フィールド
サポートされている Kubernetes YAML フィールド
Kubernetes デプロイメントを使用して Elastic Container Instance タイプのスケーリンググループをデプロイする場合、次の YAML フィールドのみを構成できます。
YAML ファイルは通常、kind、metadata、spec フィールドで構成されます。YAML ファイル構造の詳細については、Kubernetes 公式 Web サイトの サンプルデプロイメント を参照してください。
拡張アノテーション
YAML 形式の Kubernetes デプロイメントファイルを使用して Elastic Container Instance タイプのスケーリンググループをデプロイする場合、特定のアノテーションのみを拡張できます。次の表に、拡張アノテーションについて説明します。