固定仕様クラスターでサーバーレス機能を有効にすると、カスタムスケーリングポリシーを定義して、クラスターリソースの上限と下限を制御できます。また、ライフサイクルポリシーを設定することで、プロモーションイベントやトラフィックスパイクなど、予測可能なトラフィックピークの前にリソースを自動的にスケールアップしてパフォーマンスを確保し、オフピーク期間中にはスケールダウンしてアイドル状態のリソースを解放できます。
Auto scaling
スケールアップとスケールアウトのトリガー
垂直スケーリング (スケールアップ)
PolarDB は、プライマリノードと読み取り専用ノードの CPU 使用率、メモリ使用量、およびその他のカーネルレベルのメトリックをモニタリングします。モニタリング期間中、システムは通常、次のいずれかの条件が満たされた場合にノードのスケールアップをトリガーします。
CPU 使用率が事前設定されたしきい値 (デフォルト:80%) を超えた場合。
メモリ使用量が特定のしきい値を超えた場合:
サーバーレスフォーマット
スケールアップのしきい値
サーバーレスクラスター
90%
固定仕様クラスター向けのサーバーレス機能
32 GB 以下
90%
64 GB
92%
128 GB
96%
256 GB~512 GB
98%
その他のメモリ仕様
垂直スケーリングはサポートされていません。
読み取り専用ノードの仕様は、プライマリノードの半分未満です。
たとえば、読み取り専用ノードの仕様が 4 PCU で、プライマリノードの仕様が 10 PCU の場合、読み取り専用ノードは少なくとも 5 PCU にスケールアップされます。
水平スケーリング (スケールアウト)
クラスター内の読み取り専用ノードが設定された最大上限までスケールアップしても、スケールアップのトリガー条件を満たし続ける場合 (たとえば、CPU 使用率がカスタムしきい値を超えるなど)、水平スケールアウトがトリガーされます。
スケールダウンとスケールインのトリガー
垂直スケーリング (スケールダウン)
ノードの CPU 使用率がカスタムしきい値 (デフォルト:50%) を下回り、かつメモリ使用量が特定のしきい値を下回った場合に、スケールダウンがトリガーされます。メモリ使用量のしきい値は次のとおりです。
サーバーレスフォーマット
スケールダウンのしきい値
サーバーレスクラスター
80%
固定仕様クラスター向けのサーバーレス機能
32 GB 以下
80%
64 GB
86%
128 GB
90%
256 GB~512 GB
94%
その他のメモリ仕様
垂直スケーリングはサポートされていないため、スケールダウンのしきい値は適用されません。
水平スケーリング (スケールイン)
読み取り専用ノードの CPU 使用率が 15% 未満の状態が続き、かつ他のすべての読み取り専用ノードの CPU 使用率が 60% 未満の状態が 15~30 分間続いた場合に、スケールインがトリガーされます。
説明ノードのジッターを防ぐため、一度にスケールインされる読み取り専用ノードは 1 つだけです。連続するスケールインイベント間のクールダウン期間は 15~30 分です。
すべての読み取り専用ノードを直ちにスケールインするには、[サーバーレス構成] を変更します。[読み取り専用ノードの最大数] と [読み取り専用ノードの最小数] の両方を 0 に設定すると、すべての読み取り専用ノードのスケールインが直ちにトリガーされます。
-
スケーリングをトリガーするメトリックは、クラスターのパラメーター設定と サーバーレス構成によって異なります。CPU スケーリングのしきい値は指定できますが、他のメトリックのしきい値は変更できません。
-
サーバーレスクラスターのワークロードが急増した場合、クラスターのノードは一度にではなく、段階的に拡張され、期待される仕様に近づきます。ノードスケーリングの最小ステップサイズは 0.5 PCU です。現在のワークロードに迅速に適応するため、次の拡張のステップサイズは、ノードあたりの現在の PCU 数に基づいて増加します。
ノードがスケールダウンされたときに通知を受け取るには、コンソールの [パフォーマンスモニタリング] セクションでアラートルールを設定します。詳細については、「弾性モニタリングの設定」をご参照ください。
注意事項
-
固定仕様クラスターでサーバーレス機能を有効化した後、クラスターの最大接続数と最大 IOPS は、設定された 1 ノードあたりのリソースの上限 に比例します。
-
読み取り専用カラムストアノードでサーバーレス機能を有効化するには、まず固定仕様クラスターに読み取り専用カラムストアノードを追加する必要があります。読み取り専用カラムストアノードを追加した後、クラスターに追加できるサーバーレスの読み取り専用カラムストアノードの数を設定できます。
-
固定仕様クラスターでサーバーレス機能が有効化されている場合、コンピュートノードの垂直スケーリングは CPU コア数によって制限されます:
-
専用仕様のコンピュートノードの場合、ノードの CPU コア数が 64 を超えると、垂直スケーリング (シングルノードの PCU スケーリング) はサポートされません。
-
汎用仕様のコンピュートノードの場合、ノードの CPU コア数が 32 を超えると、垂直スケーリング (シングルノードの PCU スケーリング) はサポートされません。
-
-
サーバーレスクラスターは、PolarDB キャパシティユニット (PCU) を使用して、秒単位の課金とリソーススケーリング管理を行います。1 PCU は、1 CPU コアと 2 GB のメモリの標準サービス容量に相当します。ノードの PCU 値は、設定した制限内でワークロードに基づいて動的に調整されます。1 回のスケーリングイベントの最小単位は 0.5 PCU です。
-
サーバーレス機能を無効にすると、PolarDB はスケールアップしたすべてのリソースを回収し、クラスターはサーバーレス機能が有効になる前に使用していた元の固定仕様に戻ります。
innodb_buffer_pool_sizeなどのパラメーター値は、機能が有効になる前に使用されていた値に復元されます。使用中のリソースを回収すると、エラーが発生する可能性があります。この操作はオフピーク時間に実行することを推奨します。 -
現時点では、Cluster Edition シリーズのみがライフサイクルポリシーに対応しています。
サーバーレスパラメーターの設定
[PolarDB コンソール] にログインします。左側のナビゲーションペインで、クラスター をクリックします。クラスターがデプロイされている[リージョン] を選択し、クラスター ID をクリックします。基本情報 ページのデータベースノード セクションで、Serverless の設定 をクリックします。
現在のパラメーターの設定
Serverless 関連のパラメーター設定 ダイアログボックスで、編集 をクリックしてパラメーターを設定します。
-
[現在のパラメーター]
-
[読み取り専用ノード数のスケーリング下限]:追加する読み取り専用ノードの最小数です。有効な値:0~15。
-
[読み取り専用ノード数のスケーリング上限]:追加する読み取り専用ノードの最大数です。有効な値:0~15。
説明システムは、指定された制限内で、ワークロードに基づいて読み取り専用ノードの数を自動的に増減させます。詳細については、「スケーリング」をご参照ください。
-
[1 ノードあたりのリソースの下限]:クラスター内の各ノードの最小 PCU 数です。有効な値:0 PCU~16 PCU。
-
[1 ノードあたりのリソースの上限]:クラスター内の各ノードの最大 PCU 数です。有効な値:0 PCU~16 PCU。
説明例: 1 ノードあたりのリソースの下限 を 2 PCU に、1 ノードあたりのリソースの上限 を 8 PCU に設定すると、各ノードは固定仕様に加えて 2 PCU から 8 PCU の間でスケールするサーバーレスキャパシティを獲得します。ノードのベースラインは、固定仕様に 2 PCU (約 2 コア、4 GB のメモリ) を加えたものになります。ワークロードが増加すると、システムは最大 8 PCU までキャパシティを追加します。最終的な仕様は、固定仕様に 8 PCU (約 8 コア、16 GB のメモリ) を加えたものを超えることはできません。
-
読み取り専用列ストアノード数:読み取り専用列ストアノードの数です。有効な値:0~15。
説明-
このパラメーターは、固定仕様クラスターにすでに読み取り専用列ストアノードがある場合にのみ表示され、設定できます。
-
読み取り専用列ストアノードの詳細については、「IMCI (インメモリ列指向インデックス)」をご参照ください。
-
-
詳細設定
サーバーレスクラスターのリソース負荷に応じて、詳細パラメーターを調整できます。
エラスティックの感度:この設定は、クラスターがワークロードの変更にどれだけ迅速に応答するかを決定します。標準 または 高感度 を選択します。
CPU バウンスアップ閾値 (最大): スケールアップ操作をトリガーする CPU 使用率のしきい値です。有効値は 40%~100% です。
CPU バウンスダウン閾値 (最小値):スケールダウンアクションをトリガーする CPU 使用率のしきい値です。値の範囲は 10%~70% です。
説明CPU スケールダウンのしきい値は、CPU スケールアップのしきい値よりも低くする必要があります。2 つのしきい値の差は、少なくとも 30 パーセントポイント必要です。
高感度モードは、一時的な負荷変動 (例:短い CPU の急上昇) に敏感で、より高速な応答が必要なワークロードに適しています。ただし、負荷の変動に応じてクラスターがより頻繁にスケールアップおよびスケールダウンする可能性があります。
ライフサイクルポリシーの作成
ライフサイクルポリシーは、あらかじめ定義されたスケジュール (毎日、毎週、または毎月) に従ってクラスターリソースをスケーリングします。このポリシーを使用することで、プロモーションイベントなどの予測可能なピーク期間にリソースをスケールアップし、オフピーク時間にスケールダウンしてコストを削減できます。
-
現在、クラスター版 シリーズのみがライフサイクルポリシーをサポートしています。
-
注意:
-
ライフサイクルポリシーを削除しても、現在実行中のタスクはキャンセルされません。保留中のタスクのみが削除されます。
-
サーバーレス機能を無効にすると、関連するすべてのライフサイクルポリシーとそのスケジュールされたタスクが削除されます。
-
-
Serverless 関連のパラメーター設定 ダイアログボックスで、[+ ライフサイクルポリシーの追加] をクリックします。次の表にパラメーターを示します。
パラメーター
値
[1 ノードあたりのリソースの上限]
0~16 PCU。
[1 ノードあたりのリソースの下限]
0~16 PCU。値は、単一ノードの最大リソースの値以下である必要があります。
[読み取り専用ノード数のスケーリング上限]
0~15。
[読み取り専用ノード数のスケーリング下限]
0~15。値は[読み取り専用ノード数のスケーリング上限]の値を超えることはできません。
読み取り専用列ストアノード数
0~15。
説明-
このパラメーターは、固定仕様クラスターにすでに読み取り専用列ストアノードがある場合にのみ表示され、設定できます。
-
読み取り専用列ストアノードの詳細については、「IMCI (インメモリ列指向インデックス)」をご参照ください。
[開始時間と終了時間]
ライフサイクルポリシーの有効期間です。
ポリシーのスケジューリング
ライフサイクルポリシーのスケジュールです。
-
月単位: 月の特定の日と特定の実行時刻を選択します。月の 正数 または 下から数えて から日数をカウントできます。複数の日を指定するには、数字をカンマ (
,) で区切ります (例:1,3,5)。 -
毎週:週の特定の日 (月曜日から日曜日) と実行する特定の時刻を選択します。
-
毎日:毎日の実行時刻を選択します。
説明ライフサイクルポリシーを設定すると、システムは指定された 開始時間と終了時間 内の [ライフサイクルポリシーの実行予定時刻] に、クラスターのサーバーレス設定パラメーターを調整します。調整完了後、クラスターのサーバーレス設定パラメーターは自動的には元に戻りません。特定の時刻に元の設定パラメーターを復元するには、別のライフサイクルポリシーを設定する必要があります。詳細な例については、「例」をご参照ください。
-
-
(オプション) 実行計画を表示できます。次のいずれかの方法を使用できます。
説明ライフサイクルポリシーは、スケジュールされたタスクを生成します。ポリシーを作成すると、システムはそのスケジュールに基づいて対応するタスクを作成します。
-
ライフサイクルポリシーを作成した後、クラスターの詳細ページで表示できます。
クラスターの詳細ページでは、[実行待ちの実行計画と失敗した再試行タスク] セクションで、生成されたスケジュール済みタスクを表示できます。このセクションには、タスク ID、タスクステータス (保留中) 、タスクアクション (例:[ModifyDBClusterServerlessConf])、スケジュールされた開始時刻などの情報が表示されます。また、[キャンセル] や [実行予定時刻の変更] などのアクションも実行できます。
-
コンソールで [タスク管理] > [定時タスク] に移動します。
このページでは、[タスクステータス] ([保留中] や [キャンセル済み] など) を表示できます。保留中のタスクについては、[操作] 列の [キャンセル] をクリックしてキャンセルできます。
-
例
シナリオ:8 月 1 日から 9 月 30 日までの平日 (月曜日から金曜日) の午前 9:30 にリソースを 5 PCU にスケールアップし、午後 10:00 に 1 PCU にスケールダウンしたいとします。これを行うには、次のように 2 つのライフサイクルポリシーを設定します。
|
ピーク期間のライフサイクルポリシー設定で、[単一ノードの最大リソース] と [単一ノードの最小リソース] の両方を 5 PCU に設定します。[読み取り専用ノードの最大数] と [読み取り専用ノードの最小数] の両方を 5 に設定します。次に [OK] をクリックします。 |
オフピーク期間のライフサイクルポリシー設定で、[単一ノードの最大リソース] と [単一ノードの最小リソース] の両方を 1 PCU に設定します。[読み取り専用ノードの最大数] と [読み取り専用ノードの最小数] の両方を 1 に設定します。次に [OK] をクリックします。 |
サーバーレス機能の無効化
サーバーレス機能の無効化をサポートしているのは、元々固定仕様クラスターとして作成され、後からサーバーレス機能が有効になったクラスターのみです。サーバーレスクラスターとして購入されたサーバーレスクラスターは、直接通常のクラスターに変換することはサポートしていません。このような変換が必要な場合は、新しい固定仕様クラスターを作成し、Data Transmission Service (DTS) を使用してデータを移行します。
サーバーレス機能を無効にすると、PolarDB はスケールアップしたすべてのリソースを回収し、クラスターはサーバーレス機能が有効になる前に使用していた元の固定仕様に戻ります。innodb_buffer_pool_size などのパラメーター値は、機能が有効になる前に使用されていた値に復元されます。使用中のリソースを回収すると、エラーが発生する可能性があります。この操作はオフピーク時間に実行することを推奨します。
[PolarDB コンソール] にログインします。左側のナビゲーションペインで、クラスター をクリックします。クラスターがデプロイされている[リージョン] を選択し、クラスター ID をクリックします。基本情報 ページのデータベースノード セクションで、Serverless の無効化 をクリックします。
関連ドキュメント
関連 API
|
API |
説明 |
|
クラスターのサーバーレス設定を照会します。 |
|
|
クラスターのサーバーレス設定を変更します。 |
|
|
クラスターのサーバーレス機能を無効にします。 |