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

Auto Scaling:ライフサイクルフックと OOS テンプレートのベストプラクティスの概要

最終更新日:Apr 01, 2026

ライフサイクルフックは、スケーリングアクティビティを一時停止し、CloudOps Orchestration Service (OOS) に制御を渡します。OOS は、アクティビティが再開される前に、OOS テンプレートで定義された運用保守 (O&M) タスクを実行します。このパターンを使用して、スケールアウトイベント中のインスタンスの準備 (セカンダリ Elastic Network Interface (ENI) のバインドやデータベースのホワイトリストの更新など) や、スケールインイベント中のインスタンスのクリーンアップ (ログのコピーやデータの消去など) を自動化します。

仕組み

スケーリングアクティビティがトリガーされると、Auto Scaling はアクティビティを一時停止し、影響を受ける ECS インスタンスを Pending:Wait 状態にします。その後、OOS はテンプレートで指定された運用保守操作を実行します。OOS が完了すると、インスタンスは Pending:Wait 状態を終了し、結果に基づいてスケーリングアクティビティが続行または終了します。

Integrated usage

結果は、運用保守操作が成功したかどうかによって異なります:

操作が成功した場合、スケーリングアクティビティは続行されます:

  • スケールアウト:ECS インスタンスがスケーリンググループに追加されます。

  • スケールイン:ECS インスタンスがスケーリンググループから削除されます。

操作が失敗した場合、スケーリングアクティビティは終了します:

  • スケールアウト:ECS インスタンスはリリースされます。

  • スケールイン:ECS インスタンスは引き続きスケーリンググループから削除されます。スケールインイベントは、失敗の影響を受けません。

重要

運用保守操作が失敗しても、インスタンスはスケールインから保護されません。終了前にデータを保持することが目的の場合は、OOS テンプレートがデータ保持タスクを処理するようにしてください。

OOS テンプレートを使用する理由

OOS テンプレートは、カスタム通知ハンドラーに比べていくつかの利点があります:

  • 構成可能な運用保守ワークフロー:テンプレートはタスクのシーケンス、実行順序、入出力パラメーターを定義するため、複数ステップの運用保守プロセスを簡単に実装できます。

  • 自動トリガー:ライフサイクルフックの通知は OOS を直接呼び出します。通知ペイロードを解析するためのカスタムコードは不要です。

  • すぐに使えるパブリックテンプレート:Alibaba Cloud は、共通タスク用のパブリックテンプレートを提供しています。詳細については、「パブリックテンプレート」をご参照ください。

  • カスタムテンプレート:パブリックテンプレートでカバーされていないシナリオ向けに、独自のテンプレートを作成できます。詳細については、「テンプレートの作成」をご参照ください。

OOS の詳細については、「OOS の概要」をご参照ください。

利用可能なパブリックテンプレート

以下のパブリックテンプレートは、ライフサイクルフックの最も一般的な運用保守タスクをカバーしています。各テンプレート名は、OOS のパブリックテンプレートカタログに直接マッピングされています。

テンプレート適用イベント説明ガイド
ACS-ESS-LifeCycleApplyAutoSnapshotPolicyスケールアウトディスクに自動スナップショットポリシーを適用します。ECS インスタンスに自動スナップショットポリシーを適用する
ACS-ESS-LifeCycleRunCommandスケールアウトおよびスケールインECS インスタンスでコマンドを実行します。ECS インスタンスでスクリプトを自動的に実行する
ACS-ESS-LifeCycleModifyPolarDBIPWhitelistスケールアウトおよびスケールインPolarDB クラスターの IP アドレスホワイトリストを更新します。PolarDB クラスターのホワイトリストから ECS インスタンスの IP アドレスを自動的に追加または削除する
ACS-ESS-LifeCycleModifyRedisIPWhitelistスケールアウトおよびスケールインApsaraDB for Redis インスタンスの IP アドレスホワイトリストを更新します。ApsaraDB for Redis のホワイトリストから ECS インスタンスの IP アドレスを自動的に追加または削除する
ACS-ESS-LifeCycleModifyMongoDBIPWhitelistスケールアウトおよびスケールインApsaraDB for MongoDB インスタンスの IP アドレスホワイトリストを更新します。MongoDB インスタンスのホワイトリストから ECS インスタンスの IP アドレスを自動的に追加または削除する
ACS-ESS-LifeCycleModifyAnalyticDBIPWhitelistスケールアウトおよびスケールインAnalyticDB for MySQL クラスターの IP アドレスホワイトリストを更新します。AnalyticDB for MySQL クラスターのホワイトリストから ECS インスタンスの IP アドレスを自動的に追加または削除する
ACS-ESS-LifeCycleAttachNASFileSystemToInstanceスケールアウトNAS ファイルシステムを ECS インスタンスにマウントします。NAS ファイルシステムを ECS インスタンスにマウントする
ACS-ESS-LifeCycleCreateNetworkInterfaceAndEipAndAttachToInstanceスケールアウトセカンダリ ENI と Elastic IP Address (EIP) を作成し、各 EIP をセカンダリ ENI に関連付け、ENI を ECS インスタンスにバインドします。セカンダリ ENI を ECS インスタンスに自動的にバインドする
ACS-ESS-LifeCycleDetachNetworkInterfaceAndDeleteEipスケールインECS インスタンスからセカンダリ ENI のバインドを解除し、ENI とそれに関連付けられた EIP をリリースします。ECS インスタンスからセカンダリ ENI のバインドを自動的に解除する
ACS-ESS-LifeCycleAllocateEipAddressAndAttachToInstanceスケールアウトEIP を作成し、ECS インスタンスに関連付けます。EIP を ECS インスタンスに自動的に関連付ける
ACS-ESS-LifeCycleReleaseEipAddressFromInstanceスケールインECS インスタンスから EIP の関連付けを解除し、リリースします。EIP の自動リリース機能を有効にする

次のステップ