Network protocols
NOTE
It is possible that some properties or resources described in this section are not implemented in iLO 4 and iLO 5.
This section provides information about the network protocols controlled
by HPE iLO.
The exhaustive list of iLO network protocols can be retrieved from the
standard
URI
at /redfish/v1/Managers/1/NetworkProtocol.
Simple Network Management Protocol
HPE iLO supports the Simple Network Management Protocol (SNMP). SNMP traps are generated by Redfish events posted in the iLO Integrated Management Logs (IML). iLO SNMP Object Identifiers (OIDs) are defined in the HPE Systems Insight Manager (SIM) MIB update kit. To cross reference an SNMP trap with REST alerts information, see the REST alerts table in the iLO user guide.
TIP
If you make a mistake in the following iLOrest examples, you can always
delete property changes in the cache, by reloading the a fresh
schema/data-type (ilorest select Schema. --refresh ):
ilorest select Schema.
ilorest set Property="Bad Value"
ilorest select Schema. --refreshSNMP enablement
SNMP enablement is performed by setting the SNMP/ProtocolEnabled property
to true under the Redfish standard ManagerNetworkProtocol
URI.
PATCH /redfish/v1/Managers/1/NetworkProtocol{
"SNMP": {
"ProtocolEnabled": true
}
}ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest select ManagerNetworkProtocol
ilorest set SNMP/ProtocolEnabled=True --commit
ilorest logoutSelected option(s): #ManagerNetworkProtocol.v1_0_0.ManagerNetworkProtocol
Added the following patch:
{
"SNMP/ProtocolEnabled": true
}
Committing changes...
Changes are being made to path: /redfish/v1/Managers/1/NetworkProtocol/
HTTP Response Code: [200]
MessageId: iLO.2.18.ResetRequired
Description: The operation completed successfully.
Message: The operation completed successfully.
Resolution:
iLOrest return code: 0SNMPv1 enablement
SNMPv1 is enabled when the SNMPv1Enabled key is set to true,
under the /redfish/v1/Managers/1/SnmpService URI.
NOTE
An iLO reset is required when a PATCH request is performed on that property.
PATCH /redfish/v1/Managers/1/SnmpService{
"SNMPv1Enabled": true,
"SNMPv1RequestsEnabled" : true,
"SNMPv1TrapEnabled" : true
}ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest set SNMPv1Enabled=False SNMPv1RequestsEnabled=False SNMPv1TrapEnabled=False
ilorest status
ilorest -vv --commit
ilorest iloreset HTTP Response Code: [200]
MessageId: Base.1.4.Success
Description: The operation completed successfully.
Message: The operation completed successfully.
Resolution:
iLOrest return code: 0SNMP configuration
SNMPv3 configuration can only be performed when the SNMP is enabled. SNMPv1 configuration can only be performed when the SNMP and the SNMPv1 are enabled.
SNMP ports configuration
The SNMP default port number (161) can be modified with a PATCH request
of the SNMP/Port property under the Redfish standard
ManagerNetworkProtocol URI.
The SNMP default trap port (162) can be modified with a PATCH
request of the OEM/Hpe/SNMPTrapPort property under
the ManagerNetworkProtocol URI.
PATCH /redfish/v1/Managers/1/NetworkProtocol"SNMP": {
"Port": <integer>
},
"Oem": {
"Hpe": {
"SNMPTrapPort": <integer>
}
}ilorest select ManagerNetworkProtocol.
ilorest set SNMP/Port=4567 Oem/Hpe/SNMPTrapPort=7654
ilorest status
ilorest commit
ilorest iloresetSNMP settings
General SNMP settings can be set in under the HpeiLOSnmpService
URI.
PATCH /redfish/v1/Managers/1/SnmpService{
"Location": "My Location",
"Contact": "Contact Name",
"Role": "My role",
"RoleDetail": "My role details",
"ReadCommunities": [
"communitystring1",
"communitystring2",
"communitystring3"
]
}ilorest select HpeiLOSnmpService.
ilorest set Location="My Location" Contact="Contact Name"
ilorest set Role="My role" RoleDetail="My role details"
ilorest set ReadCommunities=["CommunityString1","CommunityString2","CommunityString3"]
ilorest status
ilorest commit
ilorest iloresetWarning
A space between the elements of the ReadCommunities array leads to the following error:
'[CommunityString1,' is not a valid setting for 'ReadCommunities', expecting an array
SNMPv3 settings
Specific SNMPv3 settings can be provided under the
/redfish/v1/Managers/1/SnmpService
URI.
PATCH /redfish/v1/Managers/1/SnmpService{
"SNMPv3EngineID": "0x8000000001020304",
"SNMPv3InformRetryAttempt": 2,
"SNMPv3InformRetryIntervalSeconds": 15
}ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest select HpeiLOSnmpService.
ilorest set SNMPv3EngineID="0x8000000001020304" SNMPv3InformRetryAttempt=2 SNMPv3InformRetryIntervalSeconds=15
ilorest status
ilorest commit
ilorest iloresetSNMP alerts
SNMP alerts properties can be set under the
/redfish/v1/Managers/1/SnmpService
URI.
The following properties have been added in HpeiLOSnmpService version 2.4.0:
-
SNMPv1RequestsEnabled: Enables/disables (Boolean) iLO to receive external SNMPv1 requests. -
SNMPv1TrapEnabled: Enables/disables (Boolean) iLO to send SNMPv1 traps to the remote management systems configured in the alert destination. -
SNMPv3RequestsEnabled: Enables/disables (Boolean) iLO to receive external SNMPv3 requests. -
SNMPv3TrapEnabled: Enables/disables (Boolean) iLO to send SNMPv3 traps to the remote management systems configured in the alert destination.
NOTE
-
SNMPv1Enabledenables bothSNMPv1RequestsEnabledandSNMPv1TrapEnabled. -
AlertsEnabledenables bothSNMPv1TrapEnabledandSNMPv3TrapEnabled. -
Enabling either
SNMPv1RequestsEnabledorSNMPv1TrapEnabledenablesSNMPv1Enabled. -
Enabling either
SNMPv1TrapEnabledorSNMPv3TrapEnabledenablesAlertsEnabled.
PATCH /redfish/v1/Managers/1/SnmpService{
"TrapSourceHostname": "Manager",
"AlertsEnabled": true,
"SNMPv1Enabled": false,
"Oem": {
"Hpe": {
"SNMPColdStartTrapBroadcast": false
}
},
"PeriodicHSATrapConfig": "Disabled"
}ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest select HpeiLOSnmpService.
ilorest set TrapSourceHostname="Manager"
ilorest set AlertsEnabled=True
ilorest set SNMPv1Enabled=False
ilorest set Oem/Hpe/SNMPColdStartTrapBroadcast=False
ilorest set PeriodicHSATrapConfig="Disabled"
ilorest status
ilorest commit
ilorest resetSNMP alert destinations
Add an SNMP alert destination with a POST request in the
HpeSNMPAlertDestinationCollection URI.
NOTE
-
The
SNMPv1TrapEnabledoption is available whenSNMPv1TrapEnabledis enabled in the SNMP Alerts section. -
The
SNMPv3TrapEnabledoption is available whenSNMPv3TrapEnabledis enabled in the SNMP Alerts section and at least one SNMPv3 user is configured. -
The
SNMPv3Informoption is available when at least one SNMPv3 user is configured.
POST redfish/v1/Managers/1/SnmpService/SNMPAlertDestinations{
"AlertDestination": "192.168.87.41",
"SNMPAlertProtocol": "SNMPv1Trap",
"TrapCommunity": "public"
}SNMPv3 users
SNMPv3 users can be managed under the HpeSNMPUsersCollection
URI.
NOTE
SNMPv3user is available only if the SNMP Protocol is set
to SNMPv3TrapEnabled or SNMPv3Inform.
POST /redfish/v1/Managers/1/SnmpService/SNMPUsers{
"SecurityName": "snmpuser",
"AuthProtocol": "SHA",
"AuthPassphrase": "myauthpassword",
"PrivacyProtocol": "AES",
"PrivacyPassphrase": "myPrivacyPassphrase",
"UserEngineID": "0x8000000001020304"
}ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest select HpeSNMPUsersCollection.
ilorest rawpost SnmpUser.json
ilorest logout
cat SnmpUser.json
{
"/redfish/v1/Managers/1/SnmpService/SNMPUsers": {
"SecurityName": "snmpuser",
"AuthProtocol": "SHA",
"AuthPassphrase": "myauthpassword",
"PrivacyProtocol": "AES",
"PrivacyPassphrase": "myPrivacyPassphrase",
"UserEngineID": "0x8000000001020304" }
}View the collection of SNMPv3 users:
GET /redfish/v1/Managers/1/SnmpService/SNMPUsersilorest login <ilo-ip> -u <ilo-user> -p password
ilorest select HpeSNMPUsersCollection.
ilorest get --json
ilorest logout{
"Description": "SNMPv3 Users Collection view",
"Members": [
{
"@odata.id": "/redfish/v1/Managers/1/SnmpService/SNMPUsers/1/"
},
{
"@odata.id": "/redfish/v1/Managers/1/SnmpService/SNMPUsers/2/"
}
],
"Name": "SNMPv3 User Collection"
}View the properties of all SNMPv3 users:
GET /redfish/v1/Managers/1/SnmpService/SNMPUsers/?$expand=.ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest --silent rawget '/redfish/v1/Managers/1/SnmpService/SNMPUsers/?$expand=.'
ilorest logout{
"@odata.context": "/redfish/v1/$metadata#HpeSNMPUsersCollection.HpeSNMPUsersCollection",
"@odata.etag": "W/\"A4394AAB\"",
"@odata.id": "/redfish/v1/Managers/1/SnmpService/SNMPUsers/",
"@odata.type": "#HpeSNMPUsersCollection.HpeSNMPUsersCollection",
"Description": "SNMPv3 Users Collection view",
"Members": [
{
"@odata.context": "/redfish/v1/$metadata#HpeSNMPUser.HpeSNMPUser",
"@odata.id": "/redfish/v1/Managers/1/SnmpService/SNMPUsers/1/",
"@odata.type": "#HpeSNMPUser.v2_1_0.HpeSNMPUser",
"AuthProtocol": "MD5",
"Id": "1",
"PrivacyProtocol": "DES",
"SecurityName": "test",
"UserEngineID": "0x800000E8044D585137323430375032"
},
{
"@odata.context": "/redfish/v1/$metadata#HpeSNMPUser.HpeSNMPUser",
"@odata.id": "/redfish/v1/Managers/1/SnmpService/SNMPUsers/2/",
"@odata.type": "#HpeSNMPUser.v2_1_0.HpeSNMPUser",
"AuthProtocol": "SHA",
"Id": "2",
"PrivacyProtocol": "AES",
"SecurityName": "snmpuser",
"UserEngineID": "0x8000000001020304"
}
],
"Members@odata.count": 2,
"Name": "SNMPv3 User Collection"
}Delete SNMP user
DELETE /redfish/v1/Managers/1/SnmpService/SNMPUsers/2ilorest rawdelete --silent --response /redfish/v1/Managers/1/SnmpService/SNMPUsers/2Send test alerts
Test alerts can be sent to alert destinations using a POST request towards
HpeiLOSnmpService.SendSNMPTestAlert under the
/redfish/v1/Managers/1/SnmpService
URI with an empty body.
POST /redfish/v1/Managers/1/SnmpService/Actions/HpeiLOSnmpService.SendSNMPTestAlert/{}ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest rawpost TestAlerts.json
ilorest logout
cat TestAlerts.json
{
"/redfish/v1/Managers/1/SnmpService/Actions/HpeiLOSnmpService.SendSNMPTestAlert/": {}
}Intelligent Platform Management Interface
HPE iLO is able to control the use of the Intelligent Platform Management Interface ( IPMI) using the Redfish API.
The following example retrieves the state of IPMI using cURL and iLOrest.
GET /redfish/v1/Managers/1/NetworkProtocol/?$select=IPMIilorest login <ilo-ip> -u <ilo-user> -p password
ilorest get --selector NetworkProtocol. --json
ilorest logoutcurl --insecure --silent --location -u user:password \
'https://ilo-ip/redfish/v1/Managers/1/NetworkProtocol/?$select=IPMI' {
"IPMI": {
"Port": 623,
"ProtocolEnabled": true
}
}Manage the KCS interface feature for HPE iLO
IPMI over Keyboard Controller Style (KCS) enables management of the computer system and monitoring of the operations from within the host Operating System (OS). It is possible to enable or disable KCS for iLO 6 since version 1.40.
The following example enables the KCS interface using iLOrest and cURL.
PATCH /redfish/v1/Managers/1/NetworkProtocol
Workload:
{
"Oem": {
"Hpe":{
"KcsEnabled": true
}
}
}curl --insecure --location --silent -u demopaq:password \
--header 'Content-Type: application/json' \
--request PATCH 'https://ilo-lio365g11-2/redfish/v1/Managers/1/NetworkProtocol/' \
--data '{
"Oem": {
"Hpe":{
"KcsEnabled": true }}
}'ilorest login <ilo-ip> -u <ilo-user> -p password
ilorest get Oem/Hpe/KcsEnabled --json
ilorest set Oem/Hpe/KcsEnabled=True --commit
ilorest logoutIPMI in-band management
In-band management operations can fail or be slow when the IPMI interrupt support is enabled in the HPE Bios service OEM extension of iLO 6 version 1.10 and later. Refer to this customer advisory for more detail.
The following example disables the KcsIpmiInterrupt attribute in the
HPE Bios service subsystem of an HPE iLO 6 based server.
Then it performs a graceful restart of the server.
PATCH /redfish/v1/Systems/1/Bios/Oem/Hpe/Service/Settings
Body:
{
"Attributes": {
"KcsIpmiInterrupt": "Disabled"
}
}POST `/redfish/v1/Systems/1/Actions/ComputerSystem.Reset/`
Body:
{
"ResetType": "GracefulRestart"
}TIP
- More information concerning the HPE Bios service subsystem can be found in the Managing HPE Bios section.
-
After a modification in the BIOS settings (standard or OEM extension) and
the restart of the server, it is a good practice to analyze the
@Redfish.Settingsobject of the current settings area as explained in the Redfish error responses and messages section.