プロビジョニング
IBM Cloud® Databases for MongoDB カタログ、、、、、、オープンソースで構築済み、エンタープライズ対応。 Cloud Databases CLIプラグイン Cloud Databases API テラフォーム テラフォーム Terraform IBM モジュール(TIM)
IBM Cloud コンソールを使用したプロビジョニング
以下のパラメータを指定して、コンソールから提供する。
サービスの詳細
- サービス名: 名前には任意の文字列を指定でき、新しい配置を識別するために Web や CLI で使用される名前です。
- リソース・グループ: サービスを リソース・グループに編成している場合は、このフィールドにリソース・グループを指定します。 それ以外の場合は、この値をデフォルトのままにしておくことができます。 詳細は、リソースグループの管理を参照してください。
- 場所 :展開するパブリッククラウドのリージョン。
ホスティング・モデル
- 分離: 複雑で高性能のエンタープライズ・ワークロード向けのセキュアなシングル・テナント・オファリング。
- 共有: 柔軟性の高いマルチテナント型で、動的かつきめ細かな容量の選択が可能です。
Databases for MongoDB エンタープライズ機能は、Isolated Computeでのみ利用可能です。
詳しくは、 Hosting models および Databases for MongoDB plans を参照してください。
リソース割り振り
リソース割り振りを微調整します。 使用可能なオプションは、選択したホスティング・モデルによって異なります。
- 分離: この表を使用して、デプロイメントの各メンバーのマシン・サイズを選択し、ディスク・サイズを指定します。
- 共有: デフォルトでは、可能な限り最小のリソース割り振りが選択されます。 これは、小規模なアプリケーションやテストに最適です。 割り振り量が多い場合は、 「カスタム」 タイルを選択します。これにより、2 つ以上のコアを使用した柔軟なリソース構成が可能になります。
共有コンピューティング ホスティング モデルは、明瞭性を維持するために UI には表示されない、よりきめ細かいリソース割り当てをサポートします。 詳細については、ホスティングモデル。
要件に応じてディスク・サイズを指定します。 プロビジョニング後に増やすことはできますが、データ損失を防ぐために減らすことはできません。
サービス構成
- データベースのバージョン: 配置時のみ設定 これはデータベースの配置バージョンです。 最適なパフォーマンスを確保するために、推奨バージョンを実行することをお勧めします。 詳細については、バージョン管理ポリシー。
- データベースのエディション: 展開時のみ設定 Standard、Enterprise、Enterprise Sharding プランから選択。 エンタープライズプランとエンタープライズシャーディングプランは、共有ホスティングではご利用いただけませんのでご注意ください。 詳細については、予定。
- 暗号化: デプロイメント時にのみ設定Key Protect を使用する場合は、デプロイメントのディスクを暗号化するためにインスタンスと鍵を選択できます。 独自の鍵を使用しない場合、デプロイメントは自動的に自身のディスク暗号鍵を作成して管理します。
- エンドポイント:展開時にのみ設定設定するサービスエンドポイント 展開時に。 デフォルト設定はプライベート。
Databases for MongoDB、パブリックエンドポイントとプライベートエンドポイントの両方を同時に持つことはできない。
適切な設定を選択したら、作成をクリックしてプロビジョニング・プロセスを開始します。
CLI を使用したプロビジョニング
CLI経由でサービスインスタンスを作成する
プロビジョニングの前に、資料に記載されている指示に従って、 IBM Cloud CLI ツールをインストールします。
-
IBM Cloud にログインします。 フェデレーテッド・ユーザー ID を使用する場合は、ワンタイム・パスコード (
ibmcloud login --sso) に切り替えるか、API キー (ibmcloud --apikey key or @key_file) を使用して認証することが重要です。 CLI を使用してログインする方法の詳細については、ibmcloud loginの「 一般的な CLI(ibmcloud)コマンド 」を参照してください。ibmcloud login -
データベースをプロビジョンする ホスティング・モデル を選択します。 これは後から変更できます。
-
次のコマンドを使用してデータベースをプロビジョニングします。
ibmcloud resource service-instance-create <INSTANCE_NAME> <SERVICE_NAME> <SERVICE_PLAN_NAME> <LOCATION> -g <RESOURCE_GROUP> -p '{"members_host_flavor": "<members_host_flavor value>"}' --service-endpoints="<endpoint>"
例えば、Databases for MongoDB Shared Computeホスティングモデルのインスタンスをプロビジョニングするには、次のようなコマンドを使います:
ibmcloud resource service-instance-create test-database databases-for-mongodb standard us-south -p '{"members_host_flavor": "multitenant", "members_memory_allocation_mb": "12288"}' --service-endpoints="private"
Databases for MongoDB Isolatedインスタンスを同じ "members_host_flavor" -pパラメータで用意し、希望のIsolatedサイズに設定します。 利用可能なホスティングサイズとその members_host_flavor value パラメータは 表2。 例えば、{"members_host_flavor": "b3c.4x16.encrypted"}です。
ホストのフレーバー選択はCPUとRAMのサイズを含むので(b3c.4x16.encrypted は4CPUと16RAMです)、このリクエストはIsolatedサイズの選択とCPUとRAMの別々の割り当て選択の両方を受け付けないことに注意してください。
ibmcloud resource service-instance-create test-database databases-for-mongodb enterprise us-south -p '{"members_host_flavor": "b3c.4x16.encrypted"}' --service-endpoints="private"
コマンド内のフィールドについては、以下の表で説明されています。
| フィールド | 説明 | フラグ |
|---|---|---|
INSTANCE_NAME 必須 |
インスタンス名には任意の文字列を指定でき、Web上やCLIで新しいデプロイメントを識別するために使用される名前です。 | |
SERVICE_NAME 必須 |
サービスの名前または ID。 のためにDatabases for MongoDB 、 使用 databases-for-mongodb。 |
|
SERVICE_PLAN_NAME 必須 |
enterprise enterprise-sharding または standard |
|
LOCATION 必須 |
配置したい場所。 地域のリストを取得するには、ibmcloud regions 指示。 |
|
RESOURCE_GROUP |
リソース グループ名。 デフォルト値は defaultです。 |
-g |
--parameters |
サービス・インスタンスを作成するパラメーターの JSON ファイルまたは JSON 文字列 | -p |
members_host_flavor |
分離または共有コンピューティングインスタンスをプロビジョニングするには、{"members_host_flavor": "<members_host_flavor value>"}。 共有コンピューティングの場合は、multitenant。 分離コンピューティングの場合は、必要な CPU と RAM の構成を選択します。 詳細については、以下の表または
ホスティングモデル を参照してください。 |
|
--service-endpoints 必須 |
public または private のいずれかで、デプロイの サービスエンドポイントを設定します。 |
CLIでは、 service-endpoints はパラメータではなくフラグである。
members host flavor パラメーター
members_host_flavor パラメーターは、コンピュートのサイジングを定義します。
-
Shared Computeインスタンスをプロビジョニングするには、
multitenantを指定します。 分離されたコンピューティング インスタンスをプロビジョニングするには、必要な CPU および RAM 構成に適切な値を入力します。メンバーズ・ホスト・フレーバー・サイジング・パラメーター 会員ホストのフレーバー members_host_flavorの値 共有コンピュート multitenant4 CPU x 16 RAM b3c.4x16.encrypted8 CPU x 32 RAM b3c.8x32.encrypted8 CPU x 64 RAM m3c.8x64.encrypted16 CPU x 64 RAM b3c.16x64.encrypted32 CPU x 128 RAM b3c.32x128.encrypted30 CPU x 240 RAM m3c.30x240.encrypted次のような応答が表示されます:
Creating service instance INSTANCE_NAME in resource group default of account USER... OK Service instance INSTANCE_NAME was created. Name: INSTANCE_NAME ID: crn:v1:bluemix:public:databases-for-mongodb:us-south:a/ 40ddc34a846383BGB5b60e:dd13152c-fe15-4bb6-af94-fde0af5303f4:: GUID: dd13152c-fe15-4bb6-af94-fde0af56897 Location: LOCATION State: provisioning Type: service_instance Sub Type: Public Service Endpoints: private Allow Cleanup: false Locked: false Created at: 2023-06-26T19:42:07Z Updated at: 2023-06-26T19:42:07Z Last Operation: Status create in progress Message Started create instance operation -
プロビジョニングの状態を確認するには、以下のコマンドを使用する:
ibmcloud resource service-instance <INSTANCE_NAME>完了すると、次のような応答が表示されます。
Retrieving service instance INSTANCE_NAME in resource group default under account USER's Account as USER... OK Name: INSTANCE_NAME ID: crn:v1:bluemix:public:databases-for-mongodb:us-south:a/40ddc34a953a8c02f109835656860e:dd13152c-fe15-4bb6-af94-fde0af5303f4:: GUID: dd13152c-fe15-4bb6-af94-fde5654765 Location: <LOCATION> Service Name: databases-for-mongodb Service Plan Name: standard Resource Group Name: default State: active Type: service_instance Sub Type: Public Locked: false Service Endpoints: private Created at: 2023-06-26T19:42:07Z Created by: USER Updated at: 2023-06-26T19:53:25Z Last Operation: Status create succeeded Message Provisioning mongodb with version 7.17 (100%) -
オプション:サービス・インスタンスを削除するには、以下のコマンドを実行する:
ibmcloud resource service-instance-delete <INSTANCE_NAME_OR_CRN>
CPUとRAMの自動スケーリングは、 Cloud Databases Isolated Computeではサポートされていません。 ディスクの自動スケーリングが使用可能です。 Isolated インスタンスをプロビジョニングした場合、または自動スケーリング付きのデプロイメントから切り替えた場合は、 IBM Cloud® Monitoring を使用してリソースを監視してください。 は、メモリ、ディスク領域、およびディスク I/O 使用率のメトリクスを提供します。 インスタンスにリソースを追加するには、デプロイメントを手動でスケーリングします。
--parameters パラメーター
service-instance-create コマンドは -p フラグをサポートしており、JSON形式のパラメータをプロビジョニング・プロセスに渡すことができる。 例えば、クラウド内のリソースを一意的に識別するクラウド・リソース名 (CRN) をパラメーター値として渡すことができます。 パラメーター名と値はすべて文字列として渡されます。
たとえば、データベースが特定のバックアップからプロビジョニングされ、新しいデータベースの展開に3つのメンバー全体で合計12GBのメモリが必要な場合、メンバーごとに4GBをプロビジョニングするコマンドは次のようになります:
ibmcloud resource service-instance-create databases-for-mongodb <SERVICE_NAME> standard us-south \
-p \ '{
"backup_id": "crn:v1:blue:public:databases-for-mongodb:us-south:a/54e8ffe85dcedf470db5b5ee6ac4a8d8:1b8f53db-fc2d-4e24-8470-f82b15c71717:backup:06392e97-df90-46d8-98e8-cb67e9e0a8e6",
"members_memory_allocation_mb": "4096"
}' --service-endpoints="private"
リソース・コントローラー API を使用したプロビジョニング
以下の手順に従って、Resource Controller API を使ってプロビジョニングを行います。
-
IAMトークンを取得する。
-
デプロイ先とするリソース・グループの ID を知っている必要があります。 アカウント内のリソースグループのリストを取得するには、このコマンドを使用します:
curl -X GET "https://resource-controller.cloud.ibm.com/v2/resource_groups?account_id=<YOUR_ACCOUNT>" -H "Authorization: Bearer <TOKEN>" -
配備したい地域を知る必要がある。 現在のリージョンからデプロイメントをプロビジョニングできるすべてのリージョンを一覧表示するには、このAPIコマンドを使用する:
curl -X GET https://api.<YOUR-REGION>.databases.cloud.ibm.com/v5/ibm/regions -H 'Authorization: Bearer <TOKEN>' \ -
データベースをプロビジョンする ホスティング・モデル を選択します。 これは後から変更できます。
ホスト フレーバーは、保証されたリソース割り当ての固定サイズを表します。 あなたの地域で利用可能なホストフレーバーを確認するには、ホストフレーバー機能エンドポイント このような:
curl -X POST https://api.{region}.databases.cloud.ibm.com/v5/ibm/capability/flavors \ -H 'Authorization: Bearer <>' \ -H 'ContentType: application/json' \ -d '{ "deployment": { "type": "mongodb", "location": "us-south" } }'戻り値は以下のようになります:
{ "deployment": { "type": "mongodb", "location": "us-south", "platform": "classic" }, "capability": { "flavors": [ { "id": "b3c.4x16.encrypted", "name": "4x16", "cpu": { "allocation_count": 4 }, "memory": { "allocation_mb": 16384 }, "hosting_size": "xs" }, { "id": "b3c.8x32.encrypted", "name": "8x32", "cpu": { "allocation_count": 8 }, "memory": { "allocation_mb": 32768 }, "hosting_size": "s" }, { "id": "m3c.8x64.encrypted", "name": "8x64", "cpu": { "allocation_count": 8 }, "memory": { "allocation_mb": 65536 }, "hosting_size": "s+" }, { "id": "b3c.16x64.encrypted", "name": "16x64", "cpu": { "allocation_count": 16 }, "memory": { "allocation_mb": 65536 }, "hosting_size": "m" }, { "id": "b3c.32x128.encrypted", "name": "32x128", "cpu": { "allocation_count": 32 }, "memory": { "allocation_mb": 131072 }, "hosting_size": "l" }, { "id": "m3c.30x240.encrypted", "name": "30x240", "cpu": { "allocation_count": 30 }, "memory": { "allocation_mb": 245760 }, "hosting_size": "xl" }, { "id": "multitenant", "name": "multitenant", "cpu": { "allocation_count": 0 }, "memory": { "allocation_mb": 0 }, "hosting_size": "" } ] } }図のように、
us-southリージョンの Databases for MongoDB インスタンスで利用可能な Isolated Compute ホストフレーバーは以下の通りです:b3c.4x16.encryptedb3c.8x32.encryptedm3c.8x64.encryptedb3c.16x64.encryptedb3c.32x128.encryptedm3c.30x240.encrypted
members_host_flavorパラメーターの詳細については以下を参照のこと。 -
上記の情報が揃ったら、IBM Cloudリソースコントローラで、新しいリソースインスタンスをプロビジョニングします。
curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances \ -H "Authorization: Bearer <TOKEN>" \ -H 'Content-Type: application/json' \ -d '{ "name": "<INSTANCE_NAME>", "target": "<targeted-region>", "resource_group": "RESOURCE_GROUP_ID", "resource_plan_id": "<SERVICE_PLAN_NAME>", "parameters": { "members_host_flavor": "<members_host_flavor_value>" "service_endpoints":"<ENDPOINT>", "version": "<version>" } }'例
Shared Computeインスタンスを作成するには、以下の例に従ってください:
curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances \ -H "Authorization: Bearer <TOKEN>" \ -H 'Content-Type: application/json' \ -d '{ \ "name": "my-instance", \ "target": "us-south", \ "resource_group": "<RESOURCE_GROUP_ID>", \ "resource_plan_id": "databases-for-mongodb-standard", \ "parameters": { "members_host_flavor": "multitenant", "service_endpoints":"private", "members_memory_allocation_mb": 12288, "members_cpu_allocation_count: 4 } \ }' \Databases for Elasticsearch Isolatedインスタンスを同じ
"members_host_flavor"パラメータで用意し、希望のIsolatedサイズに設定します。 利用可能なホスティングサイズとそのmembers_host_flavor valueパラメータは 表2。 例えば、{"members_host_flavor": "b3c.4x16.encrypted"}です。 メンバーホストのフレーバー選択はCPUとRAMのサイズを含むので(b3c.4x16.encryptedは4CPUと16RAMです)、このリクエストはIsolatedサイズの選択とCPUとRAMの別々の割り当て選択の両方を受け付けないことに注意してください。16GBのRAMと4つのCPUコアを持つインスタンスをIsolated Computeにデプロイするには、次の例を参照してください。
RESOURCE GROUP IDの値は、必ず「管理」>「アカウント」>「リソースグループ」にあるIDに置き換えてください。curl -X POST \ https://resource-controller.cloud.ibm.com/v2/resource_instances -H 'Authorization: Bearer <token>' \ -H 'Content-Type: application/json' \ -d '{ "name": "my-mongo", "target": "eu-gb", "resource_group": "<RESOURCE_GROUP_ID>", "resource_plan_id": "databases-for-mongodb-standard", "parameters": { "members_host_flavor":"b3c.4x16.encrypted"}, "service_endpoints":"private" } \ }' \コマンド内のフィールドについては、以下の表で説明されています。
フィールド 説明 フラグ name必須インスタンス名には任意の文字列を指定でき、Web上やCLIで新しいデプロイメントを識別するために使用される名前です。 resource_plan_id必須サービスの名前または ID。 Databases for MongoDB の場合は、 databases-for-mongodb-enterpriseまたはdatabases-for-mongodb-standardを使用する。target必須配置したい場所。 地域のリストを取得するには、 ibmcloud regions指示。resource_group必須リソース グループ名。 デフォルト値は defaultです。-g --parametersサービスインスタンスを作成するためのパラメータのJSONファイルまたはJSON文字列。 詳細は下記を参照 -p members_host_flavor分離または共有コンピューティングインスタンスをプロビジョニングするには、 {"members_host_flavor": "<members_host_flavor value>"}。 共有コンピューティングの場合は、multitenant。 分離コンピューティングの場合は、必要な CPU と RAM の構成を選択します。 詳しくは以下の表、または ホスティングモデル をご覧ください。service_endpoints必須- 配置でサポートされているサービスエンドポイント、publicまたはprivate。
members_host_flavor パラメーター
members_host_flavor パラメーターは、コンピュートのサイジングを定義します。 共有コンピュート・インスタンスをプロビジョンするには、 multitenant を指定します。 分離されたコンピューティング インスタンスをプロビジョニングするには、必要な CPU および RAM 構成に適切な値を入力します。
| 会員ホストのフレーバー | members_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とRAMの自動スケーリングは、 Cloud Databases Isolated Computeではサポートされていません。 ディスクの自動スケーリングが使用可能です。 Isolated インスタンスをプロビジョニングした場合、または自動スケーリング付きのデプロイメントから切り替えた場合は、 IBM Cloud® Monitoring を使用してリソースを監視してください。 は、メモリ、ディスク領域、およびディスク I/O 使用率のメトリクスを提供します。 インスタンスにリソースを追加するには、デプロイメントを手動でスケーリングします。
追加パラメーターのリスト
--parameters オブジェクトでは、サービスインスタンスを作成するために、以下のような追加情報を提供することができます:
-
backup_id- リストア元となるバックアップ・リソースの CRN。 バックアップは、同じサービス ID を持つデータベース配置によって作成される必要があります。 バックアップはプロビジョニングの後にロードされ、その後にそのデータを使用する新規デプロイメントが開始されます。 バックアップ CRN の形式はcrn:v1:<...>:backup:<uuid>です。 これを省略した場合、データベースは空のままプロビジョンされます。 -
version- プロビジョンするデータベースのバージョン。 省略した場合、データベースは最新のメジャー・バージョンとマイナー・バージョンを使用して作成されます。 -
disk_encryption_key_crn- KMSキーのCRN( Key Protect )のCRNで、ディスク暗号化に使用される。 KMSキーのCRNは、crn:v1:<...>:key:<id>の形式である。 -
backup_encryption_key_crn- KMS鍵のCRN( Key Protect )のCRNで、バックアップの暗号化に使用される。 KMSキーのCRNは、crn:v1:<...>:key:<id>の形式である。バックアップにキーを使用するには、まず サービス間委任 を有効にする必要があります。
-
members_memory_allocation_mb- データベース内のデータベース・メンバー間で共有されるメモリーの合計量。 たとえば、値が「12288」で、データベース メンバが 3 つある場合、デプロイメントには合計 12 GB の RAM が割り当てられ、メンバ 1 人あたり 4 GB の RAM が割り当てられます。 この指定を省略すると、データベース・タイプのデフォルト値が使用されます。 このパラメーターは、「マルチテナント」にのみ適用されます。 -
members_disk_allocation_mb- データベース・メンバー間で共有されるデータベース内のディスクの合計量。 例えば、値が「30720」で 3 つのメンバーが存在する場合、デプロイメントには合計 30 GB のディスクが与えられます (メンバーごとに 10 GB のディスク)。 この指定を省略すると、データベース・タイプのデフォルト値が使用されます。 このパラメーターは、「マルチテナント」にのみ適用されます。 -
members_cpu_allocation_count- 指定したコア数を有効にし、配置に割り当てます。 例えば、メンバーごとに 2 つの専用コアを使用するには、"members_cpu_allocation_count":"2"を使用します。 省略した場合は、デフォルトのShared Compute CPU:RAM比率が適用されます。 このパラメーターは、「マルチテナント」にのみ適用されます。 -
members_allocation_count- データベース・メンバーの総数。 このパラメータは水平スケーラブルなデータベースにのみ適用される。
Terraform を使用したプロビジョニング
始めに:
- Terraform CLIとIBM Cloud Providerプラグインをインストールします。
- IBM Cloud APIキーがあることを確認してください。
ibm_database Resource for Terraform は Cloud Databases デプロイのプロビジョニングをサポートします。 あるいは、Terraform IBM
Modules を使って Terraform IBM 用モジュール Databases for MongoDB でインフラを管理することもできます。
データベースをプロビジョンする ホスティング・モデル を選択します。 これは後から変更できます。
Terraformで分離されたコンピュートをプロビジョニングする
プロビジョニングDatabases for MongoDB同じインスタンスを分離 "host_flavor" パラメータを設定し、必要な分離サイズに設定します。 利用可能なホスティングサイズとその host_flavor value パラメータは 表1 にリストされています。 例えば、{"host_flavor": "b3c.4x16.encrypted"}です。
ホストフレーバーの選択にはCPUとRAMのサイズ(b3c.4x16.encrypted たとえば、CPU が 4 個、RAM が 16 個の場合、この要求は、分離されたサイズの選択と CPU と RAM の個別の割り当ての選択の両方を受け入れません。
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
service_endpoints = "private"
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}"
}
host flavor パラメーター
host_flavor パラメーターは、コンピュートのサイジングを定義します。
- 共有コンピュート- 共有コンピュート・インスタンスをプロビジョニングするには、
multitenantを指定します。 - Isolated compute- 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とRAMの自動スケーリングは、 Cloud Databases Isolated Computeではサポートされていません。 ディスクの自動スケーリングが使用可能です。 Isolated インスタンスをプロビジョニングした場合、または自動スケーリング付きのデプロイメントから切り替えた場合は、 IBM Cloud® Monitoring を使用してリソースを監視してください。 は、メモリ、ディスク領域、およびディスク I/O 使用率のメトリクスを提供します。 インスタンスにリソースを追加するには、デプロイメントを手動でスケーリングします。