turboFei commented on PR #2588:
URL: https://github.com/apache/celeborn/pull/2588#issuecomment-2185326296
Worker openapi.conf
```
{
"openapi": "3.0.1",
"info": {
"title": "Apache Celeborn REST API Documentation",
"description": "Role: worker",
"license": {
"name": "Apache License 2.0",
"url": "https://www.apache.org/licenses/LICENSE-2.0.txt"
}
},
"servers": [
{
"url": "http://127.0.0.1:12052/"
}
],
"paths": {
"/applications": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "applications",
"responses": {
"200": {
"description": "For MASTER: List all running application's ids
of the cluster.\nFor WORKER: List all running application's ids of the worker.
It only return application ids running in that worker.",
"content": {
"text/plain": {}
}
}
}
}
},
"/conf": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "conf",
"responses": {
"200": {
"description": "List the conf setting.",
"content": {
"text/plain": {}
}
}
}
}
},
"/listDynamicConfigs": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "listDynamicConfigs",
"parameters": [
{
"name": "level",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "tenant",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List the dynamic configs. The parameter level
specifies the config level of dynamic configs. The parameter tenant specifies
the tenant id of TENANT or TENANT_USER level. The parameter name specifies the
user name of TENANT_USER level. Meanwhile, either none or all of the parameter
tenant and name are specified for TENANT_USER level.",
"content": {
"text/plain": {}
}
}
}
}
},
"/listTopDiskUsedApps": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "listTopDiskUsedApps",
"responses": {
"200": {
"description": "For MASTER: List the top disk usage application
ids. It will return the top disk usage application ids for the cluster.\nFor
WORKER: List the top disk usage application ids. It only return application ids
running in that worker.",
"content": {
"text/plain": {}
}
}
}
}
},
"/ping": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "ping",
"responses": {
"default": {
"description": "default response",
"content": {
"text/plain": {
"schema": {
"type": "string"
}
}
}
}
}
}
},
"/shuffle": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "shuffles",
"responses": {
"200": {
"description": "For MASTER: List all running shuffle keys of the
service. It will return all running shuffle's key of the cluster.\nFor WORKER:
List all the running shuffle keys of the worker. It only return keys of
shuffles running in that worker.",
"content": {
"text/plain": {}
}
}
}
}
},
"/threadDump": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "threadDump",
"responses": {
"200": {
"description": "List the current thread dump.",
"content": {
"text/plain": {}
}
}
}
}
},
"/workerInfo": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "workerInfo",
"responses": {
"200": {
"description": "For MASTER: List worker information of the
service. It will list all registered workers' information.\nFor WORKER: List
the worker information of the worker.",
"content": {
"text/plain": {}
}
}
}
}
},
"/api/v1/conf": {
"get": {
"tags": [
"Conf"
],
"operationId": "conf_1",
"responses": {
"200": {
"description": "List the conf setting",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConfigData"
}
}
}
}
}
}
}
},
"/api/v1/conf/dynamic": {
"get": {
"tags": [
"Conf"
],
"operationId": "dynamicConf",
"parameters": [
{
"name": "level",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "tenant",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "name",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "List the dynamic configs. The parameter level
specifies the config level of dynamic configs. The parameter tenant specifies
the tenant id of TENANT or TENANT_USER level. The parameter name specifies the
user name of TENANT_USER level. Meanwhile, either none or all of the parameter
tenant and name are specified for TENANT_USER level.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DynamicConfig"
}
}
}
}
}
}
}
},
"/api/v1/ping": {
"get": {
"operationId": "ping_1",
"responses": {
"default": {
"description": "default response",
"content": {
"text/plain": {
"schema": {
"type": "string"
}
}
}
}
}
}
},
"/api/v1/thread_dump": {
"get": {
"operationId": "threadDump_1",
"responses": {
"200": {
"description": "List the current thread dump.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ThreadStackTrace"
}
}
}
}
}
}
}
},
"/exit": {
"post": {
"tags": [
"Deprecated"
],
"operationId": "exit",
"requestBody": {
"content": {
"*/*": {
"schema": {
"type": "object",
"properties": {
"type": {
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "Trigger this worker to exit. Legal types are
'Decommission', 'Graceful' and 'Immediately'.",
"content": {
"text/plain": {}
}
}
}
}
},
"/isDecommissioning": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "isDecommissioning",
"responses": {
"200": {
"description": "Show if the worker is during the process of
decommission.",
"content": {
"text/plain": {}
}
}
}
}
},
"/isRegistered": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "isRegistered",
"responses": {
"200": {
"description": "Show if the worker is registered to the master
success.",
"content": {
"text/plain": {}
}
}
}
}
},
"/isShutdown": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "isShutdown",
"responses": {
"200": {
"description": "Show if the worker is during the process of
shutdown.",
"content": {
"text/plain": {}
}
}
}
}
},
"/listPartitionLocationInfo": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "listPartitionLocationInfo",
"responses": {
"200": {
"description": "List all the living PartitionLocation
information in that worker.",
"content": {
"text/plain": {}
}
}
}
}
},
"/unavailablePeers": {
"get": {
"tags": [
"Deprecated"
],
"operationId": "unavailablePeers",
"responses": {
"200": {
"description": "List the unavailable peers of the worker, this
always means the worker connect to the peer failed.",
"content": {
"text/plain": {}
}
}
}
}
},
"/api/v1/applications": {
"get": {
"tags": [
"Application"
],
"operationId": "applications_1",
"responses": {
"200": {
"description": "List all running application's ids of the
worker. It only return application ids running in that worker.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/api/v1/applications/top_disk_usages": {
"get": {
"tags": [
"Application"
],
"operationId": "topDiskUsedApplications",
"responses": {
"200": {
"description": "List the top disk usage application ids. It will
return the top disk usage application ids for the cluster.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/AppDiskUsageData"
}
}
}
}
}
}
}
},
"/api/v1/exit": {
"post": {
"operationId": "exit_1",
"requestBody": {
"content": {
"*/*": {
"schema": {
"$ref": "#/components/schemas/WorkerExitRequest"
}
}
}
},
"responses": {
"200": {
"description": "Trigger this worker to exit. Legal exit types
are 'Decommission', 'Graceful' and 'Immediately'.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HandleResponse"
}
}
}
}
}
}
},
"/api/v1/shuffles/partitions": {
"get": {
"tags": [
"Shuffle"
],
"operationId": "partitions",
"responses": {
"200": {
"description": "List all the living shuffle PartitionLocation
information in the worker.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkerPartitionLocationData"
}
}
}
}
}
}
},
"/api/v1/shuffles": {
"get": {
"tags": [
"Shuffle"
],
"operationId": "shuffles_1",
"responses": {
"200": {
"description": "List all the running shuffle keys of the worker.
It only return keys of shuffles running in that worker.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}
},
"/api/v1/workers/unavailable_peers": {
"get": {
"tags": [
"Worker"
],
"operationId": "unavailablePeerWorkers",
"responses": {
"200": {
"description": "List the unavailable peers of the worker, this
always means the worker connect to the peer failed.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/WorkerTimestampData"
}
}
}
}
}
}
}
},
"/api/v1/workers": {
"get": {
"tags": [
"Worker"
],
"operationId": "workers",
"responses": {
"200": {
"description": "List the worker information.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkerData"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"ConfigData": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
}
},
"SeqConfigData": {
"type": "object",
"properties": {
"empty": {
"type": "boolean"
},
"traversableAgain": {
"type": "boolean"
}
}
},
"DynamicConfig": {
"type": "object",
"properties": {
"level": {
"type": "string"
},
"description": {
"type": "string"
},
"configs": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ConfigData"
}
}
}
},
"SeqDynamicConfig": {
"type": "object",
"properties": {
"empty": {
"type": "boolean"
},
"traversableAgain": {
"type": "boolean"
}
}
},
"ThreadStackTrace": {
"type": "object"
},
"SeqThreadStackTrace": {
"type": "object",
"properties": {
"empty": {
"type": "boolean"
},
"traversableAgain": {
"type": "boolean"
}
}
},
"SeqString": {
"type": "object",
"properties": {
"empty": {
"type": "boolean"
},
"traversableAgain": {
"type": "boolean"
}
}
},
"AppDiskUsageData": {
"type": "object",
"properties": {
"appId": {
"type": "string"
},
"estimateUsage": {
"type": "integer",
"format": "int64"
},
"estimateUsageStr": {
"type": "string"
}
}
},
"SeqAppDiskUsageData": {
"type": "object",
"properties": {
"empty": {
"type": "boolean"
},
"traversableAgain": {
"type": "boolean"
}
}
},
"HandleResponse": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"message": {
"type": "string"
}
}
},
"WorkerExitRequest": {
"type": "object",
"properties": {
"type": {
"type": "string"
}
}
},
"PartitionLocationData": {
"type": "object",
"properties": {
"idEpoch": {
"type": "string"
},
"hostAndPorts": {
"type": "string"
},
"mode": {
"type": "string"
},
"peer": {
"type": "string"
},
"storage": {
"type": "string"
},
"mapIdBitMap": {
"type": "string"
}
}
},
"WorkerPartitionLocationData": {
"type": "object",
"properties": {
"primaryPartitions": {
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/PartitionLocationData"
}
}
},
"replicaPartitions": {
"type": "object",
"additionalProperties": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/PartitionLocationData"
}
}
}
}
},
"WorkerData": {
"type": "object",
"properties": {
"host": {
"type": "string"
},
"rpcPort": {
"type": "integer",
"format": "int32"
},
"pushPort": {
"type": "integer",
"format": "int32"
},
"fetchPort": {
"type": "integer",
"format": "int32"
},
"replicatePort": {
"type": "integer",
"format": "int32"
},
"internalPort": {
"type": "integer",
"format": "int32"
},
"slotsUsed": {
"type": "integer",
"format": "int64"
},
"lastHeartbeat": {
"type": "integer",
"format": "int64"
},
"heartbeatElapsedSeconds": {
"type": "integer",
"format": "int64"
},
"diskInfos": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"resourceConsumption": {
"type": "object",
"additionalProperties": {
"type": "string"
}
},
"workerRef": {
"type": "string"
},
"workerState": {
"type": "string"
},
"workerStateStartTime": {
"type": "integer",
"format": "int64"
},
"registered": {
"type": "boolean"
},
"shutdown": {
"type": "boolean"
},
"decommissioning": {
"type": "boolean"
}
}
},
"WorkerTimestampData": {
"type": "object",
"properties": {
"worker": {
"$ref": "#/components/schemas/WorkerData"
},
"timestamp": {
"type": "integer",
"format": "int64"
}
}
},
"SeqWorkerTimestampData": {
"type": "object",
"properties": {
"empty": {
"type": "boolean"
},
"traversableAgain": {
"type": "boolean"
}
}
}
}
}
}
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]