Refresh Node Discovery¶
Table of Contents
Compute type nodes can be re-discovered/refreshed either by running an immediate refresh discovery graph or a delayed refresh discovery graph using the same nodeID from the original discovery process. The node catalog(s) will be updated with new entries.
Immediate Refresh Node Discovery¶
A node can be refreshed immediately by posting to /api/2.0/workflows with a payload. The node will be rebooted automatically and the node re-discovery process will start.
Immediate Node Re-discovery example
POST /api/2.0/workflows
{
"name": "Graph.Refresh.Immediate.Discovery",
"options": {
"reset-at-start": {
"nodeId": "<nodeId>"
},
"discovery-refresh-graph": {
"graphOptions": {
"target": "<nodeId>"
},
"nodeId": "<nodeId>"
},
"generate-sku": {
"nodeId": "<nodeId>"
},
"generate-enclosure": {
"nodeId": "<nodeId>"
},
"create-default-pollers": {
"nodeId": "<nodeId>"
},
"run-sku-graph": {
"nodeId": "<nodeId>"
},
"nodeId": "<nodeId>"
}
}
curl -X POST \
-H 'Content-Type: application/json' \
-d '{ "name":"Graph.Refresh.Immediate.Discovery",
"options": {
"reset-at-start": {
"nodeId": "<nodeId>"
},
"discovery-refresh-graph": {
"graphOptions": {
"target": "<nodeId>"
},
"nodeId": "<nodeId>"
},
"generate-sku": {
"nodeId": "<nodeId>"
},
"generate-enclosure": {
"nodeId": "<nodeId>"
},
"create-default-pollers": {
"nodeId": "<nodeId>"
},
"run-sku-graph": {
"nodeId": "<nodeId>"
},
"nodeId": "<nodeId>"
}
}' \
<server>/api/2.0/workflows
Delayed Refresh Node Discovery¶
A user can defer a node discovery by posting to /api/2.0/workflows with a payload. The user will need to manually reboot the node after executing the API before the node re-discovery/refresh process can start.
Delayed Node Re-discovery example
POST /api/2.0/workflows
{
"name": "Graph.Refresh.Delayed.Discovery",
"options": {
"discovery-refresh-graph": {
"graphOptions": {
"target": "<nodeId>"
},
"nodeId": "<nodeId>"
},
"generate-sku": {
"nodeId": "<nodeId>"
},
"generate-enclosure": {
"nodeId": "<nodeId>"
},
"create-default-pollers": {
"nodeId": "<nodeId>"
},
"run-sku-graph": {
"nodeId": "<nodeId>"
},
"nodeId": "<nodeId>"
}
}
curl -X POST \
-H 'Content-Type: application/json' \
-d '{ "name":"Graph.Refresh.Delayed.Discovery",
"options": {
"discovery-refresh-graph": {
"graphOptions": {
"target": "<nodeId>"
},
"nodeId": "<nodeId>"
},
"generate-sku": {
"nodeId": "<nodeId>"
},
"generate-enclosure": {
"nodeId": "<nodeId>"
},
"create-default-pollers": {
"nodeId": "<nodeId>"
},
"run-sku-graph": {
"nodeId": "<nodeId>"
},
"nodeId": "<nodeId>"
}
}' \
<server>/api/2.0/workflows
Manually rebooting the node using ipmitool example
ipmitool -H <BMC host IP address> -U <username> -P <password> chassis power reset