ビジネスが拡大し、データ量が増加し、新しいサービスや機能がリリースされると、データベースへのアクセス要求が増加し、コンピューティングリソースが不足します。 これらの問題を解決するには、CPUコアとメモリ容量を増やしてデータベースインスタンスをスケールアップします。 Database Autonomy Service (DAS) は、データベースインスタンスをスケールアップしてピーク時のトラフィックを処理できる自動パフォーマンススケーリング機能を提供します。 トラフィックが減少すると、DASはデータベースインスタンスを自動的にスケールダウンしてリソースの浪費を防ぎます。
前提条件
管理するデータベースインスタンスは、次の表に示すタイプのいずれかです。
データベースインスタンス
リージョン
汎用および専用のApsaraDB RDS for MySQL標準SSDまたはEnterprise SSD (ESSD) を使用するHigh-availability Editionインスタンス、ローカルディスクを使用する汎用ApsaraDB RDS for MySQL High-availability Editionインスタンス、および汎用ApsaraDB RDS for MySQL Enterprise Editionインスタンス
PolarDB for MySQLクラスターエディションクラスター
自動パフォーマンススケーリング機能は、異常検出機能に依存します。 自動パフォーマンススケーリング機能は、異常検出機能をサポートするリージョンのデータベースインスタンスに対してのみ有効にできます。 異常検出機能は、次のリージョンでサポートされています。
中国 (杭州) 、中国 (上海) 、中国 (深セン) 、中国 (河源) 、中国 (広州) 、中国 (青島) 、中国 (北京) 、中国 (張家口) 、中国 (フフホト) 、中国 (ウラン州) 、中国 (南京-地方地域) 、中国 (福州-地方地域) 、中国 (成都) 、中国 (鄭州-地方地域) 、中国 (香港) 、日本 (東京) 、韓国 (ソウル) 、シンガポール (クアラルンプール) 、インドネシア (ジャカルタ) 、フィリピン (マニラ) 、タイ (バンコク) 、オーストラリア (シドニー) クロージングダウン、アラブ首長国連邦 (ドバイ) 、SAU (リヤド-パートナー地域) 、ドイツ (フランクフルト) 、米国 (シリコンバレー) 、米国 (バージニア) 、および英国 (ロンドン)
説明インスタンスタイプが廃止されているApsaraDB RDS for MySQLインスタンスでは、自動パフォーマンススケーリング機能はサポートされていません。 ApsaraDB RDS for MySQLインスタンスのインスタンスタイプが廃止された場合、インスタンスの自動パフォーマンススケーリング機能を有効にする前に、インスタンスのインスタンスタイプを変更する必要があります。 ApsaraDB RDS For MySQLインスタンスのインスタンスタイプを変更する方法の詳細については、「インスタンス仕様の変更」をご参照ください。
Alibaba Cloudアカウントの残高は、データベースインスタンスのスケールアップに必要なリソースの支払いに十分です。
DASに対してサービスにリンクされたロールが作成されます。 詳細については、「AliyunServiceRoleForDAS role」をご参照ください。
説明DASのサービスにリンクされたロールが作成されていない場合、システムは自動パフォーマンススケーリングが開始される前にロールを自動的に作成します。
自動パフォーマンススケーリングのプロセス
自動スケールアップ
インスタンスの自動スケールアップ機能を有効にすると、DASは、観察ウィンドウ内のデータベースインスタンスの平均CPU使用率に基づいて、データベースインスタンスを自動的にスケールアップします。
データベースインスタンスのスケールアップ後、フェールオーバー、ホストリソースの深刻な不足、既存の制御プロセスとの競合によるリソースの再割り当てなど、極端なシナリオが発生する可能性があります。 自動スケーリング機能を使用して、コアインスタンスの短期的なピークCPU使用率を評価し、長期的なピークCPU使用率に基づいてコアインスタンスの仕様をアップグレードすることを推奨します。
標準SSDまたはESSD、またはPolarDB For MySQL Cluster Editionクラスターを使用するApsaraDB RDS for MySQL High-availability Editionインスタンスの場合:
DASは、指定された範囲内の仕様を自動的に選択し、インスタンスの現在のワークロードに基づいてデータベースインスタンスをスケールアップします。 データベースインスタンスのスケールアップ後、DASはデータベースインスタンスのCPU使用率を監視します。 CPU使用率が指定されたしきい値を再度超えると、DASはデータベースインスタンスを再度スケールアップします。 このプロセスは、データベースインスタンスが指定した最大仕様にスケールアップされるまで繰り返されます。
ローカルディスクを使用する汎用ApsaraDB RDS For MySQL High-availability Editionインスタンスまたは汎用ApsaraDB RDS for MySQL Enterprise Editionインスタンスの場合:
DASは、CPUコアの数を元の数の2倍に増やします。 例えば、元のCPUコア数が4であれば、スケールアップ後のCPUコア数は8となる。 インスタンスのIOPSも増加します。 IOPSは、追加されたCPUコアごとに1,000増加します。 ホスト上のCPUリソースが不足している場合、スケールアップはトリガーされません。
説明DASは、CPUコアの数を元の数の2倍にのみ増やします。 その後、DASはCPUコアの数をさらに増やすことはできません。 たとえば、CPUコアの数を8に増やした後、DASはそれ以上16に増やすことができません。
自動スケールダウン
自動スケールダウン機能が有効化された後に自動スケールアップが実行されると、システムは自動的にインスタンス仕様を元の仕様に少しずつロールバックします。 これは、特定の要件が満たされる場合に適用されます。 ただし、自動スケールダウン機能が有効化される前に自動スケールアップが実行された場合、システムは、自動スケールダウン機能が有効化された後でも、インスタンス仕様を元の仕様にロールバックしません。
標準SSDまたはESSD、またはPolarDB For MySQL Cluster Editionクラスターを使用するApsaraDB RDS for MySQL High-availability Editionインスタンスの場合:
データベースインスタンスの自動スケールダウン/スケールイン機能を有効にした後、データベースインスタンスのCPU使用率が30% よりも低く、スケールダウン観察ウィンドウの99% よりも長い場合、静止期間が経過した後に自動スケールダウンがトリガーされます。 データベースインスタンスは、小さなデクリメントで元の仕様にスケールダウンされます。
重要スケールダウン観察ウィンドウの持続時間は、観察ウィンドウ
の持続時間 + 10分
に等しい。 たとえば、観察ウィンドウの時間を30分に設定した場合、スケールダウン観察ウィンドウの時間は40分になります。標準SSDまたはESSDを使用するApsaraDB RDS For MySQL High-availability Editionインスタンスの場合、自動スケールダウン機能はkindCodeパラメーターが18に設定されているインスタンスでのみサポートされます。 APIを呼び出して、kindCodeパラメーターの値を照会できます。 詳細については、「DescribeDBInstanceAttribute」をご参照ください。
ローカルディスクを使用する汎用ApsaraDB RDS For MySQL High-availability Editionインスタンスまたは汎用ApsaraDB RDS for MySQL Enterprise Editionインスタンスの場合:
データベースインスタンスのCPU使用率がスケールダウン監視ウィンドウの99% よりも長い間30% より低い場合、DASはデータベースインスタンスのCPUコア数とIOPSを元の仕様に戻します。
データベースインスタンスの自動パフォーマンススケーリング機能を有効にすると、DASは最新のパラメーター設定に基づいてデータベースインスタンスを監視します。 データベースインスタンスが自動スケーリングの条件を満たすと、DASはデータベースインスタンスをスケールアップまたはスケールダウンします。
自動パフォーマンススケーリング機能の詳細については、「Auto scaling」をご参照ください。
課金
ApsaraDB RDS For MySQLインスタンスの場合:
ローカルディスクまたは汎用Enterprise Editionインスタンスを使用する汎用High-availability Editionインスタンス: 従量課金に基づいて課金され、料金は1時間に1回差し引かれます。
価格の計算式 :( CPUコアあたりの料金 × 追加されたCPUコアの数) × 分単位のスケールアップ期間
USD 0.083 (the unit price per CPU core-hour) × 4 (the number of CPU cores that are added) × 0.5 (the scaling duration measured in hours) = USD 0.166. The unit price in the China (Hangzhou) region is USD 0.083 per CPU core-hour.標準SSDまたはESSDを使用する高可用性エディションインスタンス: スケールアップ後にアップグレードされたインスタンスの仕様に基づいて課金されます。 スケールアップの料金は、リージョンやアップグレードされたインスタンスの仕様など、インスタンスの構成によって異なります。 詳細については、「ApsaraDB RDS 購入ページ」をご参照ください。
PolarDB For MySQLクラスターの場合:
課金ルールの詳細については、「設定変更料金」をご参照ください。
影響
標準SSDまたはESSDを使用するApsaraDB RDS For MySQL High-availability Editionインスタンス、またはPolarDB for MySQL Cluster Editionクラスターの場合、データベースインスタンスのスケールアップまたはスケールダウン時に、約30秒の一時的な接続が発生する場合があります。 この場合、アプリケーションがデータベースインスタンスに自動的に再接続するように構成されていることを確認してください。
PolarDB For MySQL Cluster Editionクラスターの場合、DASはクラスター内の単一ノードの仕様ではなく、クラスター全体の仕様のみをアップグレードまたはダウングレードします。
データベースインスタンスのデータベースエンジンが最新のマイナーバージョンでない場合、DASはデータベースインスタンスをスケールアップするときに最新のマイナーバージョンのデータベースエンジンを実行するようにデータベースインスタンスを更新します。 これにより、データベースインスタンスのパフォーマンスと安定性が保証されます。
スケーリング操作は、プライマリインスタンスに対してのみ実行されます。 プライマリインスタンスのスケーリング後にプライマリ /セカンダリスイッチオーバーがトリガーされた場合、次のいずれかの場合が発生します。
プライマリインスタンス (元のセカンダリインスタンス) がスケールアップまたはスケールダウンの指定されたトリガー条件を満たす場合、DASはプライマリインスタンス (元のセカンダリインスタンス) に対してスケーリング操作を実行します。
セカンダリインスタンス (元のプライマリインスタンス) がスケールダウンのために指定されたトリガー条件を満たす場合、DASはセカンダリインスタンス (元のプライマリインスタンス) を元の仕様にスケールバックします。
手順
にログインします。DASコンソール.
左側のナビゲーションウィンドウで、インスタンスモニター.
表示されるページで、管理するデータベースインスタンスを見つけ、インスタンスIDをクリックします。 インスタンス詳細ページが表示されます。
左側のナビゲーションウィンドウで、自律型センター.
の右上隅に自律型センターページをクリックします。Autonomy Service Settings.
On the のタブ自律機能管理パネルは、自治サービスを有効にします。
On the最適化とスロットリングタブでパラメーターを設定します。
ApsaraDB RDS for MySQLインスタンス
標準SSDまたはESSDを使用するApsaraDB RDS for MySQL High-availability Editionインスタンスの場合、Automatic Performance Scaling を選択します。
ローカルディスクを使用する汎用ApsaraDB RDS for MySQL High-availability Editionインスタンスまたは汎用ApsaraDB RDS for MySQL Enterprise Editionインスタンスの場合は、自動リソース弾力性 を選択します。
インスタンスタイプ
パラメーター
説明
汎用タイプ
CPU使用率 ≥
自動スケールアップのトリガーに基づくしきい値。 平均CPU使用率が指定された値以上の場合、自動スケールアップがトリガーされます。
標準SSDまたはESSDを使用する高可用性エディションインスタンス
監視期間
データベースインスタンスのパフォーマンスが観測される時間範囲。 DASは、特定の間隔で、観測期間中にデータベースインスタンスの平均CPU使用率をチェックします。 CPU使用率が指定されたしきい値以上の場合、自動スケールアップがトリガーされます。
重要スケールダウン観察ウィンドウの持続時間は、観察ウィンドウ
の持続時間 + 10分
に等しい。たとえば、観察ウィンドウの時間を30分に設定した場合、スケールダウン観察ウィンドウの時間は40分になります。
最大仕様
データベースインスタンスをスケールアップできる最大仕様。 データベースインスタンスのCPU使用率が指定されたしきい値に達すると、DASはデータベースインスタンスをスケールアップします。 次の監視期間中にデータベースインスタンスのCPU使用率が指定されたしきい値に再び達した場合、DASはデータベースインスタンスを再びスケールアップします。 このプロセスは、データベースインスタンスが指定した最大仕様にスケールアップされるまで繰り返されます。
重要RDSインスタンスが1 CPUコアと2 GBのメモリを提供するインスタンスタイプを使用し、自動スケールアップがトリガーされた場合、RDSインスタンスの仕様は4 CPUコアと8 GBのメモリにアップグレードされます。 この場合、最大仕様を少なくとも4 CPUコアと8 GBのメモリに設定する必要があります。 そうでない場合、自動スケールアップは失敗します。
自動スケールダウン/スケールイン
自動スケールダウン/スケールイン を選択した後、データベースインスタンスのCPU使用率が30% 未満で、スケールダウン観察ウィンドウの99% よりも長い場合、静止期間が経過した後に自動スケールダウンがトリガーされます。 データベースインスタンスの仕様は、小さなデクリメントで元の仕様にスケールダウンされます。 スケールダウン観察ウィンドウの持続時間は、観察ウィンドウ
の持続時間 + 10分
に等しい。静止期間
2つの連続した自動スケールインまたはスケールアウト操作の最小間隔。
説明休止期間中、DASはインスタンスのCPU使用率を監視しますが、指定された条件が満たされても自動スケールアップまたはスケールダウンをトリガーしません。
静止期間と観察ウィンドウが同時に終了し、観察ウィンドウ内の平均CPU使用率が指定されたしきい値に達すると、DASは自動的にスケールアップまたはスケールダウンをトリガーします。
ローカルディスクを使用する汎用ApsaraDB RDS for MySQL High-availability Editionインスタンスと汎用ApsaraDB RDS for MySQL Enterprise Editionインスタンス
スケールアップ観察ウィンドウ
スケールアップのためのCPU使用率観察ウィンドウ。 DASは、特定の間隔で、観測期間中にデータベースインスタンスの平均CPU使用率をチェックします。 平均CPU使用率が指定されたしきい値に達すると、自動スケールアップがトリガーされます。
スケールバック観察ウィンドウ
スケールダウン用のCPU使用率観察ウィンドウ。 DASは、特定の間隔で監視ウィンドウ内のデータベースインスタンスのCPU使用率をチェックします。 CPU使用率がスケールダウン観察ウィンドウの99% より長い間30% より低い場合、自動スケールダウンがトリガーされます。
PolarDB for MySQLクラスター
PolarDB For MySQLクラスターの場合、[自動スケールアップ /アウト] および [自動スケールダウン /イン] を選択し、次の表に示すパラメーターを設定します。
自動スケールアップ /アウト
観測ウィンドウ内でクラスターのCPU使用率が指定されたしきい値以上の場合、DASは、観測ウィンドウが終了した後、クラスターのワークロードに基づいてPolarDBクラスターを自動的にスケールアップします。
DASは、リアルタイムの読み書きトラフィックに基づいて、クラスターを自動的にスケールアウトまたはスケールアップします。
読み取りトラフィックが書き込みトラフィックを超える場合、DASはまず読み取り専用ノードをクラスターに追加します。
書き込みトラフィックが読み取りトラフィックを超える場合、DASはまずクラスターの仕様をアップグレードします。
クラスターのプライマリノードのワークロードが高い場合、DASはまずクラスターの仕様をアップグレードします。
自動スケールダウン /in
- 重要
PolarDB For MySQL Cluster Editionクラスターの場合、DASはクラスター内の単一ノードの仕様ではなく、クラスター全体の仕様のみをアップグレードまたはダウングレードします。
クラスターのCPU使用率が30% よりも低い場合、スケールダウン観察ウィンドウ、自動スケールダウンがトリガーされ99% 。 クラスタの仕様は、小さなデクリメントで元の仕様にスケールダウンされます。
クラスターのスケールアップ中に追加された読み取り専用ノードは、クラスターのスケールダウン中に1つずつ削除されます。
スケールアップ中にアップグレードされたクラスターは、スケールダウン中にダウングレードされます。
パラメーター
説明
平均CPU使用率 ≥
自動スケールアップのトリガーに基づくしきい値。 平均CPU使用率が指定された値以上の場合、自動スケールアップがトリガーされます。
最大仕様
クラスターをスケールアップできる最大仕様。 自動スケールアップがトリガーされると、システムはPolarDB for MySQLクラスターを最大仕様まで少しずつスケールアップします。 たとえば、CPU仕様を4コアから8コアにアップグレードし、上限に達するまで16コアにアップグレードできます。
読み取り専用ノードの最大数
クラスターに含めることができる読み取り専用ノードの最大数。 自動スケールアップがトリガーされた後、上限に達するまで、ビジネス要件に基づいて1つまたは2つの読み取り専用ノードがPolarDB for MySQLクラスターに自動的に追加されます。
説明自動的に追加されるノードは、クラスターのデフォルトのエンドポイントに関連付けられます。 カスタムエンドポイントを使用する場合は、新しいノードを自動的に関連付ける パラメーターを設定して、これらのノードをエンドポイントに自動的に関連付けるかどうかを指定する必要があります。 新しいノードを自動的に関連付ける パラメーターの設定方法の詳細については、「PolarProxyの設定」をご参照ください。
観察ウィンドウ
観測ウィンドウ内でCPUの平均使用率が指定されたしきい値に達した場合、DASは観測ウィンドウの終了後にクラスターを自動的にスケールアップします。 これにより、クラスターはすべての読み取りおよび書き込み要求を処理できます。 たとえば、監視ウィンドウの指定時間が5分で、自動スケーリング操作を完了するのに必要な指定時間が10分の場合、スケーリング結果を確認するには15分待つ必要があります。
重要スケールダウン観察ウィンドウの持続時間は、観察ウィンドウ
の持続時間 + 10分
に等しい。 たとえば、観察ウィンドウの時間を30分に設定した場合、スケールダウン観察ウィンドウの時間は40分になります。静止期
2つの連続した自動スケールアップまたは2つの自動スケールダウンの最小間隔。 休止期間中、DASはクラスターのCPU使用率を監視しますが、指定された条件が満たされていても、自動スケールアップまたはスケールダウンをトリガーしません。 静止期間と観察ウィンドウが同時に終了し、観察ウィンドウ内の平均CPU使用率が指定されたしきい値に達すると、DASは自動的にスケールアップまたはスケールダウンをトリガーします。
[OK] をクリックします。
よくある質問
データベースインスタンスの仕様が上限に達した場合はどうすればよいですか。
上位エディションを実行するデータベースインスタンスを購入することを推奨します。 たとえば、High-availability Editionを実行し、専用インスタンスタイプを使用するApsaraDB RDS For MySQLインスタンスの最大仕様は、104 CPUコアと768 GBのメモリです。 次に、インスタンスデータを新しいインスタンスに移行します。 データベースインスタンスの仕様とデータ移行シナリオの詳細については、以下のトピックを参照してください。
ApsaraDB RDS for MySQL: 仕様とApsaraDB RDS for MySQLインスタンス間のデータ移行
PolarDB for MySQL: PolarDB for MySQL Enterprise Editionの計算ノード仕様とPolarDB for MySQLクラスター間のデータ移行
インスタンスの自動スケールアップ中、システムはインスタンスのパフォーマンスを継続的に監視しますか。
はい。
例えば、前記観察ウィンドウが5分に設定され、自動スケールアップの持続時間が10分である場合、自動スケールアップの総持続時間は15分である。
自動スケールアップ期間中、システムはインスタンスのパフォーマンスを継続的に監視しますが、現在のタスクが完了するまで、新しい自動スケールアップタスクをトリガーすることはできません。 自動スケールアップが完了した後、観察ウィンドウ内のCPU使用率がウィンドウの終わりで指定されたしきい値に達すると、上限の仕様に達するまで別のスケールアップが実行されます。
関連ドキュメント
ビジネストラフィックのピークが定期的に発生する場合は、インスタンスのスケジュール自動スケーリング機能を有効にできます。 システムは、事前設定されたポリシーに基づいてインスタンスをスケールアップし、指定されたスケールアウト期間が終了すると、インスタンスを元のインスタンス仕様に自動的にスケールダウンします。
インスタンスが自動パフォーマンススケーリング機能をサポートしていない場合は、インスタンスの仕様を手動で変更して、インスタンスをスケールアウトまたはスケールインできます。 詳細については、以下のトピックをご参照ください。
ApsaraDB RDS for MySQL: インスタンス仕様の変更
PolarDB for MySQL: クラスターの仕様を手動で変更