機能の概要
このAPIは、OceanBaseクラスタインスタンスを作成するために使用します。
注意
クラスタインスタンス作成APIが正常に呼び出されると、対応するアカウントから料金が請求されます。料金の詳細については、インスタンスの課金に関するドキュメントをご参照ください。
呼び出しの説明
インターフェース制約
呼び出し元はマルチクラウドAPIにアクセスするためのキーを保有している必要があります。AccessKey IDとAccessKey Secretの取得方法の詳細については、アクセスキーの管理をご参照ください。
リクエストパス
POST /api/v2/instances
リクエストパラメータ
Header
名前 |
型 |
必須 |
説明 |
例値 |
|---|---|---|---|---|
| X-Ob-Project-Id | string | はい | プロジェクトID。 | hxq3ztx3377nby3v87ry**** |
Query
名前 |
型 |
必須 |
説明 |
例値 |
|---|---|---|---|---|
| requestId | string | はい | リクエストID。追跡に使用されます。 | dc302d76-66b5-48d8-ab53-a035******** |
Body
名前 |
型 |
必須 |
説明 |
例値 |
|---|---|---|---|---|
| chargeType | String | いいえ、省略した場合はデフォルトで"PostPay"になります | インスタンスの支払い方法。 値の範囲:
説明現在のバージョンではPostPayのみサポートされています。 |
PostPay |
| cloudProvider | String | はい | クラウドプロバイダ:
説明現在は一時的にAlibaba Cloudのみサポートしています。
|
ALIYUN |
| diskSize | Integer | はい
説明インスタンスがトランザクション型でストレージアーキテクチャが共有ストレージの場合は、この項目を記入しないでください。 |
ストレージ容量、単位はGiBです。ストレージ容量の制限はクラスタ仕様によって異なり、具体的には以下のとおりです:
|
100 |
| region | String | はい | インスタンスが属するリージョン。 | cn-shanghai |
| obVersion | String | はい | OceanBase Serverのバージョン番号。3桁のバージョン番号のみサポートされています。 | 4.2.1 |
| zones | String | はい | インスタンスが属するアベイラビリティゾーンIDです。複数のアベイラビリティゾーンIDを入力すると、作成されるインスタンスのアベイラビリティゾーン数(データセンター数)が示されます。複数のアベイラビリティゾーンを入力する場合は、カンマで区切り、重複しないようにしてください。
|
cn-hangzhou-h,cn-hangzhou-i,cn-hangzhou-j |
| instanceClass | String | はい | クラスタ仕様情報。現在、以下のプランがサポートされています:
|
16C70GB |
| replicaMode | String | はい | フル機能レプリカの数。zonesフィールドと一致させて入力してください。三アベイラビリティゾーン(多重データセンター)構成の場合は、フル機能レプリカを3つまでサポートします。二アベイラビリティゾーン(二重データセンター)構成の場合は、フル機能レプリカを2つまでサポートします。単一アベイラビリティゾーン(単一データセンター)構成の場合は、フル機能レプリカを2つまたは3つサポートできます。デフォルトはフル機能レプリカを2つです。
|
3 |
| dryRun | Boolean | いいえ | このリクエストを事前に検証するかどうかを示します。デフォルトはfalseです。 値の範囲:
DryRunResultはデフォルトでfalseを返します。 |
false |
| saleChannel | String | いいえ、デフォルト値:
|
注文チャネル。デフォルトは自社運営チャネル:
説明現在は一時的にnormandyチャネルからの注文のみをサポートしています。
|
normandy_domestic |
| instanceType | String | いいえ | インスタンスタイプ。デフォルトはCLUSTERです。 値の範囲:
|
CLUSTER |
| instanceName | String | いいえ | 長さは2~64文字で、漢字、数字、英字、アンダースコア、ハイフンのみ含めることができます。 | xxx_test |
| storageArchitecture | String | いいえ | ストレージアーキテクチャ。デフォルトは存算一体クラスタです。 値の範囲:
|
standardStorage |
| diskType | String | いいえ | ディスクタイプ。 | |
| storageDiskType | String | いいえ | ストレージディスクタイプ。 |
戻り値
名前 |
型 |
説明 |
サンプル値 |
|---|---|---|---|
| success | boolean | リクエストが成功したかどうか。 | true/false |
| data | Object | 注文情報。 | |
| data.orderId | String | 注文ID。 | NL240919******** |
| data.instanceId | String | インスタンスID。 | ob677efwh8******** |
| data.dryRunResult | boolean | dryRunの結果。合格ならtrue、不合格なら対応するエラーメッセージを返す。 | TRUE |
| requestId | String | trace | dc302d76-66b5-48d8-ab53-a035********(64ビット) |
| errorCode | String | エラーコード | Params.InstanceName.Invalid |
| errorMessage | String | エラーメッセージ | クラスタ名の検証に失敗しました |
例
リクエスト例
curl --request POST \
--digest -u '<Your AK:SK>' \
--url 'https://api-cloud.oceanbase.com/api/v2/instances?requestId={requestId}' \
-H 'X-Ob-Project-Id: {X-Ob-Project-Id}' \
-H 'Content-Type: application/json' \
--data '{
"cloudProvider": "ALIYUN",
"diskSize": 100,
"region": "cn-shanghai",
"obVersion": "4.2.1",
"zones": "cn-shanghai-e",
"instanceClass": "4C16GB",
"replicaMode": "3",
"saleChannel": "normandy_domestic",
"instanceType": "CLUSTER",
"chargeType": "PostPay",
"instanceName": "test_instance_name",
"dryRun": true
}'
説明
- プロジェクトIDはプロジェクトの一意の識別子です。プロジェクト管理を参照して、クラスタのプロジェクトIDを取得できます。
- インスタンスIDが属するプロジェクトのIDが指定されたプロジェクトIDと一致していることを確認してください。
レスポンス例
dryRunがfalseの場合のリクエスト成功レスポンス例:
{
"data": {
"instanceId": "ob677efwh8********",
"orderId": "ND241030********"
},
"requestId": "cf97d046-5200-4870-8007-ee35********",
"success": true
}
dryRunがtrueの場合のリクエスト成功レスポンス例:
{
"data": {
"dryRunResult": true
},
"requestId": "dc302d76-66b5-48d8-ab53-a035********",
"success": true
}
リクエスト失敗レスポンス例:
{
"errorCode": "Params.InstanceName.Invalid",
"errorMessage": "Cluster name validation failed",
"requestId": "cb32942e-bdf2-4d85-a26f-6bf8********",
"success": false
}