ディスク、メモリー、および CPU のスケーリング
共有コンピュートホスティングモデルは、より細かいリソース割り当てをサポートしています。 詳しくは ホスティングモデル を参照。
Isolated Compute ホストフレーバーのインスタンスをスケールするには、関連する hostflavor パラメータを "b3c.4x16.encrypted" のように、ターゲットとする
Isolated Compute サイズに設定します。 これにはCPUとRAMの割り当て選択が含まれるため、CPUとRAMを別々に選択しないでください。
Shared Compute ホストフレイバーインスタンスを最小 CPU 値と 2 CPU の間でスケールするには、このドキュメントの以下のコマンドを使用して CPU を 0 に設定し、RAM 割り当てをスケールします。 CPUの値は、1CPU:8GB
RAMの比率で、最大2CPUまで増減します。 2CPU以上に拡張するには、CPUとRAMの割り当てを目標割り当てに設定します。 どちらの場合も、hostflavor パラメータに "multitenant "を含めてください。
Isolated Compute ホストフレーバーのインスタンスをスケールするには、関連する host_flavor パラメータを "b3c.4x16.encrypted" のように、ターゲットとする
Isolated Compute サイズに設定します。 これにはCPUとRAMの割り当て選択が含まれるため、CPUとRAMを別々に選択しないでください。
Shared Compute ホストフレイバーインスタンスを最小 CPU 値と 2 CPU の間でスケールするには、以下のコマンドを使用して CPU を 0 に設定し、RAM 割り当てをスケールします。 CPUの値は、1CPU:8GB
RAMの比率で、最大2CPUまで増減します。 2CPU以上に拡張するには、CPUとRAMの割り当てを目標割り当てに設定します。 どちらの場合も、host_flavor パラメータに "multitenant "を含めてください。
Isolated Compute ホストフレーバーのインスタンスをスケールするには、関連する host_flavor パラメータを "b3c.4x16.encrypted"
のように、ターゲットとする Isolated Compute サイズに設定します。 これにはCPUとRAMの割り当て選択が含まれるため、CPUとRAMを別々に選択しないでください。
Shared Compute ホストフレイバーインスタンスを最小 CPU 値と 2 CPU の間でスケールするには、以下のコマンドを使用して CPU を 0 に設定し、RAM 割り当てをスケールします。 CPUの値は、1CPU:8GB
RAMの比率で、最大2CPUまで増減します。 2CPU以上に拡張するには、CPUとRAMの割り当てを目標割り当てに設定します。 どちらの場合も、host_flavor パラメータに "multitenant "を含めてください。
Databases for MongoDB デプロイメントで使用できるリソース量を手動で調整し、ワークロードとデータのサイズに合わせることができます。
リソース内訳
Databases for MongoDB は、1 クラスターにつきデータ・メンバー 3 台で実行され、すべてのメンバーにリソースが均等に割り振られます。 例えば、MongoDB デプロイメントの最小ディスク・サイズ 30720 MB では、1 メンバーあたり 10240 MB の初期サイズが割り振られることになります。 MongoDB 展開の最小 RAM は 12288 MB で、これはメンバーごとに 4096 MB の初期割り当てに相当します。
請求は、サービスに割り振られているリソースの_合計_ 量に基づいて算出されます。
配置をプロビジョニングするとき、ディスクとメモリの初期リソース割り当てを 選択できます。 プロビジョン後にリソースがさらに必要になれば、デプロイメントを拡張できます。
ディスク使用
ディスク割り振りは、データすべてを保管するのに十分な量でなければなりません。 データは両方のデータ・メンバーにレプリケートされるため、使用するディスクの総量はデータ・セットのサイズの少なくとも2倍になります。
ディスク割り振り量は、ディスクのパフォーマンスにも影響を与えます。ディスクの容量が大きいほどパフォーマンスが高くなります。 ディスクのベースラインの 1 秒当たりの入出力操作 (IOPS) パフォーマンスは、1 GB 当たり 10 IOPS です。 ディスクを拡張して、デプロイが処理できるIOPSを増やします。
ストレージをスケールダウンすることはできません。 データ・セットのサイズが減少した場合は、バックアップして新しいデプロイメントにリストアすることによって、スペースを復元できます。
RAM
メモリ・リソースはデータベース操作に使用され、 内部およびファイル・システム・キャッシュに 割り当てられるメモリ量も制御する。 データベースが要求のほとんどをキャッシュを利用して処理できる場合は、ディスクから読み取る必要がないので、パフォーマンスが向上します。
デプロイメントに割り振られているメモリー量は、すべてのメンバーで分割されます。 合計割り振りに対してメモリー量を追加すると、すべのメンバーにメモリーが均等に追加されます。
vCPU
データベースのワークロードがより多くのCPUリソースを必要とすることがわかった場合、サービスに割り当てられるCPUの量を調整することができます。 データベースインスタンスがIsolated Computeホスティングモデル上にある場合は、リソースのニーズに合ったCPU x RAMの構成を選択します。 データベースインスタンスが Shared Compute または Dedicated Core ホスティングモデル上にある場合、データベースに必要な CPU 割当を選択します。
旧式の専用コアインスタンスは非推奨であり、2025年5月に削除される。 新しいホスティングモデルの詳細については、ホスティングモデルの概要 を参照してください。
スケーリングに関する考慮事項
-
デプロイメントをスケール・アップすると、データベースが再始動する場合があります。 より容量の大きいホストにデプロイメントを移行する必要がある場合は、移行の一環としてデータベースが再始動されます。
-
RAM または CPU のスケール・ダウンでは、データベース・ノードは再始動しません。
-
ディスクをスケール・ダウンすることはできません。
-
ホスティングモデル(Shared Compute、Isolated Compute、Dedicated Cores)間のスケーリングは、デプロイメントを新しいホストに移動します。 データベースは、この移動の一環として再起動されます。 デプロイメントが新しいホストに移動されると、リソースを追加するだけよりも時間がかかることがあります。 詳細については、共有コンピュートと分離コンピュート を参照してください。
-
同様に、RAM やディスクを大幅に増やすと、追加の基礎ハードウェア・リソースをプロビジョニングするために、少し増やす場合よりも時間がかかることがあります。
-
スケーリング操作は、IBM Cloud® Activity Tracker Event Routing でログに記録されます。
-
リソース使用量に一定の傾向が見られる場合や、特定のリソースしきい値に達したときにスケーリングするようにセットアップする場合は、デプロイメントの自動スケーリングを有効にすることを検討してください。
現在のリソースとホスティング・モデルを見直す
Resources " タブには、"Hosting model " と "Resource allocations " の両方のタイルがある。 これらのタイルは、現在のリソースとホスティングモデルを反映しています。 各タイルの設定を調整するにはConfigureを選択します。
UI でのスケーリング
UIの Resources タブで、Resource allocations タイルのConfigureを選択する。 すると、リソースを調整できるパネルが開きます。
データベースがIsolated Computeホスティング・モデル上にある場合、"Host sizes "テーブルが表示されます。
共有コンピュート・ホスティング・モデルを使用している場合、メンバーあたり0.5 vCPUおよび4 GB RAMを提供するSmall構成、Small Customオプション、またはCustom構成が表示されます。 Small Customは、CLI、API、またはTerraformを使用してデータベースがスケーリングされたことを示し、よりきめ細かなリソースのスケーリングと、RAM値に対して日割り計算されたvCPUが自動的に割り当てられるオプションを提供します。 UI上では、SmallやCustomにスケールすることはできるが、CLIやAPI、Terraformで提供される細かな値にスケールすることはできない。 Custom の場合、スライダをドラッグするか、入力ボックスの値を調整して、データベースのメンバごとのvCPUおよび RAM の値を選択します。
ディスク(GB/メンバー)」スライダーは、メンバーごとのディスク選択です。 スライダーをドラッグするか、入力ボックスの数字を調整して、ディスクのGB数を変更します。 なお、ディスクは1GB=10IOPSでIOPSに連動している。
Members は、データベースのメンバー数です。 MongoDB,の場合、メンバーは3に設定されている。
下部の計算機で見積もり総額を確認してください。 レガシー価格体系とも呼ばれるグランドフェザーコストがある場合、データベースインスタンスをスケーリングすると、レガシー価格体系の一部または全部が削除されることに注意してください。 グラウンディングとその終了時期の詳細については、ホスティングモデル移行年表 を参照のこと。
完了したら、Apply changesをクリックしてスケーリング操作を開始します。
UIでホスティングモデルを切り替える
UIの Resources タブで、Hosting model タイルのConfigureを選択する。 ホスティングモデルの選択を調整できるパネルが開きます。
最初のオプションは「ホスティングモデルの選択」です。 ここで、別のホスティングモデルに切り替えることができます。
その下には、選択した新しいホスティングモデルのリソースを調整するオプションも表示されます。 前のセクション「UIでのスケーリング」の指示に従って、リソースを調整してください。
*変更を適用]*をクリックすると、このスケール操作がトリガーされる。
現在のリソースとホスティング・モデルを見直す
IBM Cloud CLI クラウド・データベース・プラグインでは、デプロイメントのリソースの表示およびスケーリングがサポートされます。 コマンド cdb deployment-groups を使用することにより、調整可能なリソース・グループを含め、サービスの現在のリソース情報を確認できます。
使用可能なリソース・グループのいずれかをスケーリングするには、cdb deployment-groups-set コマンドを使用します。
たとえば、次のコマンドを使用すると、「example-deployment」という名前の配置のリソース グループを表示できます。 このコマンドは、データベースが Shared Compute インスタンスであるか Isolated Compute インスタンスであるかも、hostflavor 属性によって明らかにします。 hostflavor NULLの場合は、旧式のホスティングモデルである。
ibmcloud cdb deployment-groups <INSTANCE_NAME_OR_CRN>
このコマンドは、以下の出力を生成します。
Group member
Count 3
|
+ Memory
| Allocation 6144mb
| Allocation per member 2048mb
| Minimum 6144mb
| Step Size 256mb
| Adjustable true
| Cpu Enforcement Ratio Ceiling 49152mb
| Cpu Enforcement Ratio 8192mb
|
+ CPU
| Allocation 0
| Allocation per member 0
| Minimum 6
| Step Size 2
| Adjustable true
|
+ HostFlavor
| ID multitenant
| Name
| HostingSize
|
+ Disk
| Allocation 30720mb
| Allocation per member 10240mb
| Minimum 30720mb
| Step Size 2048mb
| Adjustable true
このデプロイメントでは、3 つのメンバーに合計で RAM 6144 MB とディスク 30720 MB が割り振られています。 「per member (1 メンバーあたり)」の割り振り量は、RAM 2048 MB とディスク 10240 MB です。 最小値は、設定可能な合計割り振りの最小値です。 「step size (ステップ・サイズ)」は、合計割り振りの調整可能な最小単位です。
CLI でのリソースとスケーリング
cdb deployment-groups-set コマンドでは、RAMの総割り当て量またはディスクの総割り当て量をMB単位で設定できる。 例えば、「example-deployment」のメモリーを 1 メンバーあたり RAM 4096 MB (合計メモリー 12288 MB) にスケーリングするには、以下のコマンドを使用します。
ibmcloud cdb deployment-groups-set <INSTANCE_NAME_OR_CRN> member --memory 12288
データベースのホスティングモデルを決定する
hostflavor 属性の値を確認するには、次のコマンドを使います。 データベースが非推奨のホスティングモデル(SharedやIsolated Computeではない)である場合、これはNULLになります。
ibmcloud cdb groups <deployment_id> --json
CLIでホスティング・モデルを切り替える
データベースが Shared Compute インスタンスの場合、以下のコマンドでメモリ、CPU、ディスクのオプションを調整できます。 データベースがShared Compute上にない場合、このコマンドはデータベースを別のホスティング・モデルからShared Computeホスティング・モデルに移動します。
ibmcloud cdb deployment-groups-set <deploymentid> <groupid> [--memory <val>] [--cpu <val>] [--disk <val>] [--hostflavor multitenant]
例えば、以下を使用して、Shared Computeインスタンスにスケールしたり、Shared Computeインスタンスをスケールアップします:
ibmcloud cdb deployment-groups-set crn:abc ... xyz:: member --memory 24576 --cpu 6 --hostflavor multitenant
データベースが Isolated Compute インスタンスの場合、メモリとCPUはIsolated Computeサイズを選択することで一緒に調整されます(表1のすべてのサイズを参照してください)。 ディスクは個別にスケーリングされる。 データベースがIsolated Compute上にない場合、このコマンドはデータベースを別のホスティング・モデルからIsolated Computeホスティング・モデルに移動します。
ホストのフレーバー選択にはCPUとRAMのサイズが含まれるため b3c.4x16.encrypted は4CPUと16RAM)、このリクエストはIsolatedサイズの選択とCPUとRAMの個別の割り当て選択の両方を受け付けないことに注意。
ibmcloud cdb deployment-groups-set <deploymentid> <groupid> [--disk <val>] [--hostflavor <hostflavor>]
例えば、以下を使用して、Isolated Computeインスタンスにスケールしたり、Isolated Computeインスタンスをスケールアップします:
ibmcloud cdb deployment-groups-set crn:abc ... xyz:: member --hostflavor b3c.8x32.encrypted
CPU および RAM の自動スケーリングは、Cloud Databases Isolated Compute ではサポートされていません。 ディスクの自動スケーリングが可能。 分離されたインスタンスをプロビジョニングした場合、または自動スケーリング付きのデプロイメントから切り替えた場合は、IBM Cloud® Monitoring 統合 を使用してリソースを監視します。 インスタンスにリソースを追加するには、デプロイメントを手動でスケールします。
hostflavor パラメーター
hostflavor パラメータは、コンピュートサイズを定義します。 Shared Computeインスタンスをプロビジョニングするには、multitenant を指定します。 Isolated Computeインスタンスをプロビジョニングするには、希望するCPUとRAMの構成に適切な値を入力します。
| ホストのフレーバー | hostflavorの値 |
|---|---|
| 共有コンピュート | multitenant |
| 4 CPU x 16 RAM | b3c.4x16.encrypted |
| 8 CPU x 32 RAM | b3c.8x32.encrypted |
| 8 CPU x 64 RAM | m3c.8x64.encrypted |
| 16 CPU x 64 RAM | b3c.16x64.encrypted |
| 32 CPU x 128 RAM | b3c.32x128.encrypted |
| 30 CPU x 240 RAM | m3c.30x240.encrypted |
現在のリソースとホスティング・モデルを見直す
サービスの_「概要」パネルに表示される「ファウンデーション・エンドポイント (Foundation Endpoint)」_には、API を使用してこのデプロイメントにアクセスするための基本 URL が示されています。 スケーリングをプログラムで管理または自動化する必要がある場合には、それを /groups エンドポイントで使用します。
デプロイメントの現在のリソースとスケーラブルなリソースを調べるには、/deployments/{id}/groups エンドポイントを使用します。 このコマンドは、データベースが Shared Compute インスタンスであるか Isolated Compute インスタンスであるかも、host_flavor 属性によって明らかにします。 host_flavor NULLの場合は、旧式のホスティングモデルである。
curl -X GET https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups -H 'Authorization: Bearer <>' \
API によるスケーリング
配置のメモリを各メモリ メンバの RAM 4096 MB(合計メモリ 12288 MB)に拡張するには、次のコマンドを使用します:
curl -X PATCH https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups/member
-H 'Authorization: Bearer <>'
-H 'Content-Type: application/json'
-d '{"memory": {"allocation_mb": 12288}}' \
詳しくは、API リファレンスを参照してください。
データベースのホスティングモデルを決定する
host_flavor 属性の値を確認するには、次のコマンドを使います。 データベースが非推奨のホスティングモデル(SharedやIsolated Computeではない)である場合、これはNULLになります。
curl -X GET https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups
-H 'Authorization: Bearer <>' \
APIでホスティングモデルを切り替える
Cloud Databases Shared Computeインスタンスをスケールするには、host_flavor を multitenant に設定して、以下のコマンドを使用します。 データベースがShared Compute上にない場合、このコマンドはデータベースを別のホスティング・モデルからShared Computeホスティング・モデルに移動します。
curl -X PATCH https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups/member
-H 'Authorization: Bearer <>'
-H 'Content-Type: application/json'
-d '{"host_flavor": {"id": "multitenant"},
"cpu": {"allocation_count": 3},
"memory": {"allocation_mb": 12288}
}' \
インスタンスをCloud Databases Isolated Computeインスタンスにスケールしたり、異なるIsolated Computeサイズにスケールするには、host_flavor パラメータを使用します。 利用可能なホスティングサイズとその host_flavor 値パラメータは 表1 にリストされています。 例えば、{"host_flavor": "b3c.4x16.encrypted"}です。
ホストのフレーバー選択はCPUとRAMのサイズを含むので(b3c.4x16.encrypted は4CPUと16RAMです)、このリクエストはIsolatedサイズの選択とCPUとRAMの個別の割り当て選択の両方を受け付けないことに注意してください。 Cloud Databasesでスケールします。APIのスケーリングエンドポイントを使います:
curl -X PATCH https://api.{region}.databases.cloud.ibm.com/v5/ibm/deployments/{id}/groups/member
-H 'Authorization: Bearer <>'
-H 'Content-Type: application/json'
-d '{"host_flavor": {"id": "b3c.4x16.encrypted"}}' \
Isolated Computeでプロビジョニングやスケーリングを行う場合、CPUやRAMの割り当てはできません。 CPU と RAM を独立に選択するには、host_flavor パラメータに mulitenant を指定します。
CPU および RAM の自動スケーリングは、Cloud Databases Isolated Compute ではサポートされていません。 ディスクの自動スケーリングが可能。 Isolated インスタンスをプロビジョニングした場合、または自動スケーリング付きのデプロイメントから切り替えた場合は、メモリ、ディスク領域、およびディスク I/O 使用率のメトリックを提供する IBM Cloud® Monitoring 統合 を使用してリソースを監視してください。 インスタンスにリソースを追加するには、デプロイメントを手動でスケールします。
host flavor パラメーター
host_flavor パラメータは、コンピュートサイズを定義します。 Shared Computeインスタンスをプロビジョニングするには、multitenant を指定します。 Isolated Computeインスタンスをプロビジョニングするには、希望するCPUとRAMの構成に適切な値を入力します。
| ホストのフレーバー | host_flavorの値 |
|---|---|
| 共有コンピュート | multitenant |
| 4 CPU x 16 RAM | b3c.4x16.encrypted |
| 8 CPU x 32 RAM | b3c.8x32.encrypted |
| 8 CPU x 64 RAM | m3c.8x64.encrypted |
| 16 CPU x 64 RAM | b3c.16x64.encrypted |
| 32 CPU x 128 RAM | b3c.32x128.encrypted |
| 30 CPU x 240 RAM | m3c.30x240.encrypted |
現在のリソースとホスティング・モデルを見直す
cpu { allocation_count = }、 memory {allocation_mb = }、 disk { allocation_mb = } のテラフォームスクリプトをチェックして、データベースへのリソース割り当てを見直す。 データベースが Shared Compute 型か Isolated Compute 型かを判断するために、host_flavor 設定を確認してください。 host_flavor 存在しない場合、データベースは旧式のホスティング・モデルを使用しています。
Terraformでスケーリングする
既存のインスタンスでTerraformスクリプトを実行する前に、terraform plan コマンドを使用して、現在のインフラストラクチャの状態とTerraformファイルで定義された希望の状態を比較します。 resource_group_id, service plan, version, key_protect_instance, key_protect_key,
backup_encryption_key_crn 属性に変更を加えると、インスタンスが再作成されます。 Forces new resource 指定による現在の引数参照の一覧は、ibm_database Terraform Registry を参照してください。
興味のあるリソース用にTerraformスクリプトを調整することで、インスタンスをスケールさせる。 以下の例では、cpu、memory、disk の割り当てが指定されている。 ホストのフレーバー(Isolated ComputeまたはShared Compute Multitenant)を選択している場合は、スクリプトでホストのフレーバーを選択しておいてください。
変更を実行するには、terraform apply を実行してください。
data "ibm_resource_group" "group" {
name = "<your_group>"
}
resource "ibm_database" "<your_database>" {
name = "<your_database_name>"
plan = "standard"
location = "eu-gb"
service = "databases-for-mongodb"
resource_group_id = data.ibm_resource_group.group.id
tags = ["tag1", "tag2"]
adminpassword = "password12"
group {
group_id = "member"
cpu {
allocation_count = 6
}
memory {
allocation_mb = 24576
}
disk {
allocation_mb = 256000
}
}
users {
name = "user123"
password = "password12"
}
allowlist {
address = "172.168.1.1/32"
description = "desc"
}
}
output "ICD MongoDB database connection string" {
value = "http://${ibm_database.test_acc.ibm_database_connection.icd_conn}"
}
Terraformでホスティングモデルを切り替えて拡張する
データベースをスケーリングしたい ホスティングモデル を選択します。 これは後から変更できます。
Databases for MongoDBインスタンスをShared Computeホスティングフレーバーにスケールするには、"host_flavor" パラメータを multitenant に設定します。 これは、Shared Computeホスティングフレーバーにスケールアップしたい場合や、ホストフレーバーを維持したままリソースをスケールアップしたい場合に有効です。 変更を実行するには、terraform apply を実行してください。
以下の例を参照してください。
data "ibm_resource_group" "group" {
name = "<your_group>"
}
resource "ibm_database" "<your_database>" {
name = "<your_database_name>"
plan = "standard"
location = "eu-gb"
service = "databases-for-mongodb"
resource_group_id = data.ibm_resource_group.group.id
tags = ["tag1", "tag2"]
adminpassword = "password12"
group {
group_id = "member"
host_flavor {
id = "multitenant"
},
cpu {
allocation_count = 6
}
memory {
allocation_mb = 24576
}
disk {
allocation_mb = 256000
}
}
users {
name = "user123"
password = "password12"
}
allowlist {
address = "172.168.1.1/32"
description = "desc"
}
}
output "ICD MongoDB database connection string" {
value = "http://${ibm_database.test_acc.ibm_database_connection.icd_conn}"
}
Databases for MongoDBインスタンスをIsolated Computeにスケールするには、同じパラメータを使用し、希望のIsolatedサイズに設定します "host_flavor" このコマンドは、データベースインスタンスを別のIsolated Computeサイズにスケールしたり、別のホストフレーバーからIsolated Computeホストフレーバーに移動したりするのに使用します。 利用可能なホスティングサイズとその
host_flavor value パラメータは 表1 にリストされています。 例えば、{"host_flavor": "b3c.4x16.encrypted"}です。 ホストのフレーバー選択はCPUとRAMのサイズを含むので(b3c.4x16.encrypted は4CPUと16RAMです)、このリクエストはIsolatedサイズの選択とCPUとRAMの別々の割り当て選択の両方を受け付けないことに注意してください。
変更を実行するには、terraform apply を実行してください。
data "ibm_resource_group" "group" {
name = "<your_group>"
}
resource "ibm_database" "<your_database>" {
name = "<your_database_name>"
plan = "standard"
location = "eu-gb"
service = "databases-for-mongodb"
resource_group_id = data.ibm_resource_group.group.id
tags = ["tag1", "tag2"]
adminpassword = "password12"
group {
group_id = "member"
host_flavor {
id = "b3c.8x32.encrypted"
}
disk {
allocation_mb = 256000
}
}
users {
name = "user123"
password = "password12"
}
allowlist {
address = "172.168.1.1/32"
description = "desc"
}
}
output "ICD MongoDB database connection string" {
value = "http://${ibm_database.test_acc.ibm_database_connection.icd_conn}"
}