Redfish API(戴尔)创造就业机会失败

问题描述 投票:0回答:1

我编写了一个脚本来对 DELL PowerEdge 服务器上的 BIOS 设置进行一些更改。到目前为止,脚本按预期工作,这意味着我可以看到更改正在等待处理。这里的挑战是需要创建一个作业才能立即应用这些更改(服务器重新启动)或在下次重新启动时应用。

WebGUI 具有三个按钮:“应用并重新启动”、“下次重新启动时应用”和“放弃所有待处理”。如果不按这些按钮之一,即使服务器重新启动,更改仍将显示为待处理。

我尝试了一些 API 端点,但我似乎不知道如何创建这些作业。

这是我尝试过的端点:

 # iDRAC API URI for BIOS settings
    $biosUri = "https://$idracIp/redfish/v1/Systems/System.Embedded.1/Bios/Settings"
    # iDRAC API URI for creating a job
    $jobServiceUri = "https://$idracIp/redfish/v1/JobService"

    # Apply BIOS settings
    try {
        Invoke-RestMethod -Uri $biosUri -Method Patch -Headers @{Authorization=("Basic {0}" -f $encodedCredentials)} -Body $jsonBiosSettings -ContentType "application/json"
        Write-Host "BIOS settings updated successfully for iDRAC at $idracIp."

        # Create job for BIOS settings
        $jobBody = @{
            TargetSettingsURI = "/redfish/v1/Systems/System.Embedded.1/Bios/Settings"
            ScheduledStartTime = "TIME_NOW"
        } | ConvertTo-Json
# iDRAC API URI for creating a job
    $jobServiceUri = "https://$idracIp/redfish/v1/Managers/System.Embedded.1/Oem/Dell/DellJobService/Actions/DellJobService.SetupJobQueue"
$jobUri = "https://$idracIp/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset"
powershell powercli
1个回答
0
投票

好吧,我明白了。

要安排作业但不重新启动,需要删除这一行

ScheduledStartTime = "TIME_NOW"

具有魅力。

© www.soinside.com 2019 - 2024. All rights reserved.