|
|
NVIDIA UFM Enterprise REST API Guide
v6.15.2
Table of Contents
1
Monitoring REST API
16
1.1
Possible Attribute Values
16
1.2
Monitoring Sessions REST API
19
1.2.1
Create Monitoring Session
19
1.2.2
Delete Monitoring Session
20
1.2.3
Get Monitoring Session Data
20
1.2.4
Get Default Monitoring Session Data by PKey Filtering
21
1.2.5
Monitoring Session Snapshot
23
1.2.6
Request Monitoring Session Attributes Data
24
1.2.7
Get All Monitoring Available Attributes
25
1.2.8
Get Traffic/Congestion Map
26
1.2.9
Get Port Groups Traffic/Congestion Map
27
1.3
Monitoring Templates REST API
27
1.3.1
Create Monitoring Template
27
1.3.2
Update Monitoring Template
28
1.3.3
Get Monitoring Template
28
1.3.4
Get All Monitoring Templates
29
1.3.5
Delete Monitoring Template
29
2
Templates REST API
30
2.1
Get All Templates
30
2.2
Get Template
30
2.3
Add Template
31
2.4
Delete Template
31
2.5
Refresh Templates List
32
2.6
All Available Templates for Mellanox Switches
32
2.6.1
General Templates
32
2.6.2
InfiniBand Templates
33
3
UFM Version REST API
34
4
Actions REST API
35
4.1
Provisioning
35
4.1.1
Running Explicit CLI Commands
35
4.1.2
Running Predefined Template Using Its Name
35
2
4.2
Set Node Description
36
4.3
Set Hostname Provisioning Example
36
4.4
In-Band Reboot
37
4.5
Software Upgrade
37
4.6
Firmware Upgrade
38
4.7
Reboot
39
4.8
Burn HDR Active Fiber Cable Transceivers
39
4.8.1
Get List of Available Images
40
4.8.2
Upload New Cable Image
40
4.8.3
Delete Cable Image
40
4.8.4
Activate Cables Transceivers Firmware Action
41
4.8.5
Get Active Firmware Versions
41
4.9
Disable/Enable/Reset Ports
42
4.10
In-Band FW Upgrade
43
4.11
Collect System Dump
43
4.11.1
Collect System Dump Profile API
44
4.12
Mark Device as Unhealthy
44
4.13
Mark Device as Healthy
44
5
Mirroring REST API
46
5.1
Create Mirroring Template
46
5.2
Update Mirroring Template
46
5.3
Get Mirroring Template
46
5.4
Delete Mirroring Template
47
5.5
Port Mirroring Action
47
6
Fabric Discovery Refresh REST API
49
7
Jobs REST API
50
8
Systems REST API
51
8.1
Get All Systems
51
8.2
Get System by Name
57
8.3
Get System by IP
58
8.4
Get System/s with Modules
59
8.5
Get System/s with Ports
61
8.6
Set Manual IP for System
64
8.7
Set System URL & Script Attributes
64
3
8.8
Set Manual Name for System
64
8.9
Get Managed Switches Power Consumption
65
9
Ports REST API
66
9.1
Get All Ports
66
9.2
Get Port/s by Name
70
9.3
Get All System Ports
71
9.4
Get All Active Ports
73
9.5
Get All External Ports
76
9.6
Get List of All High BER Ports
78
9.7
Get List of High BER Ports with Specific Severity
80
9.8
Get Ports with Cable Information
82
10
PKey GUIDs Rest API
84
10.1
Create an Empty PKey
84
10.2
Add GUIDs to PKey
84
10.3
Remove GUIDs from PKey
86
10.4
Get Specific PKey
87
10.5
Get All PKeys
87
10.6
Set/Update PKey GUIDs
88
10.7
Add Hosts to PKey
90
10.8
Remove Hosts from PKey
91
10.9
Delete PKey
91
10.10
Update PKey QoS
91
10.11
PKey Version (Last Updated)
91
11
Forge InfiniBand Anti-Spoofing REST API
93
11.1
Create Physical-Virtual GUID Mapping
93
11.2
Get All Physical-Virtual GUID Mapping
93
11.3
Get Specific Physical-Virtual GUID Mapping
93
11.4
Update Physical-Virtual GUID Mapping
94
11.5
Add New Physical-Virtual GUID Mapping to an Existing Group
94
11.6
Delete Physical-Virtual GUID Mapping
95
12
Virtualization REST API
96
12.1
Get All Virtual Ports
96
12.2
Get All Virtual Ports for Specific System
96
12.3
Get Virtual Ports for Specific Physical Port
97
4
13
Unhealthy Ports REST API
99
13.1
Get Unhealthy Ports
99
13.2
Mark Unhealthy Ports as Healthy
99
13.3
Mark Healthy Ports as Unhealthy
100
13.4
Mark All Unhealthy Ports as Healthy at Once
100
13.5
Connectivity
100
13.6
Delete Policies
101
13.7
Get Healthy Policy Ports
101
13.8
Get Healthy Policy Devices
101
14
Modules REST API
103
14.1
Get All Modules
103
14.2
Get Module/s by Name
106
14.3
Get All Modules of Specific System
106
14.4
Get All HCAs
108
14.5
Get All HCAs With Ports
111
14.6
Get All HCAs of Specific System
113
14.7
Get All HCAs of Specific System With Ports
114
15
Links REST API
118
15.1
Get All Links
118
15.2
Get All Links Connected to Specific System
118
15.3
Get Link/s With Cable Information
119
15.4
Get Cable Information
120
15.5
Get Switch Port Cable Information
120
16
Non-Optimal Links REST API
122
16.1
Get Non-Optimal Links Action
122
16.2
Update Non-Optimal Links Action
122
16.3
Run Action on Non-Optimal Links
122
17
Logical Model REST API
123
17.1
Environments REST API
123
17.1.1
Get All Environments
123
17.1.2
Get Environment by Name
123
17.1.3
Create Environment
124
17.1.4
Update Environment
124
17.1.5
Delete Environment
124
5
17.2
Logical Servers REST API
125
17.2.1
Get All Logical Servers
125
17.2.2
Get Logical Server by Name
125
17.2.3
Create Logical Server
126
17.2.4
Allocate Computes Manually to Logical Server
126
17.2.5
Allocate Computes Automatically to Logical Server
127
17.2.6
Assign Computes Manually to Logical Server
127
17.2.7
Assign Computes Automatically to Logical Server
128
17.2.8
Free Computes Manually From Logical Server
128
17.2.9
Free Computes Automatically From Logical Server
128
17.2.10
Update Network Interfaces Assigned to Logical Server
129
17.2.11
Update Logical Server Description
129
17.2.12
Delete Logical Server
129
17.3
Computes REST API
130
17.3.1
Get All Computes
130
17.3.2
Get Compute by Name
130
17.4
Global Networks REST API
131
17.4.1
Get All Global Networks
131
17.4.2
Get Global Network by Name
132
17.4.3
Create Global Network
132
17.4.4
Update Global Network
134
17.4.5
Delete Global Network
135
17.5
Local Networks REST API
135
17.5.1
Get All Local Networks
135
17.5.2
Get Local Network by Name
136
17.5.3
Create Local Network
136
17.5.4
Update Local Network
138
17.5.5
Delete Local Network
139
17.6
Network Interfaces REST API
139
17.6.1
Get All Network Interfaces
139
17.6.2
Get Network Interface by Name
140
17.6.3
Create Network Interface
140
17.6.4
Update Network Interface
141
17.6.5
Delete Network Interface
142
6
18
Alarms REST API
143
18.1
Get All Alarms
143
18.2
Get Alarm Using ID
143
18.3
Get All Alarms of a Specific Device
144
18.4
Remove All Alarms of a Specific Device
144
19
Events REST API
145
19.1
Get All Events
145
19.2
Get Event Using ID
145
20
System Log REST API
147
20.1
Get Syslog Configurations
147
20.2
Update Syslog Configurations
147
21
Fabric Validation Tests REST API
148
21.1
Get All Tests
148
21.2
Run Test
148
22
Update Credentials REST API
150
22.1
Get Device Credentials
150
22.2
Get Site Credentials
150
22.3
Update Devices Credentials
151
22.4
Update Site Credentials
151
23
Groups REST API
153
23.1
Get All Groups
153
23.2
Get Group Using Its Name
154
23.3
Update Group Using Name
154
23.4
Delete Group Using Name
155
23.5
Create Group
155
23.6
Add Members to Group
155
23.7
Remove Members From Group
155
23.8
Apply Software Upgrade or Firmware Upgrade Action
156
24
Users REST API
157
24.1
Get All Users
157
24.2
Get User by Name
157
24.3
Create User
158
24.4
Update User
158
24.5
Delete User
159
7
25
Telemetry REST API
160
25.1
Top X Telemetry Sessions REST API
160
25.2
History Telemetry Sessions
160
26
Events Policy REST API
162
26.1
Get All Events Policies
162
26.2
Get Events Policy
162
26.3
Update Events Policy
163
26.4
Update Events Policies
163
27
Application Object Collection Versioning REST API
165
27.1
Get Application Object Collection Versioning
165
28
Reports REST API
166
28.1
Start Report
166
28.2
Stop Report
168
28.3
Get Report
168
28.4
Get Last Report
170
29
Periodic Fabric Health REST API
171
29.1
Get All Periodic Health Tasks
171
29.2
Get Periodic Health Task
171
29.2.1
Enable Feature
171
29.2.2
Disable Feature
171
29.2.3
Set Run Parameters
172
29.2.4
Get Run Parameters
172
29.2.5
Get Last Report
172
30
SMTP Configuration REST API
173
30.1
Get SMTP Configuration
173
30.2
Update SMTP Configuration
173
31
Events and Periodic Reports Recipients Configuration REST API
174
31.1
Get Recipients
174
31.2
Add Recipients
174
31.3
Delete Recipients
175
31.4
Update Recipients
175
32
SM Configuration REST API
176
32.1
Get SM Configuration
176
32.2
Set SM Configuration
177
8
33
Enhanced QoS REST API
179
33.1
Bandwidth Names REST API
179
33.1.1
Get Bandwidth Names
179
33.2
Get Specific Bandwidth Name
179
33.3
Delete Specific Bandwidth Name
180
33.4
Update Specific Bandwidth Name
180
33.5
Add New Bandwidth Name
180
33.6
Ports Rules REST API
180
33.6.1
Get All Ports Rules
180
33.7
Get Specific Ports Rules
181
33.8
Delete Specific Ports Rules
181
33.9
Update Specific Ports Rules
182
33.10
Add New Ports Rules
182
34
NVIDIA SHARP REST API
183
34.1
SHARP Reservations APIs
183
34.1.1
Get All Reservations
183
34.1.2
Get Specific SHARP Reservation
183
34.1.3
Create a New SHARP Reservation
184
34.1.4
Delete SHARP Reservation
185
34.1.5
Update SHARP Reservation
185
34.2
SHARP Jobs APIs
186
34.2.1
Get All SHARP Jobs
186
34.2.2
Get a Specific SHARP Job
187
34.2.3
Get All SHARP Non-Blocking Jobs
187
34.2.4
Get Specific SHARP Non-Blocking Job
188
35
Topology Compare REST API
190
35.1
Compare Current Topology with External .topo File
190
35.2
Get Compare Result
190
35.3
Get List of Created Topodiff Results
191
35.4
Get Topodiff Report Information
191
35.4.1
Update Master Topology File with Current Topology or External File
191
35.5
Export Topology File
192
35.6
Retrieve Topology File
192
35.7
Get Notification
192
9
35.8
Acknowledge Notification
192
36
Periodic IBDiagnet REST API
193
36.1
Start New IBDiagnet Task
193
36.2
Deactivate IBDiagnet Task
193
36.3
Start Deactivated Task
193
36.4
Delete IBDiagnet Task
193
36.5
Edit Running Task
194
36.6
Get All IBDiagnet Tasks
194
36.7
Get IBDiagnet Task
195
37
Logging REST API
196
37.1
Logging REST API
196
37.2
Get Log
196
37.3
Get Events Logs in JSON Format
196
37.4
Create History
196
37.5
Usage Statistics REST API
197
38
Access Tokens API
198
38.1
Get All Tokens
198
38.2
Create New Token
198
38.3
Revoke a Token
198
38.4
How to Use the Access Token
198
39
Roles Access Control
200
39.1
Get Rest APIs
200
39.2
Get All Roles
200
39.3
Get Role by Name
200
39.4
Create New Role
201
39.5
Update Role
201
39.6
Delete Role
201
40
CloudX APIs
202
40.1
Create Network
202
40.2
Delete Network
202
40.3
Add Port to Network
203
40.4
Delete Port From Network
204
41
Client Authentication REST API
205
41.1
Get Client Authentication Settings
205
10
41.2
Configure Certificate "Auto-Refresh"
205
41.3
Update Certificates
206
41.4
Delete All Client Certificates
206
42
Uploading New UFM Appliance Version REST API
207
42.1
Infrastructure Usage
207
42.2
Upgrade Flow
207
42.3
REST API
207
42.3.1
Upload New UFM APL Image
207
42.3.2
Delete UFM APL Image
207
42.3.3
Activate UFM APL Upgrade Image
208
42.3.4
Activate UFM APL Master reload
208
42.3.5
Get the List of Available Images
208
42.3.6
Get Upgrade Status
208
42.4
UFM System Dump API
209
42.4.1
Create New System Dump
209
43
UFM Dynamic Telemetry Instances REST API
210
43.1
Instantiate a New Instance
210
43.2
Change Running Instance
212
43.3
Get All Instances Status
212
43.4
Pause Running Instance
213
43.5
Continue Running a Stopped Instance
213
43.6
Get Supported Counters
213
43.7
Delete a Running Instance
213
44
REST API Complementary Information
215
44.1
Exposing site_name field in REST API
215
44.2
Examples of REST APIs Using Various Authentication Types
215
44.3
Basic Authentication
215
44.4
Session-Based Authentication
215
44.5
Token-Based Authentication
215
45
Plugin Management API
217
45.1
Get All Plugins
217
45.2
Add Plugin
217
45.3
Remove Plugin
217
45.4
Disable Plugin
217
11
45.5
Enable Plugin
218
45.6
Pull Plugin Image
218
45.7
Load Plugin Image
218
46
System Monitoring REST API
220
46.1
Get System Monitoring Prometheus Metrics
220
46.2
Get Topology Changes Events History Counters
220
47
UFM Configuration REST API
221
47.1
Get UFM Configuration
221
47.2
Update UFM Configuration
221
48
Plugin REST APIs
222
48.1
NDT Plugin REST API
222
48.1.1
Topodiff REST APIs
222
48.1.2
Subnet Merger REST APIs
225
48.2
Telemetry to FluentD Streaming (TFS) Plugin REST API
231
48.2.1
Get Streaming Configurations
231
48.2.2
Update Streaming Configurations
231
48.2.3
Multiple UFM Telemetry Endpoints
232
48.2.4
Get Streaming Attributes Configurations
232
48.2.5
Update Streaming Attributes Configurations
233
48.3
Events to FluentD Streaming (EFS) Plugin REST API
233
48.3.1
Get Streaming Configurations
233
48.3.2
Update Streaming Configurations
234
48.4
UFM Bright Cluster Integration Plugin REST APIs
234
48.4.1
Get Plugin Configurations
235
48.4.2
Update Plugin Configurations
235
48.4.3
Get Bright Nodes
236
48.4.4
Get Bright Jobs
236
48.5
Autonomous Link Maintenance (ALM) Plugin REST API
237
48.5.1
Generate System Dump
237
48.5.2
Get System Dump
237
48.6
gRPC-Streamer Plugin REST API
238
48.6.1
Authentication
238
48.6.2
Create a Session to UFM from gRPC
238
48.6.3
Create a New Subscription
238
12
48.6.4
Edit a Known Subscription
239
48.6.5
Get a List of Known Subscribers
240
48.6.6
Delete a Known Subscriber
240
48.6.7
Run a Known Subscriber Once
240
48.6.8
Run Streamed Data of a Known Subscriber
241
48.6.9
Run New Subscriber Once
242
48.6.10
Run Streamed Data of a New Subscriber
242
48.6.11
Run a Serialization on all Running Streams
243
48.6.12
Stop a Running Stream
243
48.6.13
Run a Subscribe Stream
243
48.6.14
Get Variables from a Known Subscriber
244
48.6.15
Get Help / Version
244
48.7
Sysinfo Plugin REST API
244
48.7.1
Authentication
244
48.7.2
Create Request Query
245
48.7.3
Delete Schedule Request
246
48.7.4
Cancel Sysinfo Scheduler Run
246
48.7.5
Update Schedule Request
247
48.7.6
Help
247
48.7.7
Version
247
48.8
SNMP REST API
248
48.8.1
Register Switches
248
48.8.2
Unregister Switches
248
48.8.3
Enable Trap
249
48.8.4
Disable Trap
249
48.8.5
Get a List of Registered Switches
249
48.8.6
Get a List of Monitored Traps
250
48.8.7
SNMP Plugin Version
250
49
Document Revision History
251
13
You can download a PDF version here.
About This Manual
This document provides information about all available REST API calls supported by NVIDIA® UFM®
Enterprise. Every REST API includes the following:
•
Short description
•
Full URL path of the request
•
Output example of the response
Intended Audience
UFM customers: end users, OEMs, Integrators, Customer Support Engineers, Field Application
Engineers, and R&D.
Technical Support
Customers who purchased NVIDIA products directly from NVIDIA are invited to contact us through the
following methods:
•
E-mail: enterprisesupport@nvidia.com
•
Enterprise Support page: https://www.nvidia.com/en-us/support/enterprise
Customers who purchased NVIDIA M-1 Global Support Services, please see your contract for details
regarding Technical Support.
Customers who purchased NVIDIA products through an NVIDIA-approved reseller should first seek
assistance through their reseller.
Glossary
Abbreviation
Description
API
Application Programming Interface
REST
Representational State Transfer
UFM
Unified Fabric Manager-centralized application for managing
InfiniBand fabrics
Related Documentation
The following documents are posted in this central location.
•
UFM End User License Agreement
•
NVIDIA UFM Enterprise User Manual
• NVIDIA UFM Enterprise Release Notes
14
•
NVIDIA UFM Enterprise Multisite Portal Documentation
•
NVIDIA UFM Enterprise Quick Start Guide
• NVIDIA UFM Enterprise REST SDK Guide
15
1 Monitoring REST API
•
Description - APIs for managing monitoring sessions data and monitoring templates data
•
Request URL - /ufmRest/monitoring
•
Main Operations
•
Monitoring sessions:
•
Create a monitoring session
•
Delete a monitoring session
•
Get data of a monitoring session
•
Monitoring session snapshot
•
Request data of a monitoring session’s attributes
•
Get all monitoring available attributes
•
Get traffic/congestion map
•
Monitoring templates:
•
Create a monitoring template
•
Update a monitoring template
•
Get a monitoring template
•
Get all monitoring templates
•
Delete a monitoring template
1.1 Possible Attribute Values
The below are all the available values of the Monitoring attributes.
•
Monitor Class - the selected object type for monitoring
•
Monitor Attributes - the selected attributes (counters) for monitoring the monitored objects
• Monitor Functions - list of optional functions to apply for the monitored objects data
Attribute
Value
Description
Monitoring class
"Device"
General device in the fabric (can be switch/ host/
bridge, etc.)
"Port"
Represents a physical port in the fabric
Monitor attributes
"Infiniband_MBOut"
Total number of data octets, divided by 4,
"Infiniband_MBOutRate"*
transmitted on all VLs from the port, including all
octets between (and not including) the start of
packet delimiter and the VCRC, and may include
packets containing errors.
All link packets are excluded. Results are reported
as a multiple of four octets
"Infiniband_MBIn"
Total number of data octets, divided by 4, received
"Infiniband_MBInRate"*
on all VLs at the port.
All octets between (and not including) the start of
packet delimiter and the VCRC are excluded, and
may include packets containing errors.
All link packets are excluded. When the received
packet length exceeds the maximum allowed
packet length specified in C7-45, the counter may
include all data octets exceeding this limit. Results
are reported as a multiple of four octets
16
Attribute
Value
Description
"Infiniband_PckOut"
Total number of packets transmitted on all VLs
"Infiniband_PckOutRate"*
from the port, including packets with errors, and
excluding link packets
"Infiniband_PckIn"
Total number of packets, including packets
"Infiniband_PckInRate"*
containing errors and excluding link packets,
received from all VLs on the port
"Infiniband_RcvErrors"
Total number of packets containing errors that
"Infiniband_RcvErrors_Delta
were received on the port including:
"**
•
Local physical errors (ICRC, VCRC, LPCRC, and
all physical errors that cause entry into the
BAD PACKET or BAD PACKET DISCARD states of
the packet receiver state machine).
•
Malformed data packet errors (LVer, length,
VL).
•
Malformed link packet errors (operand, length,
VL).
•
Packets discarded due to buffer overrun
(overflow).
"Infiniband_XmtDiscards"
Total number of outbound packets discarded by the
"Infiniband_XmtDis-
port when the port is down or congested for the
cards_Delta"**
following reasons:
•
Output port is not in the active state
•
Packet length has exceeded NeighborMTU
•
Switch Lifetime Limit exceeded
•
Switch HOQ Lifetime Limit exceeded, including
packets discarded while in VLStalled State
"Infiniband_SymbolErrors"
Total number of minor link errors detected on one
"Infiniband_SymbolErrors_D
or more physical lanes
elta"**
"Infiniband_LinkRecovers"
Total number of times the Port Training state
"Infiniband_LinkRecovers_D
machine has successfully completed the link error
elta"**
recovery process
"Infiniband_LinkDowned"
Total number of times the Port Training state
"Infiniband_LinkDowned_Del
machine has failed the link error recovery process
ta"**
and downed the link
"Infiniband_LinkIntegrityErr
The number of times that the count of local
ors"
physical errors exceeded the threshold specified by
"Infiniband_LinkIntegrityErr
LocalPhyErrors
ors_Delta"**
"Infiniband_RcvRemotePhys
Total number of packets marked with the EBP
Errors"
delimiter received on the port
"Infiniband_RcvRemotePhys
Errors_Delta"**
"Infiniband_XmtConstraintEr
Total number of packets not transmitted from the
rors"
switch physical port for the following reasons:
"Infiniband_XmtConstraintEr
•
FilterRawOutbound is true and packet is raw.
rors_Delta"**
•
PartitionEnforcementOutbound is true and
packet fails partition key check or IP version
check
17
Attribute
Value
Description
"Infiniband_RcvConstraintEr
Total number of packets received on the switch
rors"
physical port that are discarded for the following
"Infiniband_RcvConstraintEr
reasons:
rors_Delta"**
•
FilterRawInbound is true and packet is raw
•
PartitionEnforcementInbound is true and
packet fails partition key check or IP version
check
"Infiniband_ExcBufOverrunE
The number of times that OverrunErrors
rrors"
consecutive flow control update periods occurred,
"Infiniband_ExcBufOverrunE
each having at least one overrun error
rrors_Delta"**
"Infiniband_RcvSwRelayErro
Total number of packets received on the port that
rs"
were discarded when they could not be forwarded
"Infiniband_RcvSwRelayErro
by the switch relay for the following reasons:
rs_Delta"**
•
DLID mapping
•
VL mapping
• Looping (output port = input port)
"Infiniband_VL15Dropped"
Number of incoming VL15 packets dropped because
"Infiniband_VL15Dropped_D
of resource limitations (e.g., lack of buffers) in the
elta"**
port
"Infiniband_XmitWait"
The number of ticks during which the port selected
by PortSelect had data to transmit but no data was
sent during the entire tick because of insufficient
credits or of lack of arbitration
"Infiniband_CumulativeError
The sum of several error counters indicating link
s"
integrity issues
"Infiniband_CBW"
Congestion bandwidth rate, measure the rate of
congestion measured by XmitWait counter
"Infiniband_Normalized_MB
Effective port bandwidth utilization in %
Out"
XmitData incremental/Link Capacity
"Infiniband_Normalized_CB
Amount of bandwidth that was suppressed due to
W"
congestion (XmitWait incremental/Time) * Link
Capacity
Separate counters are used for Tier 4 ports and for
the rest of the ports
"Infiniband_NormalizedXW"
Congestion in relation to packets transmitted over
the link XmitWait incremental / XmitPackets
incremental.
This event is calculated only for the port directly
connected to receiving hosts.
Separate counters are used for Tier 4 ports and for
the rest of the ports
Monitor functions
"RAW"
Raw data values of selected monitoring objects
"AVG"
Average value of all selected monitoring objects
"SUM"
Sum value of all selected monitoring objects
"MIN"
Minimum value of all selected monitoring objects
"MAX
Maximum value of all selected monitoring objects
18
* Rate Counter - Counter value that is calculated based on the delta from the previous
sampled value divided by elapsed time from previous sample (the ratio between two
sequential samples).
** Delta Counter - Counter value that is calculated based on the delta from the previous
counter value.
1.2 Monitoring Sessions REST API
1.2.1 Create Monitoring Session
•
Description - creates and starts a monitoring session
•
Request URL - POST /ufmRest/monitoring/start
•
Request Content Type - application/json
•
Request Data Format
{
"scope_object": MonitorClass,
"monitor_object": MonitorClass,
"objects":
[ "object_id" ],
"counters":
[ MonitorAttributes ],
"functions": [ "MonitorFunctions" ],
"interval":2
}
Refer to the table in "Possible Attribute Values" for possible values for monitor class,
monitor attributes, and monitor functions.
•
Request Data Example
{
"attributes": ["Infiniband_MBOut","Infiniband_MBIn"],
"functions": ["RAW"],
"scope_object": "Site",
"interval":2,
"monitor_object": "Device",
"objects": ["Grid.default"]
}
•
Request Data Example -Creates and starts a monitoring session on top of Group of Devices.
{
"interval": 15,
"functions": [
"RAW"
],
"scope_object": "Group",
"monitor_object": "Device",
"attributes": [
"Infiniband_MBOutRate"
],
"objects": [
"Grid.default.groups.<group_name>"
]
}
400 BAD_REQUEST
201 CREATED
• Response Format
19
/ufmRest/monitoring/session/<session_id>
•
Response Example
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>Redirecting...</title>
<h1>Redirecting...</h1>
<p>You should be redirected automatically to target URL: <a href="/ufmRest/monitoring/session/3">/ufmRest/
monitoring/session/3</a>. If not click the link.
•
Note - the resource ID can be found by parsing the location header.
•
Status Codes
•
201 - created
1.2.2 Delete Monitoring Session
•
Description - deletes a monitoring session
•
Request URL - DELETE /ufmRest/monitoring/<session>/<session_id>
•
Request Data Format - not required
•
Response - N/A
•
Status Codes
•
202 - accepted
1.2.3 Get Monitoring Session Data
•
Description - returns monitoring session data
•
Request URL - GET /ufmRest/monitoring/<session>/<session_id>/data
type=history&membersType=Device&attributes=[Infiniband_PckInRate]&function=RA
W&result_format=Port&members=[ec0d9a03007d7f0a]&start_time=-5min&end_time=
-0min
•
Request Data Format - not required
•
Response Format
{
timestamp: {
monitor_object: {
name: {
"statistics": {
counter1...counter2
},
dname: ...,
last_updated:
}
}
}
• Response Example
{
"2020-10-27 18:52:42": {
"Device": {
"98039b030000e456": {
"dname": "r-dmz-ufm128",
"last_updated": "2020-10-27 18:52:14",
"statistics": {
"Infiniband_PckIn": 22035108156,
"Infiniband_PckOut": 330352264,
"Infiniband_PckOutRate": 0.06599832808486128,
"Infiniband_PckInRate": 0.06599832808486128
20
}
},
"0c42a103008b3bd0": {
"dname": "r-dmz-ufm131",
"last_updated": "2020-10-27 18:52:14",
"statistics": {
"Infiniband_PckIn": 1297449,
"Infiniband_PckOut": 1286924,
"Infiniband_PckOutRate": 0.13199665616972256,
"Infiniband_PckInRate": 0.13199665616972256
}
},
"0c42a103008b40d0": {
"dname": "r-dmz-ufm134",
"last_updated": "2020-10-27 18:52:14",
"statistics": {
"Infiniband_PckIn": 4681865,
"Infiniband_PckOut": 3223445,
"Infiniband_PckOutRate": 2.2109439908428525,
"Infiniband_PckInRate": 2.309941482970145
}
},
"248a0703002e61da": {
"dname": "r-dmz-ufm137",
"last_updated": "2020-10-27 18:52:14",
"statistics": {
"Infiniband_PckIn": 333267757,
"Infiniband_PckOut": 22034474531,
"Infiniband_PckOutRate": 0.13199665616972256,
"Infiniband_PckInRate": 0.13199665616972256
}
},
"0002c903007b78b0": {
"dname": "r-dmz-ufm-sw49",
"last_updated": "2020-10-27 18:52:14",
"statistics": {
"Infiniband_PckIn": 22374553061,
"Infiniband_PckOut": 22380620225,
"Infiniband_PckOutRate": 3.5309105525400772,
"Infiniband_PckInRate": 3.6299080446673697
}
}
}
}
}
•
Note - UFM default session which collects all port statistics every 30 seconds (by default) can
be queried by using session ID 0 (zero): GET /ufmRest/monitoring/session/0/data
•
Status Codes
•
200 - OK
1.2.4 Get Default Monitoring Session Data by PKey Filtering
•
Description - returns default monitoring session data by Pkey filtering
•
Request URL - GET /ufmRest/monitoring/session/<session_id>/data?pkey=<pkey name>
•
Request Data Format - not required
•
Response Format
{
timestamp: {
monitor_object: {
name: {
"statistics": {
counter1...counter2
},
dname: ...,
last_updated:
}
}
}
• Response Example
{
"2022-10-19 13:23:11": {
"Ports": {
"b8599f03000a7768_1": {
"dname": "default / Computer: r-ufm77 / HCA-1/1",
"last_updated": "2022-10-19 13:23:11",
"statistics": {
"raw_ber": 0,
"dev_temperature": 0,
21
"Infiniband_PckOutRate": 1.1333333333333333,
"Infiniband_PckInRate": 1.1333333333333333,
"Infiniband_MBInRate": 0.0,
"Infiniband_MBOutRate": 0.03333333333333333,
"Infiniband_MBOut": 26165,
"Infiniband_MBIn": 26126,
"Infiniband_PckOut": 95263867,
"Infiniband_PckIn": 95123933,
"Infiniband_SymbolErrors": 0,
"Infiniband_LinkRecovers": 0,
"Infiniband_LinkDowned": 12,
"Infiniband_RcvErrors": 0,
"Infiniband_RcvRemotePhysErrors": 0,
"Infiniband_RcvSwRelayErrors": 0,
"Infiniband_XmtDiscards": 440,
"Infiniband_XmtConstraintErrors": 0,
"Infiniband_RcvConstraintErrors": 0,
"Infiniband_LinkIntegrityErrors": 0,
"Infiniband_ExcBufOverrunErrors": 0,
"Infiniband_VL15Dropped": 0,
"Infiniband_XmitWait": 0,
"Infiniband_CBW": 0,
"Infiniband_Normalized_CBW": 0,
"Infiniband_Normalized_MBOut": 2.61104e-6
}
},
"b8599f03000a7769_2": {
"dname": "default / Computer: r-ufm77 / HCA-1/2",
"last_updated": "2022-10-19 13:23:11",
"statistics": {
"raw_ber": 0,
"dev_temperature": 0,
"Infiniband_PckOutRate": 0.13333333333333333,
"Infiniband_PckInRate": 0.13333333333333333,
"Infiniband_MBInRate": 0.0,
"Infiniband_MBOutRate": 0.0,
"Infiniband_MBOut": 3197,
"Infiniband_MBIn": 3197,
"Infiniband_PckOut": 11642100,
"Infiniband_PckIn": 11642006,
"Infiniband_SymbolErrors": 0,
"Infiniband_LinkRecovers": 0,
"Infiniband_LinkDowned": 2,
"Infiniband_RcvErrors": 0,
"Infiniband_RcvRemotePhysErrors": 0,
"Infiniband_RcvSwRelayErrors": 7,
"Infiniband_XmtDiscards": 80,
"Infiniband_XmtConstraintErrors": 0,
"Infiniband_RcvConstraintErrors": 0,
"Infiniband_LinkIntegrityErrors": 0,
"Infiniband_ExcBufOverrunErrors": 0,
"Infiniband_VL15Dropped": 0,
"Infiniband_XmitWait": 0,
"Infiniband_CBW": 0,
"Infiniband_Normalized_CBW": 0,
"Infiniband_Normalized_MBOut": 3.07182e-7
}
},
"f452140300383a01_1": {
"dname": "default / Computer: r-ufm51 / HCA-1/1",
"last_updated": "2022-10-19 13:23:11",
"statistics": {
"raw_ber": 0,
"dev_temperature": 0,
"Infiniband_PckOutRate": 0.06666666666666667,
"Infiniband_PckInRate": 0.06666666666666667,
"Infiniband_MBInRate": 0,
"Infiniband_MBOutRate": 0,
"Infiniband_MBOut": 3050,
"Infiniband_MBIn": 3050,
"Infiniband_PckOut": 11106861,
"Infiniband_PckIn": 11106856,
"Infiniband_SymbolErrors": 0,
"Infiniband_LinkRecovers": 0,
"Infiniband_LinkDowned": 0,
"Infiniband_RcvErrors": 0,
"Infiniband_RcvRemotePhysErrors": 0,
"Infiniband_RcvSwRelayErrors": 0,
"Infiniband_XmtDiscards": 0,
"Infiniband_XmtConstraintErrors": 0,
"Infiniband_RcvConstraintErrors": 0,
"Infiniband_LinkIntegrityErrors": 0,
"Infiniband_ExcBufOverrunErrors": 0,
"Infiniband_VL15Dropped": 0,
"Infiniband_XmitWait": 0,
"Infiniband_CBW": 0,
"Infiniband_Normalized_CBW": 0,
"Infiniband_Normalized_MBOut": 2.74269e-7
}
},
"f452140300383a02_2": {
"dname": "default / Computer: r-ufm51 / HCA-1/2",
"last_updated": "2022-10-19 13:23:11",
"statistics": {
"raw_ber": 0,
"dev_temperature": 0,
"Infiniband_PckOutRate": 0.06666666666666667,
"Infiniband_PckInRate": 0.06666666666666667,
"Infiniband_MBInRate": 0.0,
"Infiniband_MBOutRate": 0.0,
"Infiniband_MBOut": 3064,
"Infiniband_MBIn": 3064,
"Infiniband_PckOut": 11156319,
22
"Infiniband_PckIn": 11156290,
"Infiniband_SymbolErrors": 0,
"Infiniband_LinkRecovers": 0,
"Infiniband_LinkDowned": 0,
"Infiniband_RcvErrors": 0,
"Infiniband_RcvRemotePhysErrors": 0,
"Infiniband_RcvSwRelayErrors": 0,
"Infiniband_XmtDiscards": 0,
"Infiniband_XmtConstraintErrors": 0,
"Infiniband_RcvConstraintErrors": 0,
"Infiniband_LinkIntegrityErrors": 0,
"Infiniband_ExcBufOverrunErrors": 0,
"Infiniband_VL15Dropped": 0,
"Infiniband_XmitWait": 0,
"Infiniband_CBW": 0,
"Infiniband_Normalized_CBW": 0,
"Infiniband_Normalized_MBOut": 2.74269e-7
}
}
}
}
}
•
Status Codes
•
200 - OK
•
400 - PKey is not found
1.2.5 Monitoring Session Snapshot
•
Description - creates a one-time monitoring session and receives data
•
Request URL - POST /ufmRest/monitoring/snapshot
•
Request Content Type - application/json
•
Request Data Format
{
"scope_object": MonitorClass,
"monitor_object": MonitorClass,
"objects":
[ "object_id" ],
"counters": [
MonitorAttributes
],
"functions": [ "MonitorFunctions" ],
"interval":2
}
Refer to the table in "Possible Attribute Values" for possible values for monitor class,
monitor attributes, and monitor functions.
•
Request Data Example
{
"attributes": ["Infiniband_MBOut","Infiniband_MBIn"],
"functions": ["RAW"],
"scope_object": "Site",
"interval":2,
"monitor_object": "Device",
"objects": ["Grid.default"]
}
•
Response Format
{
timestamp: {
monitor_object: {
name: {
"statistics":{
counter1...
counter2...
},
dname:
}
}
}
23
•
Response Example
{
"2017-01-17 13:41:29": {
"Device": {
"0002c903001c6740": {
"dname": "l-qa-150 HCA-3",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
},
"f45214030042ccd0": {
"dname": "MTX6000-Interop",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
},
"0002c90300b71030": {
"dname": "MT4113 ConnectIB Mellanox Technologies",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
},
"f452140300289f80": {
"dname": "sqadell49 HCA-3",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
},
"f452140300188900": {
"dname": "sqadell47 HCA-6",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
},
"f452140300188840": {
"dname": "sqadell49 HCA-6",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
},
"f45214030028a020": {
"dname": "l-qa-150 HCA-2",
"statistics": {
"Infiniband_MBIn": 0,
"Infiniband_MBOut": 0
}
}
}
}
}
•
Status Codes
•
200 - OK
1.2.6 Request Monitoring Session Attributes Data
•
Description - requests the data that was used to create the monitoring session
•
Request URL - GET /ufmRest/monitoring/<session>/<session_id>
•
Request - not required
•
Response Format
{
"scope_object": MonitorClass,
"monitor_object": MonitorClass,
"objects":
[ "object_id" ],
"counters": [ MonitorAttributes ],
"functions": [ "MonitorFunctions" ],
"interval":2
}
Refer to the table in "Possible Attribute Values" for possible values for monitor class,
monitor attributes, and monitor functions.
• Response Example
24
{
"attributes": [
"Infiniband_PckIn",
"Infiniband_PckOutRate",
"Infiniband_PckInRate"
],
"functions": [
"RAW"
],
"scope_object": "Device",
"interval": 2,
"monitor_object": "Device",
"objects": [
"Grid.default.ec0d9a03007d7d0a",
"Grid.default.98039b030000e456",
"Grid.default.0c42a103008b3bd0",
"Grid.default.0c42a103008b40d0"
]
}
•
Status Codes
•
200 - OK
1.2.7 Get All Monitoring Available Attributes
•
Description - returns all possible values of monitoring metadata (counters, classes, and
functions)
•
Request URL - GET /ufmRest/monitoring/attributes
•
Request Data - not required
•
Response Format
{
"functions":[ MonitorFunctions],
"classes":[ MonitorClass],
"counters":[ MonitorAttributes]
}
Refer to the table in "Possible Attribute Values" for possible values for monitor class,
monitor attributes, and monitor functions.
• Response Example
{
"functions": [
"RAW",
"AVG",
"SUM",
"MIN",
"MAX"
],
"classes": [
"Port",
"Device",
"Switch",
"Bridge",
"Computer",
"LogicalServer",
"Site",
"PortsGroup"
],
"counters": [
"Infiniband_MBIn",
"Infiniband_PckIn",
"Infiniband_MBOut",
"Infiniband_PckOut",
"Infiniband_MBInRate",
"Infiniband_PckInRate",
"Infiniband_MBOutRate",
"Infiniband_SymbolErrors",
"Infiniband_LinkRecovers",
"Infiniband_LinkDowned",
"Infiniband_RcvErrors",
"Infiniband_RcvRemotePhysErrors",
"Infiniband_RcvSwRelayErrors",
"Infiniband_XmtDiscards",
"Infiniband_XmtConstraintErrors",
"Infiniband_RcvConstraintErrors",
"Infiniband_LinkIntegrityErrors",
25
"Infiniband_ExcBufOverrunErrors",
"Infiniband_VL15Dropped",
"Infiniband_SymbolErrors_Delta",
"Infiniband_LinkRecovers_Delta",
"Infiniband_LinkDowned_Delta",
"Infiniband_RcvErrors_Delta",
"Infiniband_RcvRemotePhysErrors_Delta",
"Infiniband_RcvSwRelayErrors_Delta",
"Infiniband_XmtDiscards_Delta",
"Infiniband_XmtConstraintErrors_Delta",
"Infiniband_RcvConstraintErrors_Delta",
"Infiniband_LinkIntegrityErrors_Delta",
"Infiniband_ExcBufOverrunErrors_Delta",
"Infiniband_VL15Dropped_Delta",
"Infiniband_CBW",
"Infiniband_Normalized_CBW",
"Infiniband_Normalized_MBOut",
"Infiniband_XmitWait",
"Infiniband_NormalizedXW",
"Infiniband_CumulativeErrors"
]
}
•
Status Codes
•
200 - OK
1.2.8 Get Traffic/Congestion Map
•
Description - returns traffic and congestion information on the different tiers in the fabric.
•
Request URL - GET /ufmRest/monitoring/congestion
•
Content Type - Application/json
•
Response
{
"1": {
"traffic": {
"max": 0,
"avg": 0,
"min": 0
},
"cong": {
"max": 0,
"avg": 0,
"min": 0
}
},
"3": {
"traffic": {
"max": 0,
"avg": 0,
"min": 0
},
"cong": {
"max": 0,
"avg": 0,
"min": 0
}
},
"2": {
"traffic": {
"max": 0,
"avg": 0,
"min": 0
},
"cong": {
"max": 0,
"avg": 0,
"min": 0
}
},
"4": {
"traffic": {
"max": 0,
"avg": 0,
"min": 0
},
"cong": {
"max": 0,
"avg": 0,
"min": 0
}
}
}
•
Status Codes
• 200 - OK
26
1.2.9 Get Port Groups Traffic/Congestion Map
•
Description - returns traffic and congestion information for all port groups.
•
Request URL - GET /ufmRest/monitoring/port_groups
•
Content type - Application/json
•
Response
{
<group_name>: {
"traffic": {
"max": 0,
"avg": 0,
"min": 0
},
"cong": {
"max": 0,
"avg": 0,
"min": 0
}
}
•
Status Codes
•
200 - OK
1.3 Monitoring Templates REST API
1.3.1 Create Monitoring Template
•
Description - Creates and starts a new monitoring template
•
Request URL - POST /ufmRest/app/monitoring
•
Content type - Application/json
•
Request Data Format
{
"interval": 5,
"functions": [
"RAW"
],
"scope_object": "Device",
"monitor_object": "Device",
"attributes": [
"attribute "
],
"objects": [
"object_id"
],
"name": "template",
"description": "",
"view_type": "Line"
}
Refer to the table in "Possible Attribute Values" for the list of attributes.
• Request Data Example
{
"interval": 5,
"functions": [
"RAW"
],
"scope_object": "Device",
"monitor_object": "Device",
"attributes": [
"Infiniband_XmtConstraintErrors"
],
"objects": [
27
"Grid.default.e41d2d0300167ee0"
],
"name": "template",
"description": "",
"view_type": "Line"
}
•
Response
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>Redirecting...</title>
<h1>Redirecting...</h1>
<p>You should be redirected automatically to target URL: <a href="/ufmRest/app/monitoring/template">/
ufmRest/app/monitoring/template</a>. If not click the link..
•
Status Codes
•
201 - created successfully
•
403 - bad request
1.3.2 Update Monitoring Template
•
Description - updates an existing monitoring template
•
Request URL - PUT /ufmRest/app/monitoring
•
Content type - Application/json
•
Request Data
{
"interval": <interval>,
"functions": [
"<function>"
],
"scope_object": "Device",
"monitor_object": "Device",
"attributes": [
"attribute "
],
"objects": [
"object_id"
],
"description": "",
"view_type": "<view_type>"
}
Refer to the table in "Possible Attribute Values" for the list of attributes.
•
Status Codes
•
201 - updated successfully
•
403 - bad request
1.3.3 Get Monitoring Template
•
Description - retrieve information on an existing monitoring template
•
Request URL - GET ufmRest/app/monitoring/<template_name>
•
Content type - Application/json
• Request Data
{
"functions": [
"RAW"
],
"description": "N/A",
"view_type": "Line",
"template_name": "jhgljlj",
"interval": 5,
"objects": [
"Grid.default.e41d2d0300167ee0"
28
],
"scope_object": "Device",
"attributes": [
"Infiniband_XmtDiscards",
"Infiniband_RcvErrors",
"Infiniband_RcvRemotePhysErrors",
"Infiniband_RcvConstraintErrors"
],
"monitor_object": "Device",
"name": "admin_jhgljlj"
}
Refer to the table in "Possible Attribute Values" for the list of attributes.
•
Status Codes
•
200 - OK
•
404 - not found
1.3.4 Get All Monitoring Templates
•
Description - returns a list of all existing monitoring templates
•
Request URL - GET ufmRest/app/monitoring
•
Content type - Application/json
•
Response
[
"template_name1",
"template_name2",
]
•
Status Codes
•
200 - OK
1.3.5 Delete Monitoring Template
•
Description - remove an existing monitoring template
•
Request URL - DELETE ufmRest/app/monitoring/<template_name>
•
Content type - Application/json
•
Status Codes
•
200 - OK
• 404 - not found
29
2 Templates REST API
•
Description - API for using provisioning templates in UFM (getting, adding and refreshing
templates)
•
Request URL - /ufmRest/templates
•
Main Operations
•
Get all templates
•
Get template
•
Add template
•
Remove template
•
Refresh templates list
2.1 Get All Templates
•
Description - this interface is used to retrieve all templates
•
Request URL - GET /ufmRest/templates
•
Optional Request Parameters
"tags"
Comma seperated list of tags.
For example: .../templates?tags="switch,Mellanox"
"profile"
Profile of the template.
For example: .../templates?profile="ib"
"system_type"
Type of system.
For example: .../templates?system_type=Mellanox Switch
•
Request Data - N/A
•
Response
[{
"matchingValidationTemplate": null,
"description": "Shows SNMP settings and status",
"filePath": "/opt/ufm/files/templates/pre-defined/Mellanox/Show-SNMP",
"validationTemplate": null,
"portProvisioning": null,
"systemProfile": "",
"parsingScript": null,
"systemType": "Mellanox Switch",
"owner": "*system*",
"title": "Show-SNMP",
"tags": "switch,Mellanox"
},
{
"matchingValidationTemplate": null,
"description": "Displays health report.",
"filePath": "/opt/ufm/files/templates/pre-defined/Mellanox/Show-Health-Report",
"validationTemplate": null,
"portProvisioning": null,
"systemProfile": "",
"parsingScript": null,
"systemType": "Mellanox Switch",
"owner": "*system*",
"title": "Show-Health-Report",
"tags": "switch,Mellanox"
},
•
Status Codes
•
200 - successful operation
2.2 Get Template
• Description - this interface is used to retrieve the content of a specific template
30
•
Request URL - GET /ufmRest/<templates>/<template_name>
•
Request Data - N/A
•
Response
{
"matchingValidationTemplate": null,
"description": "Shows SNMP settings and status",
"filePath": "/opt/ufm/files/templates/pre-defined/Mellanox/Show-SNMP",
"validationTemplate": null,
"portProvisioning": null,
"systemProfile": "",
"content": [
"#!desc: Shows SNMP settings and status\n",
"#!system_profile:\n",
"#!system_type: mlnxos_switch\n",
"#!update_conf: false\n",
"#!owner: *system*\n",
"show snmp\n"
],
"parsingScript": null,
"systemType": "Mellanox Switch",
"owner": "*system*",
"title": "Show-SNMP",
"tags": "switch,Mellanox"
}
•
Status Codes
•
200 - successful operation
•
400 - template <template_name> does not exist
2.3 Add Template
•
Description - this interface is used to add/create a new user-defined template
•
Request URL - POST /ufmRest/<templates>
•
Request Data
{
"title": "tenplate_title",
"systemType": "Mellanox Switch",
"content":["the content of the template"],
"description": "template_description"
}
•
Response - HTTP Response Location Header will contain URI with template name created for
running the CLI command on the specified switches
•
Status Codes
•
201 - created
•
409 - template with a name 'template_title' already exists. Please select a different
name.
•
400 - missing attribute(s) : attr_name
2.4 Delete Template
•
Description - this API is used to remove an existing template
•
Request URL - DELETE /ufmRest/<templates>/<template-id>
•
Request Data - N/A
•
Response - N/A
•
Status Codes
• 204 - no content
31
2.5 Refresh Templates List
•
Description - this interface is used to refresh the templates list, after a new user-defined
template was created
•
Request URL - POST /ufmRest/<templates>/refresh
•
Request Data - N/A
•
Response - N/A
•
Status Codes
•
200 - OK
2.6 All Available Templates for Mellanox Switches
2.6.1 General Templates
Available
Description
Arguments
Templates
Globals
Locals
Disable-SNMP
Disables SNMP on the switch
Disable-SNMP-V3
Disables SNMP v3
user_name - username to
use
Disable-Telnet
Disables the telnet service on
the switch
Enable-SNMP
Enables SNMP and defines
community_name -
'public' community string
community name to enable
Enable-SNMP-V3
Creates an SNMP v3 user
•
user_name - username
'admin' with predefined
to use
authentication and privacy
•
authentication_passwor
passwords
d - authentication
password
•
user_name - username
to use
Enable-Telnet
Enables the telnet service on
the switch
Install-License
Installing Switch license
license_key - license key to
install
Remove-SNMP-Host
Removes a trap-receiver
IP_address - IP address of
SNMP host to remove
Reset-Counters
Clears all the counters
Set-CLI-Logout
Sets default CLI log-out interval
auto_logout_timeout - auto-
logout timeout value (in
minutes)
Set-Email-
Sets up an email server and a
•
email_address -
Notifications
recipient for email
recipient e-mail address
notifications
•
IP_address - IP address
of mail server
Set-Hostname
Sets hostname of the switch
switch_hostname -
hostname to set
32
Available
Description
Arguments
Templates
Globals
Locals
Set-NTP-Server
Sets up an NTP server, sets the
•
NTP_server_IP - NTP
time zone and synchronizes the
server address
date
•
time_zone - timezone
name
Set-SNMP-V2c-Traps
Adds a trap-receiver for SNMP
•
community_name -
v2c traps with given community
community name to use
•
IP_address - address of
trap receiver
Set-SNMP-V3-Traps
Adds a trap-receiver for SNMP
•
private_password -
v3 traps with username and
privacy password to use
predefined authentication and
•
user_name - username
privacy passwords
to use
•
authentication_passwor
d - authentication
password to use
•
IP_address - address of
traps receiver
Show-Running-Config
Shows the running
configuration of the switch
Show-SNMP
Shows SNMP settings and status
Show-SNMP-Host
Shows list of trap-receivers
Show-SNMP-User
Shows the list of SNMP users
Show-Power
Displays power supplies and
power usage
Show-Fan
Displays fans status and speed
Show-Health-Report
Displays health report
Show-Voltage
Displays power supplies voltage
level
Show-Protocols
Displays all protocols enabled
in the system
2.6.2 InfiniBand Templates
Available Templates
Description
Disable-SM
Disables subnet manager
Enable-SM
Enables subnet manager
33
3 UFM Version REST API
•
Description - retrieve the current UFM version number
•
Request URL - GET /ufmRest/app/ufm_version
•
Request Content Type - Application/json
•
Response
{
"ufm_release_version": "6.1.99-12"
}
•
Status Codes
• 200 - OK
34
4 Actions REST API
4.1 Provisioning
•
Description - provisioning allows users to perform actions on a specific switch in UFM.
•
Request URL - /ufmRest/actions
•
Main Operations
•
Run Explicit CLI commands
•
Run a predefined template using the template name
4.1.1 Running Explicit CLI Commands
•
Description - perform a provisioning job on a switch using explicit CLI commands
•
Request URL - POST /ufmRest/actions
•
Request Content Type - Application/json
•
Request Data
{
"action": "run_cli",
"identifier": "identifier",
"params": {
"commandline": ["<CLI_COMMAND_LINE1>",
"<CLI_COMMAND_LINE2>"
],
"arguments": {
"globals": {
"<global_arg1>": "<global_arg_val1>"
},
"devices": {
"<system_IP>": {
"<local_arg1>": "<local_arg_val1>"
}
}
}
},
"description": "",
"object_ids": ["<object ips/ids>"],
"object_type": "object_type"
}
The "identifier" field specifies whether to search for the object using its IP or its ID.
Group objects have IDs (name) only. However, for switch provisioning, both
identifiers may be used.
•
Response - the HTTP Response Location Header will contain URI with Job ID created for
running the CLI command on the specified switches
•
Status Codes
•
202 - successful operation
•
400 - bad request
4.1.2 Running Predefined Template Using Its Name
•
Description - perform a Provisioning Job on a switch using the template’s name
•
Request URL - POST /ufmRest/actions/provisioning/<template_name>
•
Request Content Type - Application/json
• Request Data
35
{
"identifier": "identifier",
"params": {
"arguments": {
"globals": {
"<global_arg1>": "<global_arg_val1>"
},
"devices": {
"<system_IP>": {
"<local_arg1>": "<local_arg_val1>"
}
}
}
},
"description": "",
"object_ids": ["<objects_ips/ids>"],
"object_type": "object_type "
}
The "identifier" field specifies whether to search for the object using its IP or its ID.
Group objects have IDs (name) only. However, for switch provisioning, both
identifiers may be used.
•
Response - the HTTP Response Location Header will contain URI with Job ID created for
running the CLI command on the specified switches
•
Status Codes
•
202 - successful operation
•
400 - bad request
4.2 Set Node Description
•
Description - setting a node description for unmanaged switches
•
Request URL - POST /ufmRest/actions
•
Request Content Type - Application/json
•
Request Data
{
"action": "set_node_description",
"identifier": "id",
"params": {
"arguments": {
"devices": {
"ec0d9a03000b2640": {"description": "NodeDesc"}}
}
},
"description": "Set Node Decription",
"object_ids": [
"ec0d9a03000b2640"
],
"object_type": "System"
}
•
Response - the HTTP Response Location Header will contain URI with Job ID created for
running the CLI command on the specified switches
•
Note - when the node description is set, OpenSM will not be aware of this change, unless the
fabric discovery is refreshed using the action detailed in "Fabric Discovery Refresh REST API".
•
Status Codes
•
202 - successful operation
•
400 - bad request
4.3 Set Hostname Provisioning Example
•
Description - sets hostname of the switch
• Request URL - POST ufmRest/actions/provisioning/Set-Hostname
36
•
Arguments
Name
Type
Description
switch_hostname
Local (per device)
Hostname to set
•
Request Data
{
"identifier": "ip",
"params": {
"arguments": {
"globals": {},
"devices": {
"10.209.24.39": {
"switch_hostname": "r-smg-sw18"
}
}
}
},
"object_ids": ["10.209.24.39"],
"object_type": "System"
}
4.4 In-Band Reboot
•
Description - allows users to run in-band reboot in UFM. In-band reboot supports unmanaged
switches only.
•
Request URL - POST /ufmRest/actions/inband_reboot
•
Request Content Type - application/json
•
Request Data
{
"identifier": "id",
"object_ids": ["<system1_id>", "<system2_id>"]/["group_id"],
"object_type": "System"/"Group"
}
This is a synchronized action (no job will be created).
•
Response - N/A
The response will be empty unless an error has taken place. A successful response
(one without errors) indicates that the reboot command was successfully sent to the
switch, not that the device is rebooted.
•
Status Codes
•
202 - accepted. Reboot command was sent successfully.
•
400 - bad request (bad or missing parameters)
4.5 Software Upgrade
•
Description - allow users to run sw_upgrade in UFM
•
Request URL - POST /ufmRest/actions
•
Request Content Type - application/json
• Request Data
37
{
"action": "sw_upgrade",
"identifier": "id",
"object_ids": [
"<system1_id>",
"<system2_id>"
]/[
"group_id"
],
"object_type": "System"/"Group",
"params": {
"protocol": "scp,ftp",
"server": "server_ip",
"username": "<username>",
"password": "password",
"image": "image",
"path": "path"
},
"description": "<description>"
}
•
Notes
•
Switches SW images should be .img
•
Hosts SW images should be .tgz
•
This action is supported for both switches and hosts that have ufmagent. Job will be
successfully completed once the upgrade procedure is done.
•
For the switch SW upgrade to take effect, make sure to reboot the switch.
•
Response - the HTTP Response Location Header will contain URI with job ID created for
running the action
•
Status Codes
•
202 - accepted. Job ID created successfully.
400 - Bad request (bad or missing parameters)
4.6 Firmware Upgrade
•
Description - allows users to run fw_upgrade in UFM
•
Request URL - POST /ufmRest/actions
•
Request Content Type - application/json
•
Request Data
{
"action": "fw_upgrade",
"identifier": "id",
"object_ids": [
"<system1_id>",
"<system2_id>"
]/[
"group_id"
],
"object_type": "System"/"Group",
"params": {
"protocol": "ftp",
"server": "server_ip",
"username": "<username>",
"password": "password",
"image": "image",
"path": "path"
},
"description": "<description>"
}
•
Notes
•
FW images should be placed under /path/<PSID> where the PSID is the PSID of the
device, with the name “fw_image”
• This action is supported for both switches and hosts that have ufmagent. Job will be
successfully completed once the upgrade procedure is done.
38
•
Response - the HTTP Response Location Header will contain URI with job ID created for
running the action
•
Status Codes
•
202 - accepted. Job ID created successfully.
400 - bad request (bad or missing parameters)
4.7 Reboot
•
Description - allows users to reboot switches/hosts in UFM
•
Request URL - POST /ufmRest/actions
•
Request Content Type - application/json
•
Request Data
{
"action": "reboot",
"identifier": "id",
"object_ids": [
"<system1_id>",
"<system2_id>"
]/[
"group_id"
],
"object_type": "System"/"Group",
"description": "<description>"
}
•
Note - this action is supported for switches and hosts that have ufmagent. Job will be
successfully completed once the upgrade procedure is done.
•
Response - the HTTP Response Location Header will contain URI with job ID created for
running the action
•
Status Codes
•
202 - accepted. Job ID created successfully.
400 - bad request (bad or missing parameters)
4.8 Burn HDR Active Fiber Cable Transceivers
This feature is supported for cables with the OPN MFS1S00-HxxV only. This feature is
supported for MFS1S00-HxxV cables with NVIDIA® ConnectX®-6 HCAs and NVIDIA Quantum
devices.
•
Description - allow user to burn MFS1S00-HxxV cables on NVIDIA Quantum switches using
the LinkX tool which is part of Flint.
•
Request URL - POST /ufmRest/actions
• Request Content Type - application/json
{
"params": {"image":"hercules2.bin"},
"action":"burn_cables_transceivers",
"object_ids": ["0002c9030060dc20"],
"object_type":"System",
"description":"",
"identifier":"id"
}
{
"params": {"image":"hercules2.bin"},
"action":" burn_cables_transceivers ",
"object_ids": ["switches"],
"object_type":"Group",
"description":"",
"identifier":"id"
39
}
•
Response - the HTTP Response Location Header will contain a URI with a job ID created for
running the action
•
Status Codes
•
202 - accepted, job ID created successfully
•
400 - bad request (bad or missing parameters)
•
404 - host/systems not found
4.8.1 Get List of Available Images
•
Description - allows users to get all availebe images that could be applied on device.
•
Request URL - GET /ufmRest/app/images/cables
•
Request Content Type - Application/json
•
Request Data:
[
"hercules2.bin",
"hercules3.bin"
]
•
Status Codes
•
200 - updated successfully
•
400 - bad request (bad or missing parameters)
•
404 - not found.
4.8.2 Upload New Cable Image
•
Description - allows users to upload a new cable image before applying the burn MFS1S00-
HxxV transceiver action.
•
Request URL - POST /ufmRest/app/images/cables
•
Request Content Type - Application/json
•
Request Data:
{
"file": "hercules2.bin"
}
•
Status Codes
•
200 - updated successfully
•
400 - bad request (bad or missing parameters)
•
404 - not found.
4.8.3 Delete Cable Image
•
Description - allows users to delete an uploaded cable image.
•
Request URL - DELETE /ufmRest/app/images/cables/<image_name>
•
Request Content Type - Application/json
•
Status Codes
•
200 - updated successfully
• 400 - bad request (bad or missing parameters)
40
•
404 - not found.
4.8.4 Activate Cables Transceivers Firmware Action
•
Description - Allows users to activate burned image onto list of devices.
•
Request URL - POST /ufmRest/actions
•
Request Content Type - Application/json
•
Request Data:
{
"action":"activate_cables_transceivers_fw",
"object_ids": ["0002c9030060dc20"],
"object_type":"System",
"description":"",
"identifier":"id"
}
{
"action":"activate_cables_transceivers_fw",
"object_ids": ["switches"],
"object_type":"Group",
"description":"",
"identifier":"id"
}
•
Status Codes:
•
202 - Accepted
•
400 - bad request (bad or missing parameters)
•
404 - not found.
4.8.5 Get Active Firmware Versions
•
Description - This API will return a dictionary of active FW versions transceivers for the given
list of devices, each active FW version transceiver will provide the following:
•
list of uploaded binary images that are compatible for FW version transceiver.
•
list of devices that have the above transceiver FW version active on them.
•
Request URL - POST /ufmRest/app/images/cables/fw_versions
•
Request Content Type - Application/json
•
Request Data:
•
Example one:
{
"object_ids": ["0c42a1030079a66c", "248a0703008a850a"],
"object_type":"System"
}
•
Example two:
{
"object_ids": ["Devices"],
"object_type":"Group"
}
• Response -
{
"38.100.057": {
"supported_images": [
"hercules2-38_100_059.bin",
"hercules2-38_100_057.bin"
],
"transceiver_type": "Hercules2",
"devices": [
{
41
"system_name": "sw-ufm-qm01",
"guid": "0x0c42a1030079a66c",
"ip": "10.209.224.32"
},
{
"system_name": "r-ufm77",
"guid": "0x248a0703008a850a",
"ip": "11.4.3.175"
}
]
},
"38.100.059": {
"supported_images": [
"hercules2-38_100_059.bin",
"hercules2-38_100_057.bin"
],
"transceiver_type": " Bagheera ",
"devices": [
{
"system_name": "sw-ufm-qm01",
"guid": "0x0c42a1030079a66c",
"ip": "10.209.224.32"
},
{
"system_name": "r-ufm77",
"guid": "0x248a0703008a850a",
"ip": "11.4.3.175"
}
]
},
"46.120.00348": {
"supported_images": [
"sec_issu_46_120_00348_dev_signed.bin"
],
"transceiver_type": " Louie_did ",
"devices": [
{
"system_name": "sw-ufm-qm01",
"guid": "0x0c42a1030079a66c",
"ip": "10.209.224.32"
},
{
"system_name": "r-ufm77",
"guid": "0x248a0703008a850a",
"ip": "11.4.3.175"
}
]
}
}
•
Status Codes:
•
202 - Accepted
•
400 - bad request (bad or missing parameters)
•
404 - not found.
4.9 Disable/Enable/Reset Ports
•
Description - allows users to performs the following actions on ports: enable, disable, and
reset
•
Request URL - POST /ufmRest/actions
•
Request Content Type - application/json
•
Request Data
{
"params": {
"port_id": "port_name"
},
"action": "enable,disable,reset",
"object_ids": [
"system_guid"
],
"object_type": "System",
"description": " description",
"identifier": "id"
}
•
Response - the HTTP Response Location Header will contain URI with job ID created for
running the action
•
Status Codes
•
202 - accepted. Job ID created successfully.
• 400 - bad request (bad or missing parameters)
42
4.10 In-Band FW Upgrade
•
Description - allows users to run in-band FW upgrade in UFM.
•
Request URL - POST /ufmRest/actions
•
Request Content Type - application/json
•
Request Data
{
"action": "fw_upgrade",
"identifier": "id",
"object_ids": ["<system1_id>", "<system2_id>"]/["group_id"],
"object_type": "System"/"Group",
"params": {
"protocol": "inband",
},
"description": "<description>"
}
•
Notes
•
FW images should be placed under /opt/ufm/files/userdata/fw/<PSID> where the PSID
is the PSID of the device.
•
This action is supported for both switches and hosts. Job will be successfully
completed after the upgrade procedure on the switch has successfully finished. After
the upgrade, the following actions should be performed:
•
For hosts - restart the openibd driver
•
For switches - restart the switch
•
Status Codes
•
202 - accepted. Job ID created successfully.
•
400 - bad request (bad or missing parameters)
4.11 Collect System Dump
•
Description - allows users to collect system dump for switchs/hosts/groups/links in the fabric
•
Request URL - POST /ufmRest/actions
•
Request Content Type - Application/json
•
Request Data Example -
•
For the hosts, switches, and groups
{
"action": "collect_system_dump",
"identifier": "id",
"object_ids": ["<system1_id>","<system2_id>"]/["group_id"],
"object_type": "System"/"Group",
"description": "<description>"
}
•
For the link - POST /ufmRest/resources/links/collect_system_dump
{link_name: "<link_name>"}
•
Notes
•
This action used predefine-profile to save the collect system file
•
This action is supported for switches/hosts/groups/links (it will collect system
dump for the endpoints of the link). The job is successfully complete after the
generated system dump is saved in the external storage.
• The user can configure the external storage using the REST API for the profile
43
•
Status Codes
•
202 - accepted, job ID created successfully
•
400 - bad request (bad or missing parameters)
•
404 - host/systems not found
4.11.1 Collect System Dump Profile API
•
Description - allows users to set remote locatino profile and external storage for System
dump operation and IBDiagnet reports.
•
Request URL - PUT /ufmRest/app/profile/system_dump
•
Request Content Type - Application/json
•
Request Data
{protocol: "scp/sftp", server: "<server>", path: “<path>", username: "<username>", password: "<password>"}
•
Status Codes
•
200 - updated successfully
•
400 - bad request (bad or missing parameters)
4.12 Mark Device as Unhealthy
•
Description - Mark device as unhealthy.
•
Request URL -POST /ufmRest/actions
•
Response - redirect to job id
Payload:
{
"params": {
“action”: “isolate” or “no_discover”,
“device_policy”: UNHEALTHY”
}
“action”: “mark_device_unhealthy”,
“object_ids”:<Array of devices guid>,
“object_type”: “System”,
“identifier”:”id”
}
•
Status Codes
•
200 - OK
•
404 - NOT FOUND
4.13 Mark Device as Healthy
•
Description - Mark device as healthy.
•
Request URL - POST ufmRestV2/actions.
•
Payload:
{
"params": {
“device_policy”: “HEALTHY”
}
“action”:” mark_device_healthy”,
“object_ids”:<Array of devices guid>,
“object_type”: “System”,
“identifier”:”id”
}
• Response - redirect to job id
44
•
Status Codes
•
200 - OK
• 404 - NOT FOUND
45
5 Mirroring REST API
•
Description - allows performing mirroring actions on ports of FDR, HDR, QDR, and EDR
Mellanox switches
•
Request URL - /ufmRest/app/mirrorings
•
Main Operations
•
Create a mirroring template
•
Update a mirroring template
•
Get a mirroring template
•
Delete a mirroring template
•
Port mirroring action
5.1 Create Mirroring Template
•
Description - allows users to create a mirroring template that will be later applied on a
specific port
•
Request URL - POST /ufmRest/app/mirrorings
•
Request Content Type - application/json
•
Request Data
{
"system_id": "<system_id>",
"target_port": "<target_port_id>",
"packet_size":"<packet_size>",
"service_level":"<service_level>"
}
•
Status Codes
•
200 - mirroring template created successfully
•
400 - bad request (bad or missing parameters)
5.2 Update Mirroring Template
•
Description - allows users to update an existing mirroring template
•
Request URL - PUT /ufmRest/app/mirrorings
•
Request Content Type - application/json
•
Request Data
{
"system_id": "<system_id>",
"target_port": "<target_port_id>",
"packet_size":"<packet_size>",
"service_level":"<service_level>"
}
•
Status Codes
•
200 - mirroring template created successfully
•
400 - bad request (bad or missing parameters)
5.3 Get Mirroring Template
•
Description - retrieves information on an existing mirroring template using system ID
• Request URL - GET /ufmRest/app/mirrorings/<system_id>
46
•
Request Content Type - application/json
•
Request Data
{
"target_port": {
"number": 9,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903000e0b73_1",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"guid": "e41d2d0300167ee0",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"severity": "Minor",
"logical_state": "Armed",
"capabilities": [
"enable",
"reset"
],
"active_speed": "10.0 Gbps",
"lid": 10,
"description": "Switch IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "e41d2d0300167ee0",
"tier": 4,
"path": "default(2) / Switch: r-ufm-sw63 / NA / 9",
"name": "e41d2d0300167ee0_9",
"active_width": "4x",
"dname": "9",
"mtu": 4096,
"external_number": 9
},
"packet_size":200,
"service_level":5
}
•
Status Codes
•
200 - mirroring template created successfully
•
400 - bad request (bad or missing parameters)
5.4 Delete Mirroring Template
•
Description - allows users to delete an existing mirroring template using system ID
•
Request URL - DELETE /ufmRest/app/mirrorings/<system_id>
•
Request Content Type - application/json
•
Status Codes
•
200 - mirroring template created successfully
•
400 - bad request (bad or missing parameters)
5.5 Port Mirroring Action
•
Description - allows users to perform the mirroring action on a specific port
•
Request URL - POST /ufmRest/app/mirrorings/action
•
Request Content Type - application/json
• Request Data
47
{
"port_id": "<port_id>",
"action": "enable,disable",
"rx": true,false,
"tx": true,false
}
•
Status Codes
•
200 - mirroring template created successfully
• 400 - bad request (bad or missing parameters)
48
6 Fabric Discovery Refresh REST API
•
Description - this action should be run after setting the node description, in order to notify
OpenSM of this change
•
Request URL - POST /ufmRest/actions/fabric_discovery_refresh
•
Request Data - N/A
•
Status Codes
• 202 - accepted
49
7 Jobs REST API
•
Description - these interfaces allow users to retrieve various sorts of jobs data in UFM
•
Request URL - /ufmRest/jobs
•
Main Operations
Operation
Request URL
All jobs
GET /ufmRest/jobs
Specific jobs
GET /ufmRest/jobs/<List of JobIDs>*
Job information
GET /ufmRest/jobs/job-id/info
Job information in JSON
GET /ufmRest/jobs/job-id/info?type=full_json
Sub jobs of a specific job
GET /ufmRest/jobs/job_Id?advanced_information=true
Parent jobs only
GET /ufmRest/jobs?parent_id=null
Jobs for system
GET /ufmRest/jobs?object_ids=<list_of_systems>*
Jobs for operation
GET /ufmRest/jobs?operation=operation_name
Jobs with a specific status
GET /ufmRest/jobs?status=job_status
Update job status
PUT /ufmrest/jobs/status=Aborted
Delete a job
DELETE /ufmRest/jobs/<job-id>
Abort all jobs
POST /ufmRest/jobs/abortall
*Values are separated with commas. e.g.1,2,3
•
Request Data - N/A
•
Response Example
{
"Status": "Completed",
"Foreground": true,
"Description": " Shows SNMP settings and status",
"RelatedObjects": ["10.209.36.140"],
"Created": "2017-04-25 14:50:29",
"LastUpdated": "2017-04-25 14:50:36",
"Summary": "show snmp\n\nSNMP enabled: yes\nSNMP port: 161\nSystem contact: \nSystem
location:
\n\nRead-only communities:\n public\n\nRead-write communities:\n (none)\n\nInterface
listen
enabled: yes\nNo Listen Interfaces.\n",
"CreatedBy": "admin",
"Progress": 100,
JobsRESTAPIRev5.9MellanoxTechnologies35Note: Ifaninvalidoranon-
existingsystemorjobIDwerespecified,
anemptylistwillbereturned."Operation": "Provisioning",
"ID": "1.1"
}
If an invalid or a non-existing system or job ID were specified, an empty list is
returned.
•
Status Codes
•
200 - successful operation
• 404 - not found
50
8 Systems REST API
•
Description - returns information about all or a specific system
•
Request URL - GET /ufmRest/resources/systems
•
Main Operations
•
Get all systems
•
Get a system by name
•
Get a system by IP
•
Get system/s with modules
•
Get system/s with ports
•
Set manual IP for system
•
Set manual name for system
8.1 Get All Systems
•
Description - lists all systems in the fabric. Systems can be filtered using the filters listed in
the table below
•
Request URL - GET /ufmRest/resources/systems
•
Request Content Type - Application/json
•
Possible Filters - optional request parameters that can be used as filters:
Parameter
Value
Description
ip
System IP address
brief
true
Provides a brief response with essential
information only (also available for Get All
Ports REST API)
type
switch/host/gateway/router
Get all switches/hosts
model
e.g. MSB7700
Specific model of a switch
role
core/tor/endpoint
•
core - switch connected to
another switch
•
tor - switch connected to a host
•
endpoint - host
peer_name
<device name>, device name>
List of peer devices, comma separated
chassis
true/false
•
true - detailed modules
description
•
false - module names only
ports
true/false
•
true - detailed port description
•
false - port names only
in_rack
true/false
•
true - gets all systems that
belong to rack
•
false - gets all systems that do
not belong to any rack
computes
allocated/free
Returns all the systems that are allocated or
not allocated to logical servers.
•
Response
51
[
{
"cpus_number": 0,
"ip": "2.2.2.2",
"ram": 0,
"fw_version": "2.42.5000",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_1090120019",
"guid": "0002c9030021f970",
"severity": "Info",
"script": "N/A",
"capabilities": [
"ssh",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "activeSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "HA_Active",
"groups": [
"Hosts"
],
"total_alarms": 0,
"temperature": "N/A",
"uptime": "N/A",
"system_name": "r-dmz-ufm134",
"sw_version": "N/A",
"system_guid": "0002c9030021f973",
"name": "0002c9030021f970",
"url": "",
"modules": [
"0002c9030021f970_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"0002c9030021f972_2",
"0002c9030021f971_1"
]
},
{
"cpus_number": 0,
"ip": "10.209.37.228",
"ram": 0,
"fw_version": "12.25.1020",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_2190110032",
"guid": "248a0703002e6292",
"severity": "Info",
"script": "N/A",
"capabilities": [
"reboot",
"ssh",
"fw_inband_upgrade",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"uptime": "N/A",
"system_name": "r-dmz-ufm139",
"sw_version": "N/A",
"system_guid": "248a0703002e6292",
"name": "248a0703002e6292",
"url": "",
"modules": [
"248a0703002e6292_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"248a0703002e6293_2",
"248a0703002e6292_1"
]
},
{
"cpus_number": 0,
"ip": "10.209.37.154",
"ram": 0,
52
"fw_version": "16.27.2026",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_0000000008",
"guid": "98039b030000e456",
"severity": "Info",
"script": "script_name",
"capabilities": [
"reboot",
"ssh",
"fw_inband_upgrade",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dmz-ufm128",
"sw_version": "N/A",
"system_guid": "98039b030000e456",
"name": "98039b030000e456",
"modules": [
"98039b030000e456_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"98039b030000e456_1"
]
},
{
"cpus_number": 0,
"ip": "10.215.30.1",
"ram": 0,
"fw_version": "16.27.2008",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_0000000008",
"guid": "b8599f03000a77d0",
"severity": "Info",
"script": "N/A",
"capabilities": [
"reboot",
"ssh",
"fw_inband_upgrade",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dcs96",
"sw_version": "N/A",
"system_guid": "b8599f03000a77d0",
"name": "b8599f03000a77d0",
"url": "",
"modules": [
"ec0d9a03007d7d0a_0_00",
"b8599f03000a77d0_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"ec0d9a03007d7d0b_2",
"b8599f03000a77d1_2",
"ec0d9a03007d7d0a_1",
"b8599f03000a77d0_1"
]
},
{
"cpus_number": 0,
"ip": "fcfc:fcfc:209:36:225:90ff:fe4e:2364",
"ram": 0,
"fw_version": "2.42.5000",
"mirroring_template": false,
"cpu_speed": 0,
53
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_1090120019",
"guid": "0002c90300455bc0",
"severity": "Info",
"script": "N/A",
"capabilities": [
"ssh",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "hasSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "HA_StandBy",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dmz-ufm131",
"sw_version": "N/A",
"system_guid": "0002c90300455bc3",
"name": "0002c90300455bc0",
"url": "",
"modules": [
"0002c90300455bc0_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"0002c90300455bc2_2",
"0002c90300455bc1_1"
]
},
{
"cpus_number": 0,
"ip": "fcfc:fcfc:209:36:268a:7ff:fea0:5234",
"ram": 0,
"fw_version": "15.2000.2046",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "EDR",
"psid": "MT_2630110032",
"guid": "248a070300f88fe0",
"severity": "Info",
"script": "N/A",
"capabilities": [
"ssh",
"sysinfo",
"reboot",
"mirroring",
"sw_upgrade",
"Provisioning"
],
"state": "active",
"role": "tor",
"type": "switch",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "MSB7800",
"has_ufm_agent": false,
"server_operation_mode": "Switch",
"groups": [
"1U_Switches",
"Switches"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "switch-ec4034",
"sw_version": "3.8.1991-02-X86_64",
"system_guid": "248a070300f88fe0",
"name": "248a070300f88fe0",
"url": "",
"modules": [
"248a070300f88fe8"
],
"cpu_type": "any",
"is_managed": true,
"model": "MSB7800",
"ports": [
"248a070300f88fe0_31",
"248a070300f88fe0_32",
"248a070300f88fe0_6",
"248a070300f88fe0_1",
"248a070300f88fe0_9",
"248a070300f88fe0_19",
"248a070300f88fe0_23",
"248a070300f88fe0_20"
]
},
{
"cpus_number": 0,
"ip": "fcfc:fcfc:209:36:225:90ff:fe84:83c4",
"ram": 0,
"fw_version": "12.26.1040",
54
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_2190110032",
"guid": "248a0703002e628e",
"severity": "Info",
"script": "N/A",
"capabilities": [
"reboot",
"ssh",
"fw_inband_upgrade",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dmz-ufm135",
"sw_version": "N/A",
"system_guid": "248a0703002e628e",
"name": "248a0703002e628e",
"url": "",
"modules": [
"248a0703002e628e_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"248a0703002e628e_1",
"248a0703002e628f_2"
]
},
{
"cpus_number": 0,
"ip": "0.0.0.0",
"ram": 0,
"fw_version": "N/A",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": false,
"technology": "Device",
"psid": "N/A",
"guid": "0008f10001085600",
"severity": "Info",
"script": "N/A",
"capabilities": [],
"state": "active",
"role": "N/A",
"type": "gateway",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "HAWK",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Gateway_Devices"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "Mellanox 4036E IO 4036E-20FA",
"sw_version": "N/A",
"system_guid": "0008f105002020fa",
"name": "0008f10001085600",
"url": "",
"cpu_type": "any",
"is_managed": true,
"model": "HAWK",
"ports": [
"0008f10001085601_1"
]
},
{
"cpus_number": 0,
"ip": "fcfc:fcfc:209:36:202:c9ff:fe63:744",
"ram": 0,
"fw_version": "9.4.5110",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "FDR",
"psid": "MT_1010210020",
"guid": "0002c903007b78b0",
"severity": "Info",
"script": "N/A",
"capabilities": [
"ssh",
"sysinfo",
"reboot",
"mirroring",
"sw_upgrade",
55
"Provisioning"
],
"state": "active",
"role": "tor",
"type": "switch",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "SX6036",
"has_ufm_agent": false,
"server_operation_mode": "Switch",
"groups": [
"1U_Switches",
"Switches"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dmz-ufm-sw49",
"sw_version": "PPC_M460EX 3.6.8012 2019-02-22 07:53:42 ppc",
"system_guid": "0002c903007b78b0",
"name": "0002c903007b78b0",
"url": "",
"modules": [],
"cpu_type": "any",
"is_managed": true,
"model": "SX6036",
"ports": [
"0002c903007b78b0_29",
"0002c903007b78b0_28",
"0002c903007b78b0_20",
"0002c903007b78b0_25",
"0002c903007b78b0_26",
"0002c903007b78b0_8",
"0002c903007b78b0_9",
"0002c903007b78b0_5",
"0002c903007b78b0_33",
"0002c903007b78b0_17",
"0002c903007b78b0_34",
"0002c903007b78b0_19",
"0002c903007b78b0_30",
"0002c903007b78b0_31"
]
},
{
"cpus_number": 0,
"ip": "10.209.37.224",
"ram": 0,
"fw_version": "12.27.1016",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_2190110032",
"guid": "248a0703002e61da",
"severity": "Info",
"script": "N/A",
"capabilities": [
"reboot",
"ssh",
"fw_inband_upgrade",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dmz-ufm137",
"sw_version": "N/A",
"system_guid": "248a0703002e61da",
"name": "248a0703002e61da",
"url": "",
"modules": [
"248a0703002e61da_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"248a0703002e61db_2",
"248a0703002e61da_1"
]
}
]
• Response with brief flag:
[
{
"description": "server",
"fw_version": "12.16.184",
56
"has_ufm_agent": false,
"guid": "e41d2d03005cf0e0",
"psid": "MT_2190110032",
"server_operation_mode": "Not_UFM_Server",
"state": "active",
"system_guid": "e41d2d03005cf0e0",
"model": "Computer",
"vendor": "Mellanox",
"is_manual_ip": false,
"is_managed": true,
"severity": "Minor",
"groups": [
"Hosts",
"Alarmed_Devices"
],
"technology": "Computer",
"mirroring_template": false,
"system_name": "ufm-host43",
"ip": "0.0.0.0",
"role": "endpoint",
"name": "e41d2d03005cf0e0",
"sw_version": "N\/A",
"capabilities": [
"fw_inband_upgrade"
],
"type": "host",
"ports": [
"e41d2d03005cf0e0_1"
]
}
]
•
Request Examples
•
Get all switches
ufmRest/resources/systems?type=switch
•
Get all hosts
ufmRest/resources/systems?type=host
•
Get all switches of type MSB7700
ufmRest/resources/systems?type=switch&model=MSB7700
•
Get all TORs of switches of type MSB7700
ufmRest/resources/systems?type=switch&model=MSB7700&role=tor
•
Get all devices for peer
ufmRest/resources/systems?peer_name=<name>,<name>, …
•
Status Codes
•
200 - OK
400 - BAD_REQUEST
8.2 Get System by Name
•
Description - lists a specific system using its name
•
Request URL - GET /ufmRest/resources/systems/<system-name>
•
Request Content Type - Application/json
• Response
[
{
"cpus_number": 0,
"ip": "fcfc:fcfc:209:36:268a:7ff:fea0:5234",
"ram": 0,
57
"fw_version": "15.2000.2046",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "EDR",
"psid": "MT_2630110032",
"guid": "248a070300f88fe0",
"severity": "Critical",
"script": "N/A",
"capabilities": [
"ssh",
"sysinfo",
"reboot",
"mirroring",
"sw_upgrade",
"Provisioning"
],
"state": "active",
"role": "tor",
"type": "switch",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "MSB7800",
"has_ufm_agent": false,
"server_operation_mode": "Switch",
"groups": [
"1U_Switches",
"Switches",
"Alarmed_Devices"
],
"total_alarms": 1,
"uptime": "11d 10h 8m 11s",
"temperature": "45",
"system_name": "switch-ec4034",
"sw_version": "3.8.1991-02-X86_64",
"system_guid": "248a070300f88fe0",
"name": "248a070300f88fe0",
"url": "",
"modules": [
"248a070300f88fe0_4001_01",
"248a070300f88fe0_4001_03",
"248a070300f88fe0_4001_02",
"248a070300f88fe0_4001_04",
"248a070300f88fe0_4000_01",
"248a070300f88fe0_2005_01",
"248a070300f88fe0_1007_01",
"248a070300f88fe0_2005_02",
"248a070300f88fe8"
],
"cpu_type": "any",
"is_managed": true,
"model": "MSB7800",
"ports": [
"248a070300f88fe0_31",
"248a070300f88fe0_32",
"248a070300f88fe0_6",
"248a070300f88fe0_1",
"248a070300f88fe0_9",
"248a070300f88fe0_19"
"248a070300f88fe0_23",
"248a070300f88fe0_20"
]
}
]
•
Status Codes
•
200 - OK
•
404 - NOT FOUND-system not found (by name)
8.3 Get System by IP
•
Description - lists a specific system using its IP
•
Request URL - GET /ufmRest/resources/systems?ip=<system-ip>
•
Request Content Type - Application/json
• Response
[
{
"cpus_number": 0,
"ip": "2.2.2.2",
"ram": 0,
"fw_version": "2.42.5000",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_1090120019",
"guid": "0002c9030021f970",
58
"severity": "Info",
"script": "N/A",
"capabilities": [
"ssh",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "activeSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "HA_Active",
"groups": [
"Hosts"
],
"total_alarms": 0,
"uptime": "N/A",
"temperature": "N/A",
"system_name": "r-dmz-ufm134",
"sw_version": "N/A",
"system_guid": "0002c9030021f973",
"name": "0002c9030021f970",
"url": "",
"modules": [
"0002c9030021f970_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
"0002c9030021f972_2",
"0002c9030021f971_1"
]
}
]
•
Status Codes
•
200 - OK
•
400 - BAD REQUEST-IP parameter is not valid
8.4 Get System/s with Modules
•
Description - lists a specific system or all systems with their modules
•
Request URL
GET /ufmRest/resources/systems?chassis=<'true'/'True'/'TRUE'/'t'/'T'>
OR
GET /ufmRest/resources/systems/<system-name>?chassis=<'true'/'True'/'TRUE'/'t'/'T'>
•
Request Content Type - Application/json
•
Notes
•
In order to get information about the modules of one system or all systems, the chassis
request parameter should be specified using one of the following values:
'true'/'True'/'TRUE'/'t'/'T'
•
If you do not wish to view the modules of any system, you can either not specify the
chassis request parameter, or you can specify the parameter using one of the following
values:
'false'/'False'/'FALSE'/'f'/'F'
• Response
[
{
"cpus_number": 0,
"ip": "fcfc:fcfc:209:36:268a:7ff:fea0:5234",
"ram": 0,
"fw_version": "15.2000.2046",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "EDR",
"psid": "MT_2630110032",
"guid": "248a070300f88fe0",
"severity": "Critical",
"script": "N/A",
"capabilities": [
59
"ssh",
"sysinfo",
"reboot",
"mirroring",
"sw_upgrade",
"Provisioning"
],
"state": "active",
"role": "tor",
"type": "switch",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "MSB7800",
"has_ufm_agent": false,
"server_operation_mode": "Switch",
"groups": [
"1U_Switches",
"Switches",
"Alarmed_Devices"
],
"total_alarms": 10,
"uptime": "11d 10h 8m 11s",
"temperature": "46",
"system_name": "switch-ec4034",
"sw_version": "3.8.1991-02-X86_64",
"system_guid": "248a070300f88fe0",
"name": "248a070300f88fe0",
"url": "",
"modules": [
}
"status": "OK",
"psid": "N/A",
"hw_version": "MTEF-FANF-A",
"hw_revision": "N/A",
"name": "248a070300f88fe0_4001_01",
"hca_dev_id": "N/A",
"sw_version": "N/A",
"type": "FAN",
"number_of_chips": 0,
"description": "FAN - 1",
"max_ib_ports": 0,
"module_index": 1,
"hosting_system_guid": "248a070300f88fe0",
"device_type": "Switch",
"serial_number": "MT1704X09072",
"path": "default(7) / Switch: switch-ec4034
/ FAN 1",
"device_name": "switch-ec4034",
"temperature": "N/A",
"severity": "Info"
},
{
"status": "OK",
"psid": "N/A",
"hw_version": "MTEF-FANF-A",
"hw_revision": "A5",
"name": "248a070300f88fe0_4001_03",
"hca_dev_id": "N/A",
"sw_version": "N/A",
"type": "FAN",
"number_of_chips": 0,
"description": "FAN - 3",
"max_ib_ports": 0,
"module_index": 3,
"hosting_system_guid": "248a070300f88fe0",
"device_type": "Switch",
"serial_number": "MT1704X09071",
"path": "default(7) / Switch: switch-ec4034
/ FAN 3",
"device_name": "switch-ec4034",
"temperature": "N/A",
"severity": "Info"
},
{
"status": "OK",
"psid": "N/A",
"hw_version": "MTEF-FANF-A",
"hw_revision": "A5",
"name": "248a070300f88fe0_4001_02",
"hca_dev_id": "N/A",
"sw_version": "N/A",
"type": "FAN",
"number_of_chips": 0,
"description": "FAN - 2",
"max_ib_ports": 0,
"module_index": 2,
"hosting_system_guid": "248a070300f88fe0",
"device_type": "Switch",
"serial_number": "MT1704X09078",
"path": "default(7) / Switch: switch-ec4034
/ FAN 2",
"device_name": "switch-ec4034",
"temperature": "N/A",
"severity": "Info"
},
{
"status": "OK",
"psid": "N/A",
"hw_version": "MTEF-FANF-A",
"hw_revision": "A5",
"name": "248a070300f88fe0_4001_04",
"hca_dev_id": "N/A",
"sw_version": "N/A",
"type": "FAN",
"number_of_chips": 0,
"description": "FAN - 4",
60
"max_ib_ports": 0,
"module_index": 4,
"hosting_system_guid": "248a070300f88fe0",
"device_type": "Switch",
"serial_number": "MT1704X09070",
"path": "default(7) / Switch: switch-ec4034 / FAN 4",
"device_name": "switch-ec4034",
"temperature": "N/A",
"severity": "Info"
},
•
Status Codes
•
200 - OK
•
404 - NOT FOUND when a single system is requested
8.5 Get System/s with Ports
•
Description - lists a specific system or all systems with their active ports
•
Request URL
GET /ufmRest/resources/systems?ports=<'true'/'True'/'TRUE'/'t'/'T'>
or
GET /ufmRest/resources/systems/<system-name>?ports=<'true'/'True'/'TRUE'/'t'/'T'>
•
Request Content Type - Application/json
•
Notes
•
In order to get information about the active ports of one system or all systems, the
ports request parameter should be specified using one of the following values:
'true'/'True'/'TRUE'/'t'/'T'
•
If you do not wish to view the active ports of any system, you can either not specify
the ports request parameter, or you can specify the parameter using one of the
following values:
'false'/'False'/'FALSE'/'f'/'F'
•
Response
[
{
"cpus_number": 0,
"ip": "10.215.30.1",
"ram": 0,
"fw_version": "16.27.2008",
"mirroring_template": false,
"cpu_speed": 0,
"is_manual_ip": true,
"technology": "Computer",
"psid": "MT_0000000008",
"guid": "b8599f03000a77d0",
"severity": "Minor",
"script": "N/A",
"capabilities": [
"reboot",
"ssh",
"fw_inband_upgrade",
"view_configuration"
],
"state": "active",
"role": "endpoint",
"type": "host",
"sm_mode": "noSM",
"vendor": "Mellanox",
"description": "server",
"has_ufm_agent": false,
"server_operation_mode": "Not_UFM_Server",
"groups": [
"Hosts",
"Alarmed_Devices"
],
"total_alarms": 6,
"temperature": "N/A",
"uptime": "N/A",
"system_name": "r-dcs96",
"sw_version": "N/A",
"system_guid": "b8599f03000a77d0",
"name": "b8599f03000a77d0",
"url": "",
"modules": [
"ec0d9a03007d7d0a_0_00",
61
"b8599f03000a77d0_0_00"
],
"cpu_type": "any",
"is_managed": true,
"model": "Computer",
"ports": [
{
"peer_lid": 18,
"number": 2,
"module": "N/A",
"physical_state": "Link Up",
"peer": "248a070300f88fe0_20",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "20",
"guid": "ec0d9a03007d7d0b",
"peer_node_guid": "248a070300f88fe0",
"lid": 4,
"severity": "Minor",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "25.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default(7)/Computer/r-dcs96/HCA-1/2",
"name": "ec0d9a03007d7d0b_2",
"active_width": "4x",
"dname": "HCA-1/2",
"peer_node_name": "switch-ec4034",
"mtu": 4096,
"external_number": 2
},
{
"peer_lid": 11,
"number": 2,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903007b78b0_20",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "20",
"guid": "b8599f03000a77d1",
"peer_node_guid": "0002c903007b78b0",
"lid": 15,
"severity": "Warning",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default(7) / Computer: r-dcs96 / NA / HCA-2/2",
62
"name": "b8599f03000a77d1_2",
"active_width": "4x",
"dname": "HCA-2/2",
"peer_node_name": "r-dmz-ufm-sw49",
"mtu": 4096,
"external_number": 2
},
{
"peer_lid": 18,
"number": 1,
"module": "N/A",
"physical_state": "Link Up",
"peer": "248a070300f88fe0_19",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "19",
"guid": "ec0d9a03007d7d0a",
"peer_node_guid": "248a070300f88fe0",
"lid": 3,
"severity": "Minor",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "25.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default(7)/Computer/r-dcs96/HCA-1/1",
"name": "ec0d9a03007d7d0a_1",
"active_width": "4x",
"dname": "HCA-1/1",
"peer_node_name": "switch-ec4034",
"mtu": 4096,
"external_number": 1
},
{
"peer_lid": 11,
"number": 1,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903007b78b0_19",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "19",
"guid": "b8599f03000a77d0",
"peer_node_guid": "0002c903007b78b0",
"lid": 14,
"severity": "Warning",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
63
"path": "default(7) / Computer: r-dcs96 / NA / HCA-2/1",
"name": "b8599f03000a77d0_1",
"active_width": "4x",
"dname": "HCA-2/1",
"peer_node_name": "r-dmz-ufm-sw49",
"mtu": 4096,
"external_number": 1
}
]
}
]
•
Status Codes
•
200 - OK
•
400 - NOT FOUND
8.6 Set Manual IP for System
•
Description - sets a manual IP address for a selected system
•
Request URL - PUT /ufmRest/resources/systems/<system_id>
•
Request Data
{
"ip": "system_ip"
}
•
Status Codes
•
200 - OK
•
400 - bad request
8.7 Set System URL & Script Attributes
•
Description - sets a value for URL and script attributes of a selected system
•
Request URL - PUT /ufmRest/resources/systems/<system_id>/properties
•
Request Data
{
"script": "script",
"url":"url"
}
•
Status Codes
•
200 - OK
•
400 - bad request
8.8 Set Manual Name for System
•
Description - sets a manual name for a selected system
•
Request URL - PUT /ufmRest/resources/systems/<system_id>
•
Request Data
{
"description": "ufm-system-1"
}
•
Status Codes
•
200 - OK
• 400 - bad request
64
8.9 Get Managed Switches Power Consumption
•
Description - Gets the power consumption for all managed switches in the fabric, in both
JSON and CSV format. If the csv_format parameter is set to true, the output is exported in
CSV format. If set to false, the export is in JSON format.
•
Request URL - GET /ufmRest/resources/systems/power?csv_format=true
•
Response
{
"node_guid": "0c42a1030079a66c",
"sys_image_guid": "0c42a1030079a66c",
"node_description": "MQM8700",
"total_power": "112.12 Watts"
}]
•
Status Codes
•
200 - OK
• 400 - bad request
65
9 Ports REST API
•
Description - returns information about all ports in the fabric, ports of a specific system, or
all active and external ports in the fabric
•
Request URL - GET /ufmRest/resources/ports
•
Main Operations
•
Get all ports
•
Get port/s by name
•
Get all ports of a system
•
Get all active ports
•
Get all external ports
9.1 Get All Ports
•
Description - lists all ports in the fabric
•
Request URL - GET /ufmRest/resources/ports
•
Request Content Type - Application/json
• Response - Get all ports by system type (/ufmRest/resources/ports?sys_type=Switch).
[
{
"description": "Switch IB Port",
"number": 33,
"external_number": 33,
"physical_state": "Link Up",
"path": "default \/ Switch: r-dmz-ufm-sw49 \/ NA \/ 33",
"tier": 4,
"lid": 8,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable",
"get_cables_info"
],
"mtu": 4096,
"peer_port_dname": "HCA-1\/1",
"severity": "Info",
"active_speed": "FDR",
"enabled_speed": [
"SDR",
"DDR",
"QDR",
"FDR"
],
"supported_speed": [
"SDR",
"DDR",
"QDR",
"FDR"
],
"active_width": "4x",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"dname": "33",
"peer_node_name": "r-dmz-ufm131",
"peer": "0c42a103008b3bd0_1",
"peer_node_guid": "0c42a103008b3bd0",
"systemID": "0002c903007b78b0",
"node_description": "r-dmz-ufm-sw49:33",
"name": "0002c903007b78b0_33",
"module": "N\/A",
"peer_lid": 9,
"peer_guid": "0c42a103008b3bd0",
"peer_node_description": "r-dmz-ufm131 HCA-1",
"guid": "0002c903007b78b0"
},
{
"description": "Switch IB Port",
"number": 30,
"external_number": 30,
"physical_state": "Link Up",
"path": "default \/ Switch: r-dmz-ufm-sw49 \/ NA \/ 30",
66
"tier": 4,
"lid": 8,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable",
"get_cables_info"
],
"mtu": 4096,
"peer_port_dname": "HCA-1\/2",
"severity": "Info",
"active_speed": "FDR",
"enabled_speed": [
"SDR",
"DDR",
"QDR",
"FDR"
],
"supported_speed": [
"SDR",
"DDR",
"QDR",
"FDR"
],
"active_width": "4x",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"dname": "30",
"peer_node_name": "r-dmz-ufm137",
"peer": "248a0703002e61db_2",
"peer_node_guid": "248a0703002e61da",
"systemID": "0002c903007b78b0",
"node_description": "r-dmz-ufm-sw49:30",
"name": "0002c903007b78b0_30",
"module": "N\/A",
"peer_lid": 16,
"peer_guid": "248a0703002e61db",
"peer_node_description": "r-dmz-ufm137 mlx5_1",
"guid": "0002c903007b78b0"
},
{
"description": "Switch IB Port",
"number": 23,
"external_number": 23,
"physical_state": "Link Up",
"path": "default \/ Switch: r-ufm-sw95 \/ NA \/ 23",
"tier": 4,
"lid": 18,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable",
"get_cables_info"
],
"mtu": 4096,
"peer_port_dname": "HCA-1\/1",
"severity": "Info",
"active_speed": "EDR",
"enabled_speed": [
"SDR",
"EDR",
"HDR"
],
"supported_speed": [
"SDR",
"EDR",
"HDR"
],
"active_width": "4x",
"enabled_width": [
"1x",
"2x",
"4x"
],
"supported_width": [
"1x",
"2x",
"4x"
],
"dname": "23",
"peer_node_name": "r-dcs96",
"peer": "ec0d9a03007d7d0a_1",
"peer_node_guid": "ec0d9a03007d7d0a",
"systemID": "b8599f0300fc6de4",
"node_description": "r-ufm-sw95:23",
"name": "b8599f0300fc6de4_23",
"module": "N\/A",
"peer_lid": 6,
"peer_guid": "ec0d9a03007d7d0a",
"peer_node_description": "r-dcs96 HCA-1",
"guid": "b8599f0300fc6de4"
},
{
67
"description": "Switch IB Port",
"number": 28,
"external_number": 28,
"physical_state": "Link Up",
"path": "default \/ Switch: r-dmz-ufm-sw49 \/ NA \/ 28",
"tier": 2,
"lid": 8,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable",
"get_cables_info"
],
"mtu": 4096,
"peer_port_dname": "29",
"severity": "Info",
"active_speed": "FDR",
"enabled_speed": [
"SDR",
"DDR",
"QDR",
"FDR"
],
"supported_speed": [
"SDR",
"DDR",
"QDR",
"FDR"
],
"active_width": "4x",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"dname": "28",
"peer_node_name": "r-dmz-ufm-sw49",
"peer": "0002c903007b78b0_29",
"peer_node_guid": "0002c903007b78b0",
"systemID": "0002c903007b78b0",
"node_description": "r-dmz-ufm-sw49:28",
"name": "0002c903007b78b0_28",
"module": "N\/A",
"peer_lid": 8,
"peer_guid": "0002c903007b78b0",
"peer_node_description": "r-dmz-ufm-sw49:29",
"guid": "0002c903007b78b0"
}...
• Response with brief flag (/ufmRest/resources/ports?
brief=true&active=true&page_number=1&rpp=10&sorting=system_name[asc],dname[as
c])
{
"total_resources": 30,
"filtered_resources": 28,
"num_of_pages": 3,
"first_index": 1,
"last_index": 10,
"data": [
{
"system_name": "r-dcs96",
"system_ip": "0.0.0.0",
"peer_ip": "0.0.0.0",
"lid": 6,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable"
],
"mtu": 4096,
"peer_port_dname": "23",
"severity": "Info",
"active_speed": "EDR",
"enabled_speed": [
"SDR",
"DDR",
"QDR",
"FDR",
"EDR"
],
"supported_speed": [
"SDR",
"DDR",
"QDR",
"FDR",
"EDR"
],
"active_width": "4x",
"enabled_width": [
68
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"dname": "HCA-1/1",
"peer_node_name": "r-ufm-sw95",
"peer": "b8599f0300fc6de4_23",
"peer_node_guid": "b8599f0300fc6de4",
"systemID": "ec0d9a03007d7d0a",
"node_description": "r-dcs96 HCA-1",
"name": "ec0d9a03007d7d0a_1",
"module": "N/A",
"peer_lid": 18,
"peer_guid": "b8599f0300fc6de4",
"peer_node_description": "r-ufm-sw95:23",
"guid": "ec0d9a03007d7d0a",
"system_capabilities": [
"fw_inband_upgrade"
],
"system_mirroring_template": false
},
{
"system_name": "r-dcs96",
"system_ip": "0.0.0.0",
"peer_ip": "0.0.0.0",
"lid": 3,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable"
],
"mtu": 4096,
"peer_port_dname": "24",
"severity": "Info",
"active_speed": "EDR",
"enabled_speed": [
"SDR",
"DDR",
"QDR",
"FDR",
"EDR"
],
"supported_speed": [
"SDR",
"DDR",
"QDR",
"FDR",
"EDR"
],
"active_width": "4x",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"dname": "HCA-1/2",
"peer_node_name": "r-ufm-sw95",
"peer": "b8599f0300fc6de4_24",
"peer_node_guid": "b8599f0300fc6de4",
"systemID": "ec0d9a03007d7d0a",
"node_description": "r-dcs96 HCA-2",
"name": "ec0d9a03007d7d0b_2",
"module": "N/A",
"peer_lid": 18,
"peer_guid": "b8599f0300fc6de4",
"peer_node_description": "r-ufm-sw95:24",
"guid": "ec0d9a03007d7d0b",
"system_capabilities": [
"fw_inband_upgrade"
],
"system_mirroring_template": false
},
{
"system_name": "r-dcs96",
"system_ip": "0.0.0.0",
"peer_ip": "0.0.0.0",
"lid": 11,
"mirror": "disable",
"logical_state": "Active",
"capabilities": [
"healthy_operations",
"reset",
"disable"
],
"mtu": 4096,
"peer_port_dname": "19",
"severity": "Info",
"active_speed": "FDR",
"enabled_speed": [
"SDR",
"DDR",
"QDR",
"FDR",
"EDR"
],
69
"supported_speed": [
"SDR",
"DDR",
"QDR",
"FDR",
"EDR"
],
"active_width": "4x",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"dname": "HCA-2/1",
"peer_node_name": "r-dmz-ufm-sw49",
"peer": "0002c903007b78b0_19",
"peer_node_guid": "0002c903007b78b0",
"systemID": "ec0d9a03007d7d0a",
"node_description": "r-dcs96 HCA-3",
"name": "b8599f03000a77d0_1",
"module": "N/A",
"peer_lid": 8,
"peer_guid": "0002c903007b78b0",
"peer_node_description": "r-dmz-ufm-sw49:19",
"guid": "b8599f03000a77d0",
"system_capabilities": [
"fw_inband_upgrade"
],
"system_mirroring_template": false
}...
•
Status Codes
•
200 - OK
9.2 Get Port/s by Name
•
Description - get specific port/s using their names
•
Request URL - GET /ufmRest/resources/ports/<port-name1>,<port-name2>,…
•
Request Content Type - Application/json
• Response
[
{
"peer_lid": 6,
"number": 9,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c9030021f972_2",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "HCA-1/2",
"guid": "0002c903007b78b0",
"peer_node_guid": "0002c9030021f970",
"lid": 11,
"severity": "Info",
"logical_state": "Active",
"capabilities": [],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Switch IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps"
],
"systemID": "0002c903007b78b0",
"tier": 4,
"path": "default / Switch: r-dmz-ufm-sw49 / NA / 9",
"name": "0002c903007b78b0_9",
"active_width": "4x",
"dname": "9",
"peer_node_name": "r-dmz-ufm134",
"mtu": 4096,
"external_number": 9
},
70
{
"peer_lid": 18,
"number": 2,
"module": "N/A",
"physical_state": "Link Up",
"peer": "248a070300f88fe0_20",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "20",
"guid": "ec0d9a03007d7d0b",
"peer_node_guid": "248a070300f88fe0",
"lid": 4,
"severity": "Info",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "25.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default / Computer: r-dcs96 / NA / HCA-1/2",
"name": "ec0d9a03007d7d0b_2",
"active_width": "4x",
"dname": "HCA-1/2",
"peer_node_name": "switch-ec4034",
"mtu": 4096,
"external_number": 2
}
]
•
Code Status
•
200 - OK
•
404 - NOT FOUND-port not found (by name)
9.3 Get All System Ports
•
Description - lists all ports of a specific system
•
Request URL - GET /ufmRest/resources/ports?system=<system-name>
•
Request Content Type - Application/json
• Response
[
{
"peer_lid": 18,
"number": 2,
"module": "N/A",
"physical_state": "Link Up",
"peer": "248a070300f88fe0_20",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "20",
"guid": "ec0d9a03007d7d0b",
"peer_node_guid": "248a070300f88fe0",
"lid": 4,
"severity": "Info",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
71
"disable"
],
"active_speed": "25.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default / Computer: r-dcs96 / NA / HCA-1/2",
"name": "ec0d9a03007d7d0b_2",
"active_width": "4x",
"dname": "HCA-1/2",
"peer_node_name": "switch-ec4034",
"mtu": 4096,
"external_number": 2
},
{
"peer_lid": 11,
"number": 2,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903007b78b0_20",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "20",
"guid": "b8599f03000a77d1",
"peer_node_guid": "0002c903007b78b0",
"lid": 15,
"severity": "Info",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default / Computer: r-dcs96 / NA / HCA-2/2",
"name": "b8599f03000a77d1_2",
"active_width": "4x",
"dname": "HCA-2/2",
"peer_node_name": "r-dmz-ufm-sw49",
"mtu": 4096,
"external_number": 2
},
{
"peer_lid": 18,
"number": 1,
"module": "N/A",
"physical_state": "Link Up",
"peer": "248a070300f88fe0_19",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "19",
"guid": "ec0d9a03007d7d0a",
"peer_node_guid": "248a070300f88fe0",
"lid": 3,
"severity": "Info",
"logical_state": "Active",
"capabilities": [
"reset",
72
"healthy_operations",
"disable"
],
"active_speed": "25.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default / Computer: r-dcs96 / NA / HCA-1/1",
"name": "ec0d9a03007d7d0a_1",
"active_width": "4x",
"dname": "HCA-1/1",
"peer_node_name": "switch-ec4034",
"mtu": 4096,
"external_number": 1
},
{
"peer_lid": 11,
"number": 1,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903007b78b0_19",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "19",
"guid": "b8599f03000a77d0",
"peer_node_guid": "0002c903007b78b0",
"lid": 14,
"severity": "Info",
"logical_state": "Active",
"capabilities": [
"reset",
"healthy_operations",
"disable"
],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps",
"25.0 Gbps"
],
"systemID": "b8599f03000a77d0",
"tier": 1,
"path": "default / Computer: r-dcs96 / NA / HCA-2/1",
"name": "b8599f03000a77d0_1",
"active_width": "4x",
"dname": "HCA-2/1",
"peer_node_name": "r-dmz-ufm-sw49",
"mtu": 4096,
"external_number": 1
}
]
•
Code Status
•
200 - OK
9.4 Get All Active Ports
•
Description - lists all active ports of a specific system, or for all systems
• Request URL
GET /ufmRest/resources/ports?active=<'true'/'True'/'TRUE'/'t'/'T'>
or
73
GET /ufmRest/resources/ports?system=<system-
name>&active=<'true'/'True'/'TRUE'/'t'/'T'>
• Request Content Type - Application/json
• Response
[
{
"peer_lid": 11,
"number": 2,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903007b78b0_9",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "9",
"guid": "0002c9030021f972",
"peer_node_guid": "0002c903007b78b0",
"lid": 6,
"severity": "Info",
"logical_state": "Active",
"capabilities": [],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps"
],
"systemID": "0002c9030021f970",
"tier": 1,
"path": "default / Computer: r-dmz-ufm134 / NA / HCA-1/2",
"name": "0002c9030021f972_2",
"active_width": "4x",
"dname": "HCA-1/2",
"peer_node_name": "r-dmz-ufm-sw49",
"mtu": 4096,
"external_number": 2
},
{
"peer_lid": 11,
"number": 1,
"module": "N/A",
"physical_state": "Link Up",
"peer": "0002c903007b78b0_8",
"enabled_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps"
],
"mirror": "disable",
"peer_port_dname": "8",
"guid": "0002c9030021f971",
"peer_node_guid": "0002c903007b78b0",
"lid": 1,
"severity": "Info",
"logical_state": "Active",
"capabilities": [],
"active_speed": "14.0 Gbps",
"enabled_width": [
"1x",
"4x"
],
"supported_width": [
"1x",
"4x"
],
"description": "Computer IB Port",
"supported_speed": [
"2.5 Gbps",
"5.0 Gbps",
"10.0 Gbps",
"14.0 Gbps"
],
"systemID": "0002c9030021f970",
"tier": 1,
"path": "default / Computer: r-dmz-ufm134 / NA / HCA-1/1",
"name": "0002c9030021f971_1",
"active_width": "4x",
"dname": "HCA-1/1",
"peer_node_name": "r-dmz-ufm-sw49",
"mtu": 4096,
74
////////////////////////////////////////// |
||
|
|
|