| // Licensed to the Apache Software Foundation (ASF) under one or more |
| // contributor license agreements. See the NOTICE file distributed with |
| // this work for additional information regarding copyright ownership. |
| // The ASF licenses this file to You under the Apache License, Version 2.0 |
| // (the "License"); you may not use this file except in compliance with |
| // the License. You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| = Ignite REST module |
| |
| == Endpoints |
| |
| |
| [.ClusterConfiguration] |
| === ClusterConfiguration |
| |
| |
| [.getClusterConfiguration] |
| ==== getClusterConfiguration |
| |
| `GET /management/v1/configuration/cluster` |
| |
| |
| |
| ===== Description |
| |
| Gets the current configuration of the cluster. |
| |
| |
| // markup not found, no include::{specDir}management/v1/configuration/cluster/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<String>> |
| |
| |
| ===== Content Type |
| |
| * text/plain |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Get cluster configuration |
| | <<String>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |
| | 404 |
| | Configuration not found. Most likely, the cluster is not initialized. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/cluster/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/cluster/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/configuration/cluster/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/configuration/cluster/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.getClusterConfigurationByPath] |
| ==== getClusterConfigurationByPath |
| |
| `GET /management/v1/configuration/cluster/{path}` |
| |
| |
| |
| ===== Description |
| |
| Gets the configuration on the specific path. Configuration is in HOCON format |
| |
| |
| // markup not found, no include::{specDir}management/v1/configuration/cluster/\{path\}/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| ====== Path Parameters |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | path |
| | Configuration tree address. For example: `element.subelement`. |
| | X |
| | null |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<String>> |
| |
| |
| ===== Content Type |
| |
| * text/plain |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Configuration of the cluster on the specified path. |
| | <<String>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |
| | 404 |
| | Configuration not found. Most likely, the cluster is not initialized. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/cluster/\{path\}/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/cluster/\{path\}/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/configuration/cluster/{path}/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/configuration/cluster/\{path\}/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.updateClusterConfiguration] |
| ==== updateClusterConfiguration |
| |
| `PATCH /management/v1/configuration/cluster` |
| |
| |
| |
| ===== Description |
| |
| Updates cluster configuration. New configuration should be provided in HOCON format. |
| |
| |
| // markup not found, no include::{specDir}management/v1/configuration/cluster/PATCH/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| ====== Body Parameter |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | body |
| | <<string>> |
| | X |
| | |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<Object>> |
| |
| |
| ===== Content Type |
| |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Configuration updated. |
| | <<Object>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |
| | 404 |
| | Configuration not found. Most likely, the cluster is not initialized. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/cluster/PATCH/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/cluster/PATCH/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/configuration/cluster/PATCH/PATCH.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/configuration/cluster/PATCH/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.ClusterManagement] |
| === ClusterManagement |
| |
| |
| [.clusterState] |
| ==== clusterState |
| |
| `GET /management/v1/cluster/state` |
| |
| |
| |
| ===== Description |
| |
| Returns current cluster status. |
| |
| |
| // markup not found, no include::{specDir}management/v1/cluster/state/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| <<ClusterState>> |
| |
| |
| ===== Content Type |
| |
| * application/json |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Cluster status returned. |
| | <<ClusterState>> |
| |
| |
| | 404 |
| | Cluster state not found. Most likely, the cluster is not initialized. |
| | <<Problem>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/state/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/state/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/cluster/state/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/cluster/state/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.init] |
| ==== init |
| |
| `POST /management/v1/cluster/init` |
| |
| |
| |
| ===== Description |
| |
| Initializes a new cluster. |
| |
| |
| // markup not found, no include::{specDir}management/v1/cluster/init/POST/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| ====== Body Parameter |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | InitCommand |
| | <<InitCommand>> |
| | X |
| | |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<Object>> |
| |
| |
| ===== Content Type |
| |
| * application/json |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Cluster initialized. |
| | <<Object>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/init/POST/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/init/POST/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/cluster/init/POST/POST.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/cluster/init/POST/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.NodeConfiguration] |
| === NodeConfiguration |
| |
| |
| [.getNodeConfiguration] |
| ==== getNodeConfiguration |
| |
| `GET /management/v1/configuration/node` |
| |
| |
| |
| ===== Description |
| |
| Gets node configuration in HOCON format. |
| |
| |
| // markup not found, no include::{specDir}management/v1/configuration/node/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<String>> |
| |
| |
| ===== Content Type |
| |
| * text/plain |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Whole node configuration. |
| | <<String>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/node/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/node/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/configuration/node/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/configuration/node/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.getNodeConfigurationByPath] |
| ==== getNodeConfigurationByPath |
| |
| `GET /management/v1/configuration/node/{path}` |
| |
| |
| |
| ===== Description |
| |
| Gets a configuration of a specific node, in HOCON format. |
| |
| |
| // markup not found, no include::{specDir}management/v1/configuration/node/\{path\}/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| ====== Path Parameters |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | path |
| | Configuration tree address. For example: `element.subelement`. |
| | X |
| | null |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<String>> |
| |
| |
| ===== Content Type |
| |
| * text/plain |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Returned node configuration. |
| | <<String>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/node/\{path\}/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/node/\{path\}/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/configuration/node/{path}/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/configuration/node/\{path\}/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.updateNodeConfiguration] |
| ==== updateNodeConfiguration |
| |
| `PATCH /management/v1/configuration/node` |
| |
| |
| |
| ===== Description |
| |
| Updates node configuration. New configuration should be provided in HOCON format. |
| |
| |
| // markup not found, no include::{specDir}management/v1/configuration/node/PATCH/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| ====== Body Parameter |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | body |
| | <<string>> |
| | X |
| | |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<Object>> |
| |
| |
| ===== Content Type |
| |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Configuration successfully updated. |
| | <<Object>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 400 |
| | Incorrect configuration. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/node/PATCH/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/configuration/node/PATCH/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/configuration/node/PATCH/PATCH.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/configuration/node/PATCH/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.NodeManagement] |
| === NodeManagement |
| |
| |
| [.nodeState] |
| ==== nodeState |
| |
| `GET /management/v1/node/state` |
| |
| |
| |
| ===== Description |
| |
| Gets current network status. |
| |
| |
| // markup not found, no include::{specDir}management/v1/node/state/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| <<NodeState>> |
| |
| |
| ===== Content Type |
| |
| * application/json |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Current node status. |
| | <<NodeState>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/node/state/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/node/state/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/node/state/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/node/state/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.nodeVersion] |
| ==== nodeVersion |
| |
| `GET /management/v1/node/version` |
| |
| |
| |
| ===== Description |
| |
| Gets the version of Apache Ignite the node uses. |
| |
| |
| // markup not found, no include::{specDir}management/v1/node/version/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| <<String>> |
| |
| |
| ===== Content Type |
| |
| * text/plain |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Node version. |
| | <<String>> |
| |
| |
| | 500 |
| | Internal error |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/node/version/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/node/version/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/node/version/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/node/version/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.NodeMetric] |
| === NodeMetric |
| |
| |
| [.disableNodeMetric] |
| ==== disableNodeMetric |
| |
| `POST /management/v1/metric/node/disable` |
| |
| |
| |
| ===== Description |
| |
| Disables a specific metric source. |
| |
| |
| // markup not found, no include::{specDir}management/v1/metric/node/disable/POST/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| ====== Body Parameter |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | body |
| | <<string>> |
| | X |
| | |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| |
| - |
| |
| ===== Content Type |
| |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Metric source disabled. |
| | <<>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 404 |
| | Metric source not found. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/metric/node/disable/POST/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/metric/node/disable/POST/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/metric/node/disable/POST/POST.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/metric/node/disable/POST/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.enableNodeMetric] |
| ==== enableNodeMetric |
| |
| `POST /management/v1/metric/node/enable` |
| |
| |
| |
| ===== Description |
| |
| Enables a specific metric source. |
| |
| |
| // markup not found, no include::{specDir}management/v1/metric/node/enable/POST/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| ====== Body Parameter |
| |
| [cols="2,3,1,1,1"] |
| |=== |
| |Name| Description| Required| Default| Pattern |
| |
| | body |
| | <<string>> |
| | X |
| | |
| | |
| |
| |=== |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| |
| |
| - |
| |
| ===== Content Type |
| |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Metric source enabled. |
| | <<>> |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |
| | 404 |
| | Metric source not found. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/metric/node/enable/POST/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/metric/node/enable/POST/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/metric/node/enable/POST/POST.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/metric/node/enable/POST/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.listNodeMetrics] |
| ==== listNodeMetrics |
| |
| `GET /management/v1/metric/node` |
| |
| |
| |
| ===== Description |
| |
| Provides a list of all available metric sources. |
| |
| |
| // markup not found, no include::{specDir}management/v1/metric/node/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| array[<<MetricSource>>] |
| |
| |
| ===== Content Type |
| |
| * application/json |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Returned a list of metric sources. |
| | List[<<MetricSource>>] |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/metric/node/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/metric/node/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/metric/node/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/metric/node/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.Topology] |
| === Topology |
| |
| |
| [.logical] |
| ==== logical |
| |
| `GET /management/v1/cluster/topology/logical` |
| |
| |
| |
| ===== Description |
| |
| Gets information about logical cluster topology. |
| |
| |
| // markup not found, no include::{specDir}management/v1/cluster/topology/logical/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| array[<<ClusterNode>>] |
| |
| |
| ===== Content Type |
| |
| * application/json |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Logical topology returned. |
| | List[<<ClusterNode>>] |
| |
| |
| | 404 |
| | Logical topology not found. Most likely, the cluster is not initialized. |
| | <<Problem>> |
| |
| |
| | 500 |
| | Internal error |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/topology/logical/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/topology/logical/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/cluster/topology/logical/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/cluster/topology/logical/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [.physical] |
| ==== physical |
| |
| `GET /management/v1/cluster/topology/physical` |
| |
| |
| |
| ===== Description |
| |
| Gets information about physical cluster topology. |
| |
| |
| // markup not found, no include::{specDir}management/v1/cluster/topology/physical/GET/spec.adoc[opts=optional] |
| |
| |
| |
| ===== Parameters |
| |
| |
| |
| |
| |
| |
| |
| ===== Return Type |
| |
| array[<<ClusterNode>>] |
| |
| |
| ===== Content Type |
| |
| * application/json |
| * application/problem+json |
| |
| ===== Responses |
| |
| .http response codes |
| [cols="2,3,1"] |
| |=== |
| | Code | Message | Datatype |
| |
| |
| | 200 |
| | Physical topology returned. |
| | List[<<ClusterNode>>] |
| |
| |
| | 500 |
| | Internal error. |
| | <<Problem>> |
| |
| |=== |
| |
| ===== Samples |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/topology/physical/GET/http-request.adoc[opts=optional] |
| |
| |
| // markup not found, no include::{snippetDir}management/v1/cluster/topology/physical/GET/http-response.adoc[opts=optional] |
| |
| |
| |
| // file not found, no * wiremock data link :management/v1/cluster/topology/physical/GET/GET.json[] |
| |
| |
| ifdef::internal-generation[] |
| ===== Implementation |
| |
| // markup not found, no include::{specDir}management/v1/cluster/topology/physical/GET/implementation.adoc[opts=optional] |
| |
| |
| endif::internal-generation[] |
| |
| |
| [#models] |
| == Models |
| |
| |
| [#ClusterNode] |
| === _ClusterNode_ |
| |
| Information about the cluster node. |
| |
| [.fields-ClusterNode] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | id |
| | |
| | String |
| | Node ID. |
| | |
| |
| | name |
| | |
| | String |
| | Unique cluster name. |
| | |
| |
| | address |
| | |
| | NetworkAddress |
| | |
| | |
| |
| | metadata |
| | |
| | NodeMetadata |
| | |
| | |
| |
| |=== |
| |
| |
| [#ClusterState] |
| === _ClusterState_ |
| |
| Information about current cluster state. |
| |
| [.fields-ClusterState] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | cmgNodes |
| | |
| | List of <<string>> |
| | List of cluster management group nodes. These nodes are responsible for maintaining RAFT cluster topology. |
| | |
| |
| | msNodes |
| | |
| | List of <<string>> |
| | List of metastorage nodes. These nodes are responsible for storing RAFT cluster metadata. |
| | |
| |
| | igniteVersion |
| | |
| | String |
| | Version of Apache Ignite that the cluster was created on. |
| | |
| |
| | clusterTag |
| | |
| | ClusterTag |
| | |
| | |
| |
| |=== |
| |
| |
| [#ClusterTag] |
| === _ClusterTag_ |
| |
| Unique tag that identifies the cluster. |
| |
| [.fields-ClusterTag] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | clusterId |
| | |
| | UUID |
| | Unique cluster UUID. Generated automatically. |
| | uuid |
| |
| | clusterName |
| | |
| | String |
| | Unique cluster name. |
| | |
| |
| |=== |
| |
| |
| [#InitCommand] |
| === _InitCommand_ |
| |
| |
| |
| [.fields-InitCommand] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | metaStorageNodes |
| | |
| | List of <<string>> |
| | A list of RAFT metastorage nodes. |
| | |
| |
| | cmgNodes |
| | |
| | List of <<string>> |
| | A list of RAFT cluster management nodes. |
| | |
| |
| | clusterName |
| | |
| | String |
| | The name of the cluster. |
| | |
| |
| |=== |
| |
| |
| [#InvalidParam] |
| === _InvalidParam_ |
| |
| Information about invalid request parameter. |
| |
| [.fields-InvalidParam] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | name |
| | |
| | String |
| | Parameter name. |
| | |
| |
| | reason |
| | |
| | String |
| | The issue with the parameter. |
| | |
| |
| |=== |
| |
| |
| [#MetricSource] |
| === _MetricSource_ |
| |
| Metric sources provided by modules. |
| |
| [.fields-MetricSource] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | name |
| | |
| | String |
| | Metric source name. |
| | |
| |
| | enabled |
| | |
| | Boolean |
| | If True, the metric is tracked. Otherwise, the metric is not tracked. |
| | |
| |
| |=== |
| |
| |
| [#NetworkAddress] |
| === _NetworkAddress_ |
| |
| Node network address information. |
| |
| [.fields-NetworkAddress] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | host |
| | |
| | String |
| | Name of the host node is on. |
| | |
| |
| | port |
| | |
| | Integer |
| | Port the node runs on. |
| | int32 |
| |
| |=== |
| |
| |
| [#NodeMetadata] |
| === _NodeMetadata_ |
| |
| Node metadata information. |
| |
| [.fields-NodeMetadata] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | restHost |
| | |
| | String |
| | The host exposed to REST API. |
| | |
| |
| | httpPort |
| | |
| | Integer |
| | The HTTP port exposed to REST API. |
| | int32 |
| |
| | httpsPort |
| | |
| | Integer |
| | The HTTPS port exposed to REST API. |
| | int32 |
| |
| |=== |
| |
| |
| [#NodeState] |
| === _NodeState_ |
| |
| Node state. |
| |
| [.fields-NodeState] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | name |
| | |
| | String |
| | Unique node name. |
| | |
| |
| | state |
| | |
| | State |
| | |
| | |
| |
| |=== |
| |
| |
| [#Problem] |
| === _Problem_ |
| |
| Extended description of the problem with the request. |
| |
| [.fields-Problem] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| | title |
| | |
| | String |
| | Short summary of the issue. |
| | |
| |
| | status |
| | |
| | Integer |
| | Returned HTTP status code. |
| | int32 |
| |
| | code |
| | |
| | String |
| | Ignite 3 error code. |
| | |
| |
| | type |
| | |
| | String |
| | URI to documentation regarding the issue. |
| | |
| |
| | detail |
| | |
| | String |
| | Extended explanation of the issue. |
| | |
| |
| | node |
| | |
| | String |
| | Name of the node the issue happened on. |
| | |
| |
| | traceId |
| | |
| | UUID |
| | Unique issue identifier. Thid identifier can be used to find logs related to the issue |
| | uuid |
| |
| | invalidParams |
| | |
| | List of <<InvalidParam>> |
| | Parameters that did not pass validation. |
| | |
| |
| |=== |
| |
| |
| [#State] |
| === _State_ |
| |
| Possible node statuses. |
| |
| [.fields-State] |
| [cols="2,1,2,4,1"] |
| |=== |
| | Field Name| Required| Type| Description| Format |
| |
| |=== |
| |
| |