DBaaSでもシェイプ変更可能に
ついにOracle Cloud Infrastructure Database(VM)でもシェイプ(CPU)を変更できるようになった。
Oracle Cloud Infrastructure ClassicのDatabase Cloud Serviceでは、初期のころからCPUコア数を変更できた。しかしOracle Cloud Infrastructure Databaseでは、Bare Metalは変更できたが―――それもオンラインで―――、VMでは変更できなかった。
この機能拡張によって、利用状況に応じてCPUコア数の変更が可能になり、コスト最適化が図れるようになった。またData Guard構成のとき、従来はプライマリとスタンバイを同じシェイプにする必要があったが、その必要もなくなった。
おまけ:Linux OSにおける動的CPUコア数変更
今回のDBaaS(VM)とは関係ないが、DBaaS(BM)ではCPUホットプラグ機能を使って、CPUコアを動的に有効/無効化している。実際には、さらにOracle DBパラメータも変更している。
# CPUコアの無効化
echo 0 > /sys/devices/system/cpu/cpu<#>/online
CPUコアの有効化
echo 1 > /sys/devices/system/cpu/cpu<#>/online
※<#>にはCPUスレッド番号
たとえばHyper-Threadingが有効な2物理コアでは、0から3までの4CPUスレッドがあり、動的に変更できる。
ls -d /sys/devices/system/cpu/cpu?
/sys/devices/system/cpu/cpu0 /sys/devices/system/cpu/cpu2
/sys/devices/system/cpu/cpu1 /sys/devices/system/cpu/cpu3
シェイプの変更方法
シェイプは管理コンソールやCLI等で変更できる。なお、障害に備えて事前にバックアップを取得することを推奨する。またOSの再起動が必要なので、数分から10分程度のダウンタイムが発生する。
- 管理コンソールから**「シェイプの変更(Change Shape)」**をクリックする。
2.シェイプの一覧から選択して**「シェイプの変更(Change Shape)」をクリックすると変更を開始する。
3. 進捗状況は「作業リクエスト(Work Requests)」で確認できる。ステータスが「利用可能(AVAILABLE)」**になれば終了だ。
おわりに
これでDBaaSの不満の一つが解消されたが、今後は次のあたりが改良してほしいところ。Autonomous DBもあり大変だとは思うが、AWSもRDSとAuroraでそれぞれ進歩させているのだから。
-
リージョン間の自動Data Guard→2020/3/31にできるようになった(Configuring Oracle Data Guard across regions) - メジャーバージョン間の容易なマイグレーションの仕組み
- バックアップの強化(OCI-Cのほうがよかった)
- dbcli等の管理ツール強化