機能の概要
このAPIは、指定されたOB Cloudデータベースインスタンスのテナントにプライベートネットワーク読み取り専用アドレスを作成します。このアドレスを設定することで、プライベートネットワーク環境からテナントの読み取り専用レプリカにアクセスできます。読み取りトラフィックと書き込みトラフィックを分離する必要があるビジネスシナリオに適しています。リクエストが成功すると、作成されたリソース情報が返されます。
呼び出しの説明
インターフェース制約
呼び出し元はマルチクラウドAPIにアクセスするためのキーを持っている必要があります。AccessKey IDとAccessKey Secretの取得方法については、アクセスキーの管理をご参照ください。
リクエストパス
POST /api/v2/instances/{instanceId}/tenants/{tenantId}/privatelink/readonly
リクエストパラメータ
パスパラメータ
名前 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| instanceId | string | はい | OB CloudデータベースインスタンスID。 | obcluster-***** |
| tenantId | string | はい | テナントID。 | t4louaeei**** |
クエリパラメータ
名前 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| requestId | string | はい | 追跡用のリクエストID。 | dc302d76-66b5-48d8-ab53-a035******** |
リクエストボディパラメータ
名前 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| zoneIdList | array[string] | いいえ | ゾーンIDのリストです。プライベートネットワーク読み取り専用アドレスのデプロイメントゾーンを指定します。
説明ProxySettingでプロキシ設定を指定した場合、このパラメータは含まれているため、再度指定する必要はありません。 |
["zone1", "zone2"] |
| userAccount | string | はい | プライベートネットワーク読み取り専用アドレスのデータベースユーザーアカウント。 | readonly_user |
| trafficStrategy | string | はい | トラフィック戦略。読み取り専用トラフィックの配分ルールを定義します。 | round_robin |
| replicaParams | string | はい | レプリカパラメータの設定。 | {"replicaCount": 2} |
| disasterRecoveryReplicaParams | string | いいえ | 災害復旧レプリカパラメータの設定。 | {"drReplicaCount": 1} |
| balancedStrategy | string | いいえ | ロードバランシング戦略。 | weighted |
| disasterRecoveryStrategy | string | いいえ | 災害復旧戦略。 | active-passive |
| serviceType | string | はい | アドレスタイプ。 | OBPROXY_READONLY |
| ProxySetting | Object | いいえ | プロキシ設定。
説明このパラメータは現在、AWSチャネルのインスタンスでのみサポートされています。 |
|
| -mode | String | いいえ | プロキシクラスタの仕様タイプ。k8s_sharedまたはk8s_exclusiveをサポートします。 | k8s_shared |
| -deploymentArchitecture | String | いいえ | プロキシクラスタのデプロイメント方式
|
DUAL_AZ_ACTIVE_ACTIVE_DEPLOYMENT |
| -zone | Array | いいえ | プライマリノードのアベイラビリティゾーン | ["us-east-1a","us-east-1b"] |
| -slaveZone | Array | いいえ | スタンバイノードのアベイラビリティゾーン。デュアル/トリプルアベイラビリティゾーンのプライマリ/スタンバイデプロイメント方式を選択した場合にのみ設定します | [] |
| -nodeCpu | Float | いいえ | ノード仕様 | 最小0.5、調整ステップ0.5 |
実行結果
パラメータ名 |
型 |
説明 |
|---|---|---|
| requestId | string | リクエストID。 |
| data | object | 作成結果データ。 |
| server | string | リクエストに応答したサーバーアドレス。 |
例
リクエスト例
例1:ProxySettingでプロキシ設定を指定する場合
curl -X POST \
-H "Content-Type: application/json" \
-u '<あなたのAK:SK>' \
"https://api-cloud.oceanbase.com/api/v2/instances/{instanceId}/tenants/{tenantId}/privatelink/readonly?requestId={requestId}" \
-d '{
"userAccount": "readonly_user",
"trafficStrategy": "round_robin",
"replicaParams": "{\"replicaCount\": 2}",
"disasterRecoveryReplicaParams": "{\"drReplicaCount\": 1}",
"balancedStrategy": "weighted",
"disasterRecoveryStrategy": "active-passive",
"serviceType": "OBPROXY_READONLY",
"proxySetting":{"mode":"k8s_shared","deploymentArchitecture":"DUAL_AZ_ACTIVE_ACTIVE_DEPLOYMENT","nodeCpu":0.5,"zone":["us-east-1a","us-east-1b"],"slaveZone":[]}
}'
例2:アベイラビリティゾーンIDのリストを直接指定する場合
curl -X POST \
-H "Content-Type: application/json" \
-u '<あなたのAK:SK>' \
"https://api-cloud.oceanbase.com/api/v2/instances/{instanceId}/tenants/{tenantId}/privatelink/readonly?requestId={requestId}" \
-d '{
"zoneIdList": ["zone1", "zone2"],
"userAccount": "readonly_user",
"trafficStrategy": "round_robin",
"replicaParams": "{\"replicaCount\": 2}",
"disasterRecoveryReplicaParams": "{\"drReplicaCount\": 1}",
"balancedStrategy": "weighted",
"disasterRecoveryStrategy": "active-passive",
"serviceType": "OBPROXY_READONLY",
}'
戻り値の例
{
"requestId": "xxxxxx",
"data": {
"privatelinkId": "pl-xxxxxx",
"status": "CREATING",
"address": "xxxxxx.private.oceanbase.com"
},
"server": "xxx.xxx.x.xxx:xxxx"
}