このドキュメントでは、クラスタを起動する方法について説明します。
呼び出しの説明
インターフェース制約
obshell ServerはこのAPIに対してセキュリティ検証を実施します。詳細については、APIハイブリッド暗号化を参照してください。
リクエストパス
POST /api/v1/ob/start
リクエストパラメータ
| パラメータ | タイプ | 必須 | サンプル値 | 説明 |
|---|---|---|---|---|
| scope | Scope | はい | { "type": "GLOBAL" } |
この構成を適用するOBServerノードの範囲を設定します。詳細については、以下のScope情報のデータ構造を参照してください。 |
| forcePassDag | []string | いいえ | なし | 前順の開始/停止タスクのIDを指定します。特別な場合にのみ使用されます(クラスタの運用保守が1つまたは複数の先行する運用保守タスクによってロックされている場合、このパラメータを使用して先行タスクをアンロックできます)。 |
スコープ情報のデータ構造:
| パラメータ | タイプ | 必須 | サンプル値 | 説明 |
|---|---|---|---|---|
| type | string | はい | "GLOBAL" | 設定の有効レベルを設定します。値は GLOBAL、ZONE、SERVER です。 |
| target | []string | いいえ | サンプル値:["10.10.10.1:2886", "10.10.10.2:2886"] または ["zone1","zone2"] | type が SERVER の場合、OBServerノードのリストを設定します。type が ZONE の場合、ゾーンのリストを設定します。type が GLOBAL の場合、設定する必要はありません。 |
実行結果
| パラメータ | タイプ | 説明 |
|---|---|---|
| successful | bool | リクエストが成功したかどうかを示します。 |
| timestamp | time.Time | サーバーがリクエストを完了したタイムスタンプです。 |
| duration | int | サーバーがリクエストを処理した時間(ミリ秒)。 |
| status | int | HTTP Status仕様に準拠するエンコード。 |
| traceId | string | リクエストのトレースID。 |
| data | DagDetailDTO | 詳細については、以下のDagDetailDTO情報のデータ構造を参照してください。 |
| error | ApiError | リクエストによって生成されたエラー。以下の情報が含まれます:
|
DagDetailDTO情報のデータ構造は以下のとおりです:
| パラメータ | タイプ | 説明 |
|---|---|---|
| id | string | DAG共通ID。 |
| dag_id | int | DAGのIDであり、OceanBaseデータベースに記録される主キーです。 |
| name | string | DAGの名前。 |
| stage | int | DAGの現在の実行段階。 |
| max_stage | int | DAG実行過程における総段階数。 |
| state | string | DAGの実行状態。 |
| operator | string | DAGの実行操作タイプ。 |
| start_time | time.Time | DAGの実行開始時間。 |
| end_time | time.Time | DAGの実行終了時間。 |
| additional_data | map[string]any | DAGのその他のデータ。 |
| nodes | []NodeDetailDTO | DAG内のすべてのノード情報。Nodeの詳細情報を取得するを参照してください。 |
例
リクエスト例
POST 10.10.10.1:2886/api/v1/ob/start
{
"scope": {
"type": "GLOBAL"
}
}
レスポンス例
{
"successful": true,
"timestamp": "2024-01-10T11:24:44.515966754+08:00",
"duration": 3,
"status": 200,
"traceId": "c697089607fac2f1",
"data": {
"id": "22130706433028869",
"dag_id": 13,
"name": "Start OB",
"stage": 1,
"max_stage": 6,
"state": "READY",
"operator": "RUN",
"start_time": "2024-01-10T11:24:44.513664697+08:00",
"end_time": "2024-01-10T11:24:44.513664697+08:00",
"additional_data": null,
"nodes": null
}
}
関連ドキュメント
APIインターフェースをコマンドラインで呼び出す以外に、SDKメソッドを使用してAPIを呼び出すこともできます。