dell / idrac-redfish-scripting Goto Github PK
View Code? Open in Web Editor NEWPython and PowerShell scripting for Dell EMC PowerEdge iDRAC REST API with DMTF Redfish
License: GNU General Public License v2.0
Python and PowerShell scripting for Dell EMC PowerEdge iDRAC REST API with DMTF Redfish
License: GNU General Public License v2.0
While trying to update firmware using DUP via https://downloads.dell.com/FOLDER04610507M/2/BIOS_79GKV_LN_1.2.11_01.BIN for Dell PowerEdge R740, I encountered the following error message -
root@debian:~/testing# python DeviceFirmwareUpdateREDFISH.py -i 10.99.54.23 -u root -p calvin -f BIOS_79GKV_LN_1.2.11_01.BIN
- WARNING, downloading DUP payload to iDRAC
Traceback (most recent call last):
File "update.py", line 222, in <module>
download_image_payload()
File "update.py", line 60, in download_image_payload
req = requests.get('https://%s/redfish/v1/UpdateService/FirmwareInventory/' % (idrac_ip), auth=(idrac_username, idrac_password), verify=False)
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 70, in get
return request('get', url, params=params, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/api.py", line 56, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 488, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 609, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 487, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='-i', port=443): Max retries exceeded with url: /redfish/v1/UpdateService/FirmwareInventory/ (Caused by NewConnectionError('<requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7efc8f637e50>: Failed to establish a new connection: [Errno -2] Name or service not known',))
Looks to me HTTPS certificate issue. Any idea how to fix it?
Tested against multiple Dell R730, iDRAC 8 firmware version 2.60.60.60.
Running the following performs a hard reset which is also confirmed in the Lifecycle logs:
Set-PowerControlREDFISH -idrac_ip $ip -idrac_username $user -idrac_password $pwd -power_request_value GracefulRestart
Running the following correctly performs a Graceful Shutdown which is also confirmed in the Lifecycle logs:
Set-PowerControlREDFISH -idrac_ip $ip -idrac_username $user -idrac_password $pwd -power_request_value GracefulShutdown
Hello,
Are there any plans on the roadmap to enable the autosupport functionality. The equivalent of the command "racadm techsupreport"
Hello,
After some analysis I found the way for configuring new user in IDRAC.
import requests
import json
url = 'https://host-rsc/redfish/v1/Managers/iDRAC.Embedded.1/Accounts/3'
plUserName = {'UserName': 'testuser'}
plPass = {'Password': 'calvin'}
plRoleId = {'RoleId': 'Administrator'}
p1Enabled = {'Enabled':True}
headers = {'content-type': 'application/json'}
for payload in plUserName,plPass,plRoleId, p1Enabled:
response = requests.patch(url, data=json.dumps(payload), headers=headers,verify=False, auth=('root','pass'))
print(response.text)
With this script I can be able to change the username, password, enabled, role.
But now I need to change the LAN, Serial port, Serial over lan values. Please suggest how to find the payload for the same.
I don't find any for the same.
{"@odata.context":"/redfish/v1/$metadata#ManagerAccount.ManagerAccount","@odata.id":"/redfish/v1/Managers/iDRAC.Embedded.1/Accounts/3","@odata.type":"#ManagerAccount.v1_0_2.ManagerAccount","Description":"User Account","Enabled":false,"Id":"3","Links":{"Role":{"@odata.id":"/redfish/v1/Managers/iDRAC.Embedded.1/Roles/Administrator"}},"Locked":false,"Name":"User Account","Password":null,"RoleId":"Administrator","UserName":"testuser"}
Thanks.
Will i have to enable any SSL Features or something?
I can't connect to my new R630 via Redfish.
I was using ExportSystemConfigurationLocalREDFISH.py with python2,7 and python3.6.
Both return SSL Handshake errors
Python3
python3 ExportSystemConfigurationLocalREDFISH.py -ip 192.168.0.120 -u root -p calvin -t ALL
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/contrib/pyopenssl.py", line 436, in wrap_socket
cnx.do_handshake()
File "/usr/lib/python3.6/site-packages/OpenSSL/SSL.py", line 1716, in do_handshake
self._raise_ssl_error(self._ssl, result)
File "/usr/lib/python3.6/site-packages/OpenSSL/SSL.py", line 1449, in _raise_ssl_error
raise SysCallError(-1, "Unexpected EOF")
OpenSSL.SSL.SysCallError: (-1, 'Unexpected EOF')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/connectionpool.py", line 600, in urlopen
chunked=chunked)
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/connectionpool.py", line 345, in _make_request
self._validate_conn(conn)
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/connectionpool.py", line 844, in _validate_conn
conn.connect()
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/connection.py", line 326, in connect
ssl_context=context)
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/util/ssl_.py", line 324, in ssl_wrap_socket
return context.wrap_socket(sock, server_hostname=server_hostname)
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/contrib/pyopenssl.py", line 443, in wrap_socket
raise ssl.SSLError('bad handshake: %r' % e)
ssl.SSLError: ("bad handshake: SysCallError(-1, 'Unexpected EOF')",)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 423, in send
timeout=timeout
File "/usr/lib/python3.6/site-packages/requests/packages/urllib3/connectionpool.py", line 630, in urlopen
raise SSLError(e)
requests.packages.urllib3.exceptions.SSLError: ("bad handshake: SysCallError(-1, 'Unexpected EOF')",)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "ExportSystemConfigurationLocalREDFISH.py", line 44, in <module>
response = requests.post(url, data=json.dumps(payload), headers=headers, verify=False, auth=(idrac_username,idrac_password))
File "/usr/lib/python3.6/site-packages/requests/api.py", line 110, in post
return request('post', url, data=data, json=json, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/api.py", line 56, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 488, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 609, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 497, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: ("bad handshake: SysCallError(-1, 'Unexpected EOF')",)
Python2
python ExportSystemConfigurationLocalREDFISH.py -ip 192.168.0.120 -u root -p calvin -t ALL
Traceback (most recent call last):
File "ExportSystemConfigurationLocalREDFISH.py", line 44, in <module>
response = requests.post(url, data=json.dumps(payload), headers=headers, verify=False, auth=(idrac_username,idrac_password))
File "/usr/lib/python2.7/site-packages/requests/api.py", line 112, in post
return request('post', url, data=data, json=json, **kwargs)
File "/usr/lib/python2.7/site-packages/requests/api.py", line 58, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 508, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python2.7/site-packages/requests/sessions.py", line 618, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python2.7/site-packages/requests/adapters.py", line 506, in send
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='192.168.0.120', port=443): Max retries exceeded with url: /redfish/v1/Managers/iDRAC.Embedded.1/Actions/Oem/EID_674_Manager.ExportSystemConfiguration (Caused by SSLError(SSLError("bad handshake: SysCallError(-1, 'Unexpected EOF')",),))
Hi,
We have C6320s with iDRAC firmware version 2.41.40.40 (Build 07). I'm attempting to test Redfish scripting, and started by trying the BiosGetAttributesREDFISH.py script. I get the following error when running this script,
{u'error': {u'message': {u'lang': u'en-us', u'value': u'failed: Request URI: /redfish/v1/Systems/System.Embedded.1/Bios is invalid'}, u'code': u'1'}}
Traceback (most recent call last):
File "./BiosGetAttributesREDFISH.py", line 65, in
get_bios_attributes()
File "./BiosGetAttributesREDFISH.py", line 53, in get_bios_attributes
for i in data[u'Attributes'].items():
KeyError: u'Attributes'
When I visit the corresponding URL in a browser I see the following,
{
"error": {
"code": "1",
"message": {
"lang": "en-us",
"value": "failed: Request URI: /redfish/v1/Systems/System.Embedded.1/Bios is invalid"
}
}
}
Any insight into the error would be appreciated, we would really like to transition to Redfish for managing our systems.
I see if you fetch: /redfish/v1/Managers/iDRAC.Embedded.1/Logs/Lclog, it will only return a subset of the results with:
@odata.nextLink": "/redfish/v1/Managers/iDRAC.Embedded.1/Logs/Lclog?$skip=50
Is it possible to have it return all of the results in one go or do I have to keep making multiple requests ?
Hi,
I am consuming the redfish api on a dell gen 13.
My server is currently at redfish v1.0.2
I want to access individual DIMM information using /systems/systems.Embedded.1/Memory. Right now, I can just see the Memory Summary in /systems/systems.Embedded.1/. I am guessing the 1.0.2 dosent support /Memory path.
So my question is ->
Is there a resource which I could find which tells me what all paths are supported in what version.
I am also willing to upgrade redfish to 1.6 which is the standard DMTF specifies. So how do I upgrade the redfish version on my dell without touching any other firmware or software on the server.
right now, getting only:
HealthRollUp: OK
State: Enabled
Health: OK
Model : xxxxxxxxxx
Name: Physical Disk 0:1:3
Manufacturer: HGST
How can I check a size?
This should be changed to use idrac_username and idrac_password.
Hi, we are implementing an .NET client to consume Dell Redfish api, it works fine for most functions but returns an error 500 when we try to upload an firmware to Idrac,
We are running the tests on a R740, the Idrac version is 3.21.23.22
here's the code I'm using to upload the file:
`
private async Task<Uri> UploadFile(string path)
{
using (var request = new HttpRequestMessage(HttpMethod.Post, baseUri + FIRMWARE_INVENTORY))
using (var content = new MultipartFormDataContent(Guid.NewGuid().ToString()))
using (var fileContent = new StreamContent(File.Open(path, FileMode.Open)))
{
string etag = await GetHeaderValue("ETag", baseUri + FIRMWARE_INVENTORY);
fileContent.Headers.ContentType = MediaTypeHeaderValue.Parse("application/octet-stream");
request.Headers.Authorization = HttpUtil.GetCredentialHeader(server.User, server.Password);
request.Headers.TryAddWithoutValidation("If-Match", etag);
fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data")
{
Name = "file",
FileName = Path.GetFileName(path).ToLower()
};
content.Add(fileContent);
request.Content = content;
using (HttpResponseMessage response = await client.SendAsync(request))
{
if (!response.IsSuccessStatusCode)
{
throw new HttpRequestException("Falha no upload do arquivo: " + response.ReasonPhrase);
}
return response.Headers.Location;
}
}
}
`
I only find this url "/redfish/v1/Managers//VirtualMedia", how to map/unmap a virtual media though redfish?
Which Redfish API can give the following information
racadm get NIC.DeviceLevelConfig.5
Security Alert: Certificate is invalid - unable to get local issuer certificate
Continuing execution. Use -S option for racadm to stop execution on certificate-related errors.
[Key=NIC.Slot.2-1-1#DeviceLevelConfig]
#INTEL_AdapterPBA=J0000-000
#NParEP=Disabled
#NumberVFSupported=128
#PartitionStateInterpretation=Fixed
#RDMASupport=Unavailable
#SRIOVSupport=Available
#VFAllocBasis=Device
#VFAllocMult=16
VirtualizationMode=SRIOV
I can list the current devices but am unable to set the next boot device, no error.
Using curl works fine with PATCH.
This is on RHEL 7.6
I'm trying to use some of these scripts, but a lot of the redfish paths don't appear to exist on any of my iDRACs (v2.50.50, redfish v1.0.2)?
"failed: Request URI: /redfish/v1/UpdateService is invalid"
Is there any API in Redfish for generating X.509 certificate dynmically. If yes what is the signature of that API and how do we pass input attributes to that?
DeviceFirmwareSimpleUpdateREDFISH.py should use os.path.join to create ImagePath, not inserting a backslash. On a unix system, this produces an invalid path.
That is,
ImagePath = ImageLocation + "\\" + filename
should be:
ImagePath = os.path.join(ImageLocation, filename)
to work on both platforms.
Whilst IDRAC 14Gen web interface can view the switchconnection ID for a network adapter. I am unable to find within the Redfish API an ability to view the switchconnection ID for a network adapter.
Is this possible within redfish.
can't find any explanation about this
Is there any api to fetch the boot process log from the Os running on the baremetal?
Hy Texas,
why did you make to different versions?
Set-ExportImportServerConfigurationProfileNetworkShareREDFISH
Set-ExportServerConfigurationProfileLocalREDFISH
I realy like to get the ExportUse options also in the Local Version as I need this more often while testing stuff.
I did change it for testing, but of course it will be better we can use it out of the box.
$ExportUse = "Clone"
$share_info=@{"ExportFormat"=$ExportFormat;"ExportUse"=$ExportUse;"ShareParameters"=@{"Target"=$Target}}
Thx
I have used ChangeIdracUserPasswordREDFISH.py for creating the script for reset the password in idRac for root user.
We can be able to change the password for first time, But in consecutive attempts it always failing with error.
Getting different errors in different platform , In windows getting error as follows:
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='esxcldrest003-rsc', port=443): Max retries exceeded with url: /redfish/v1/Managers/iDRAC.Embedded.1/Accounts/2 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x00000260BACB9400>: Failed to establish a new connection: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond',))
Attached the full log.
Windows_Error_log.txt
Hello,
I've downloaded the most recent version of scripts, and I'm trying to access iDRAC from Powershell. I'm trying to use Set-ExportImportServerConfigurationProfileREDFISH, however I keep getting an error.
I've tried both the regular and iDRAC8 only module, with the same result.
Please help! :)
Set-ExportImportServerConfigurationProfileREDFISH -idrac_ip 10.77.250.8 -idrac_username root -idrac_password calvin -Method import -network_share_IPAddress 10.77.1.5 -ShareType CIFS -ShareName Redfish -cifs_Username user -cifs_Password pass -Target RAID -FileName export_ps.xml
Output:
Name Value
ShareParameters {Password, ShareName, IPAddress, UserName...}
ShareParameters details:
Password pass
ShareName Redfish
IPAddress 10.77.1.5
UserName user
FileName export_ps.xml
ShareType CIFS
Target RAID
Invoke-WebRequest : { "error": { "code": "5", "message": { "lang": "en-us", "value": "not supported: " } } }
At C:\apps\iDRAC-Redfish-Scripting-master\Redfish PowerShell\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_o
nly\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_only.psm1:175 char:12
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-WebRequest], WebExc
eption
+ FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
Exception calling "Match" with "2" argument(s): "Value cannot be null.
Parameter name: input"
At C:\apps\iDRAC-Redfish-Scripting-master\Redfish PowerShell\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_o
nly\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_only.psm1:177 char:1
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ArgumentNullException
You cannot call a method on a null-valued expression.
At C:\apps\iDRAC-Redfish-Scripting-master\Redfish PowerShell\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_o
nly\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_only.psm1:178 char:1
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
Exception calling "Format" with "2" argument(s): "Value cannot be null.
Parameter name: args"
At C:\apps\iDRAC-Redfish-Scripting-master\Redfish PowerShell\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_o
nly\Set-ExportImportServerConfigurationProfileREDFISH_iDRAC8_only.psm1:189 char:5
[String]::Format("- FAIL, statuscode {0} returned",$result1.StatusCode)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
url = 'https://%s/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset' % idrac_ip
payload = {'ResetType': 'ForceOff'}
headers = {'content-type': 'application/json'}
response = requests.post(url, data=json.dumps(payload), headers=headers, verify=False, auth=(idrac_username,idrac_password))
statusCode = response.status_code
print statusCode
404
quit()
I am trying to reboot the host using this however, everytime I am getting 404 response.
idrac is reachable normally from browser using same IP and access details.
Please help.
After the modules have been placed in a module folder I found that the help was not working as it should in Powershell. When I run get-help Set-IdracUserPasswordREDFISH for example I do not get the synopsis, and description that was defined. The same issue exists for the examples when the -example switch is used with the command.
To resolve this issue i had to relocate the author, version, and copyright info. Once the modules were updated the help and example details in Powershell displayed as expected.
Hi,
I wanna monitor the DELL servers' RAID card's event, like disk error through Redfish API, how to subscribe an RAID card's event? Thanks!
Bo
Hy Texas,
is it possible to extend the Set-IdracUserPasswordREDFISH.psm1 to the functionality of
CreateIdracUserPasswordREDFISH.py
I got the code from JSON and brought it to Powershell ;)
$JsonBody = @{"Enabled"= $True ; 'UserName'= $idrac_newusername; 'Password'= $idrac_new_password; 'RoleId'= "Administrator"; 'Description'= "Admin"} | ConvertTo-Json -Compress
But I also like to delete a user not only to disable it as you did in the Python.
$JsonBody = @{"Enabled"= $False ; 'RoleId'= "None"; 'Description'= ""; 'UserName'= "" ; 'Password'= "" } | ConvertTo-Json -Compress
This does the Trick but it throws an ugly Error in the end, even if it succeeds in deleting Username and Password.
[{"Message":"The specified value is not allowed to be configured if the user name \nor password is
blank.","
any advice how to make it right.
Hi Guru,
supposing I have Dell PE host and let it boot up such as from Linux or VMWare vSphere iso, it will have a dhcp ip,
may from iDRAC (is there a powershell way?) I can know this ip? thanks
how to get fru infos through redfish api? or any node related to fru info? such as power?
We want to upgrade idrac version to 2.60.60.60 on our 400 plus hosts, So that we tried executing the script for the same (DeviceFirmwareUpdateREDFISH.py ).
We use idrac version 2.50.50.50.
It give us message: WARNING, current server iDRAC version does not support Redfish firmware features. Refer to Dell online Redfish documentation for information on which iDRAC version supports firmware features.
We want to know whether is there any way available for upgrading the idrac version using this script or any other ways available.
I have no errors up until the 'create_bios_config_job' and the error is
No pending data present to create a Configuration job.
The data from the call before to set the config does not match current settings, so there is a change:
[{u'Index': 0, u'Enabled': True, u'Id': u'BIOS.Setup.1-1#UefiBootSeq#NIC.PxeDevice.1-1#81e55d13a36bc065ca3bf9bf8d699391', u'Name': u'NIC.PxeDevice.1-1'},
{u'Index': 1, u'Enabled': True, u'Id': u'BIOS.Setup.1-1#UefiBootSeq#RAID.Integrated.1-1#87261b9978c1e72f4eee4644670cb0a6', u'Name': u'RAID.Integrated.1-1'}]
No matter if I swap the indexes - same error. Server has 2.50.50.50 iDRAC.
create_bios_configjob is unchanged from your code.
set_bios_boot_source is unchanged but passess with resp 200
Anxious to fix. Be awesome
I want to modify the idrac datetime and timezone, how to use python to set it, help me, thanks
Is there any API to view the IDRAC license
example command:
racadm license view
hi:
I imitate ImportSystemConfigurationLocalREDFISH.py and send a request to v1/Managers/iDRAC.Embedded.1/Actions/Oem/EID_674_Manager.ImportSystemConfiguration, bug got a html code 503, what the problem means? how to solve it?
help me, thanks a lot
So we configure atleast 50 iDRACs per day on an average from our team. We have a team size of around 80. The Get-ImportServerConfigurationProfilePreviewREDFISH requires that all of these guys should have access to a network share or should know the credentials. We should be able to give any path, preferably local path.
what we are trying to do is this.
I don't believe these urls exist. I'm getting this error:
"Unable to complete the operation because the resource Attributes entered in not found."
"https://$idrac_ip/redfish/v1/Managers/iDRAC.Embedded.1/Attributes"
"https://$idrac_ip/redfish/v1/Managers/LifecycleController.Embedded.1/Attributes"
"https://$idrac_ip/redfish/v1/Managers/System.Embedded.1/Attributes"
Additionally browsing with Postman I don't see "Attributes"
The urls all give error 404. The Bios Get Attributes sample works, proof env ir up, but cannot get the iDRAC, System, nor LC to work. Error 404 - attributes element apparently does not exist.
This is against iDRAC 2.50.50.50
Will check back here in hope of a correction.
What am I doing? need to setup server to pxe boot, need to enable ipmi, ... But if the simple calls to get attribute info do not work, I need another path.
How to use the following commands over Redfish API?
remoteimage -d
remoteimage -s
remoteimage -c -u 'root' -p 'cavin' -l 10.0.0.6:/home/ubuntu/export/isos/out.iso
IMHO the following cmdlets should remove the additional step to perform a power "ForceOff"
Invoke-CheckConsistencyVirtualDiskREDFISH
Invoke-CreateVirtualDiskREDFISH
Invoke-DeleteVirtualDiskREDFISH
Invoke-InitializeVirtualDiskREDFISH
Invoke-SecureEraseDeviceREDFISH
Invoke-SetExternalEnclosureAssetTagREDFISH
Set-BiosBootOrderBootSourceStateREDFISH
Set-BiosDefaultSettingsREDFISH
Set-MultipleBIOSAttributesREDFISH
Set-NetworkPropertiesREDFISH
Set-NextOneTimeBootDeviceREDFISH
Set-OneBIOSAttributeREDFISH
Set-UpdateOneDeviceREDFISH
The user should control that action as they see fit using the wonder Set-PowerControlREDFISH cmdlet you created.
Thank you!
Hi,
I was testing the new Idrac7/8 (2.60.60.60) firmware with support to UpdateService with the client that I developed, but it was not working, after some research I saw that in Idrac 7/8 the server doesn't understand post requests with the boundary in quotes
ex:
content-type: multipart/form-data; boundary="--------------------------906062808661884025570449"
Requests library in python doesn't use quotes for boundary so it works fine when running the scripts that you made, but .NET HttpClient which is the library that I'm using to make request, put quotes in the boundary, so the server don't understand the request and throw me an 400 error.
I was able to find a workaround for this and get it to work with Idrac7/8, but since Idrac9 support this kind of request and the RFC says that is valid https://tools.ietf.org/html/rfc2046#section-5.1.1, it would be nice to have this in Idrac7/8, that may avoid some compatibility problems in the future.
Feature Request:
It would be great to have an overview of the overall and specific sensor data with redfish and PowerShell.
Like power consumption, temperature, all sensor data, and overall health.
I like to see all FC Adapters and the coresponding Slots as we need to disable it when installing our Systems. Is there a way to get this info with Redfish.
In the Schema I see Endpoint resource - EndpointProtocol: string: FC
But how to find it :)
Hi All,
Maybe this one already been answered in the past - sorry for that, but maybe there is a location or link that show \ explained in details the Redfish tree structure (from Dell point of view of course...) ...
Please dont share this link : https://www.dell.com/support/article/us/en/19/sln310624/redfish?lang=en
Thank you for the help.
Is there redfish api support for firmware updates (BIOS/RAID etc) on 13G servers with iDrac 8?
Can you please help me to fetch the following information from Redfish API
1)System Setup / iDRAC Settings / Power Configuration / Redundancy Policy
2)System Setup / iDRAC Settings / Power Configuration / Enable Hot Spare
3)System Setup / iDRAC Settings / Network / Enable IPMI Over Lan
4)System Setup / iDRAC Settings / Network / Common Settings / Static DNS Domain Name
Are these Values set at the boot time ?
I want to use python script to control idrac ntp settings, but i can't find the related node. help me, thanks.
I am using Idrac 7, 8 and 9 on R730xd and need to upgrade BIOS, controllers, and Idrac in bulk of servers. It would be great if we have Redfish or non-redfish based Python script to upgrade them.
Or just script to upload iso/ exe which we usually do to upgrade them.
I tried to use the BiosSetAttributeREDFISH.py script to change the "LogicalProc" setting to "Enabled" (enabling SMT). Everything reported as working, the update job got scheduled and the system rebooted. After it came up BiosGetAttributesREDFISH.py reported LogicalProc as Enabled. But the total number of processors reported by nproc had not changed.
Even when I enter the BIOS and look at LogicalProc, it is set to enabled.
And if I then exit from the BIOS, it doesn't think anything has changed and doesn't do a reboot, and nproc still shows that LogicalProc is not being recognized.
I had to enter the BIOS, make some other needless change, which caused it to go thru reboot. That did then manage to really change LogicalProc as reflected by nproc.
This was on a Dell r7425.
The function Ignore-SSLCertificates seems to be ignored when I use Invoke-SecureEraseDeviceREDFISH. I'm getting the error below on my workstation. Any ideas how to get around this?
Invoke-WebRequest : The request was aborted: Could not create SSL/TLS secure channel.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.