
The node traits API was added in API microversion 1.37. Change-Id: I8c48f2e7662ae9641ec823dc3802d5979a7ea03e Partial-Bug: #1722194
124 lines
2.2 KiB
ReStructuredText
124 lines
2.2 KiB
ReStructuredText
.. -*- rst -*-
|
|
|
|
===================
|
|
Node Traits (nodes)
|
|
===================
|
|
|
|
.. versionadded:: 1.37
|
|
|
|
Node traits are used for scheduling in the Compute service, using qualitative
|
|
attributes to influence the placement of instances to bare metal compute nodes.
|
|
Traits specified for a node in the Bare Metal service will be registered on the
|
|
corresponding resource provider in the Compute service's placement API.
|
|
|
|
List Traits of a Node
|
|
=====================
|
|
|
|
.. rest_method:: GET /v1/nodes/{node_ident}/traits
|
|
|
|
Return a list of traits for the node.
|
|
|
|
Normal response code: 200
|
|
|
|
Error codes: 400,401,403,404
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- node_ident: node_ident
|
|
|
|
Response
|
|
--------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- traits: n_traits
|
|
|
|
**Example list of traits for the node:**
|
|
|
|
.. literalinclude:: samples/node-traits-list-response.json
|
|
:language: javascript
|
|
|
|
|
|
Set all traits of a node
|
|
========================
|
|
|
|
.. rest_method:: PUT /v1/nodes/{node_ident}/traits
|
|
|
|
Set all traits of a node, replacing any existing traits.
|
|
|
|
Normal response code: 204
|
|
|
|
Error codes: 400,401,403,404,409
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- node_ident: node_ident
|
|
- traits: n_traits
|
|
|
|
**Example request to set all traits of a Node:**
|
|
|
|
.. literalinclude:: samples/node-set-traits-request.json
|
|
|
|
|
|
Add a trait to a node
|
|
=====================
|
|
|
|
.. rest_method:: PUT /v1/nodes/{node_ident}/traits/{trait}
|
|
|
|
Add a single trait to a node.
|
|
|
|
Normal response code: 204
|
|
|
|
Error codes: 400,401,403,404,409
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- node_ident: node_ident
|
|
- trait: trait
|
|
|
|
|
|
Remove all traits from a node
|
|
=============================
|
|
|
|
.. rest_method:: DELETE /v1/nodes/{node_ident}/traits
|
|
|
|
Normal response code: 204
|
|
|
|
Error codes: 400,401,403,404,409
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- node_ident: node_ident
|
|
|
|
|
|
Remove a trait from a node
|
|
==========================
|
|
|
|
Remove a single trait from a node.
|
|
|
|
.. rest_method:: DELETE /v1/nodes/{node_ident}/traits/{trait}
|
|
|
|
Normal response code: 204
|
|
|
|
Error codes: 400,401,403,404,409
|
|
|
|
Request
|
|
-------
|
|
|
|
.. rest_parameters:: parameters.yaml
|
|
|
|
- node_ident: node_ident
|
|
- trait: trait
|