Administration Cluster REST Interface
Data
The administration node dictionary contains the following fields:
- status The current status of the administration node:
- running: The node is enabled and running.
- disabled: The node is disabled.
- degraded: The node is enabled but unreachable for the cluster.
- product The product version of the administration node.
- nodeid The node ID (IPv4 or IPv6 address).
- system Information about the host system’s operating system and version number.
For more information regarding cluster management, see Cluster Management.
The Decider Cluster REST Interface provides similar functionality, for decider notes (rather than administration nodes).
Getting a List of administration nodes
- Request
Method | GET |
|---|---|
URL | /cluster/admins/ |
Arguments | – |
- Response
Reason code | Arguments | Meaning |
|---|---|---|
200 | [ , , ... ] | list containing all administration nodes successfully returned |
401 | - | no login |
403 | - | not enough rights |
500 | - | internal server error |
- Example
The following request retrieves a list of all administration servers within the cluster. In this case, there are two administration servers.
$ curl -u admin:admin -H 'Content-Type: application/json' http://127.0.0.1:8087/api/af/2.0/cluster/admins { "__name": "admins", "__path": "/api/af/2.0/cluster/admins/", "__subnodes": [ "127.0.0.1:8083", "10.0.0.42:8083" ], "nodes": { "10.0.0.42:8083": { "nodeid": "10.0.0.42:8083", "product": null, "status": "disabled", "system": null, "version": null }, "127.0.0.1:8083": { "nodeid": "127.0.0.1:8083", "product": "development 0.0", "status": "running", "system": "Darwin-x86_64-11.4.0", "version": "d2ae91164fc61f950297889a73dd7b61" } } }Getting the data of an administration node
- Request
Method | GET |
|---|---|
URL | /cluster/admins/NODEID |
Arguments | – |
- Response
Return code | Arguments | Meaning |
|---|---|---|
200 | { nodedata } | dictionary containing the data of the administration data successfully returned |
401 | - | no login |
403 | - | not enough rights |
404 | - | administration node not found |
500 | - | internal server error |
- Example
The following request retrieves the data of the administration server with the node ID "127.0.0.1:8083".
$ curl -u admin:admin -H 'Content-Type: application/json' http://127.0.0.1:8087/api/af/2.0/cluster/admins/127.0.0.1:8083 { "__name": "127.0.0.1:8083", "__path": "/api/af/2.0/cluster/admins/127.0.0.1:8083/", "__subnodes": [], "nodeid": "127.0.0.1:8083", "product": "development 0.0", "status": "running", "system": "Darwin-x86_64-11.4.0", "version": "d2ae91164fc61f950297889a73dd7b61" }Adding an administration node
- Request
Method | POST |
|---|---|
URL | /cluster/admins |
Arguments | { nodeid: NODEID } |
You can only set the status to enabled or disabled, but you can’t set it to degraded.
- Response
Return code | Arguments | Meaning |
|---|---|---|
200 | - | administration node successfully added |
401 | - | no login |
403 | - | not enough rights |
409 | - | node already exists or malformed node ID |
500 | - | internal server error |
- Example
The following request adds a new administration server to the cluster. The node ID of this new server is “10.0.0.42:8083” and its status is “disabled”
$ curl -u admin:admin -H 'Content-Type: application/json' --data '{"nodeid":"10.0.0.42:8083", "status":"disabled"}' http://127.0.0.1:8087/api/af/2.0/cluster/admins { "__name": "10.0.0.42:8083", "__path": "/api/af/2.0/cluster/admins/10.0.0.42:8083/", "__subnodes": [], "nodeid": "10.0.0.42:8083", "product": null, "status": "disabled", "system": null, "version": null }Changing an administration node
- Request
Method | POST |
|---|---|
URL | /cluster/admins/NODEID |
Arguments | { nodedata } |
You can only set the status to enabled or disabled, but you can’t set it to degraded.
- Response
Return code | Arguments | Meaning |
|---|---|---|
200 | - | administration node successfully changed |
401 | - | no login |
403 | - | not enough rights |
404 | - | administration node not found |
409 | - | malformed node data |
500 | - | internal server error |
Deleting an administration node
- Request
Method | DELETE |
|---|---|
URL | /cluster/admins/NODEID |
Arguments | – |
- Response
Return code | Arguments | Meaning |
|---|---|---|
200 | - | administration node successfully deleted |
401 | - | no login |
403 | - | not enough rights |
409 | - | administration not found |
500 | - | internal server error |
- Example
The following request deletes the administration server with the node ID "10.0.0.42:8083" from the cluster.”
$ curl -X DELETE -u admin:admin -H 'Content-Type: application/json' http://127.0.0.1:8087/api/af/2.0/cluster/admins/10.0.0.42:8083 {}