ステロむド䞊のOpen REST APIたたはiLOを介しおHP ProLiantサヌバヌを管理する

HPからの玹介 この投皿は、勀務䞭に匿名を垌望するお客様の1人によっお曞かれたした。 名前ずIPの䞀臎はすべおランダムず芋なされたす。 モスクワのデモセンタヌでい぀でも同じこずを詊すこずができたす。ご垌望の方はコメント欄にご蚘入ください。



ご挚拶。 私の名前ぱドワヌドであり、ITむンフラストラクチャの管理を倖郚委蚗する小さな䌚瀟のシステム管理者です。 Ahem ...すでに問題のあるクラブの匿名の誰かのように芋えたすか さお、倧䞈倫、私たちは本圓に1぀の興味深い問題を抱えおいたした。今日は、どのように問題に遭遇し、どのように誀っお解決したかを説明したす。









たず、少しの背景。 それにも関わらず、圌らは、5〜8幎ほど前に遠隔の鉄を管理するのがどれだけ楜しかったか芚えおいたすか DCの゚ンゞニアにアプリケヌションを䜜成し、KVMの接続、BIOS / CMOSの蚭定、ネットワヌクブヌトの蚭定、システムの蚭定を埅機したす誰かが既にpreseed / kickstartファむルゞェネレヌタを䜜成し、DCにDHCP / PXEがあればよいサヌバヌ。 そしお、すべおのサヌバヌでipmiを取埗したした時間が経぀に぀れお。 ああ、最初はどれほど幞せでしたか



ipmitool -U user -P password power up -H XXX ipmitool -U user -P password password bootdev pxe -H XXX ipmitool -U user -P password power reset -H XXX
      
      





そしお、サヌバヌはすでにOSを入れおいるようです。 退屈な堎合は、コン゜ヌルでこれを芋るだけです。 唯䞀の悲しいこずは、BIOSを手動で曎新し、構成する必芁があったこずです少なくずも、HT / VT-dを有効にしたす。 その結果、むンストヌルされた四半期に応じお、すべおのサヌバヌの構成が異なりたした。 さお、あなたは最も若い管理者が垞にサヌバヌを蚭定するこずを理解しおいたす。



䜕か重芁なものを芋぀けたずき、私たちは歩いお、手で蚭定を切り替えたした。 混乱し、唯䞀の。 しかし、䞀般的に、これらすべおは、私たちに話が起こる前に私たちに合ったものでした。



クラむアントの䞀郚をハヌドりェア䞊に盎接配眮するこずに泚意する䟡倀がありたすより正確には、このハヌドりェア䞊の仮想マシン䞊にありたす。 想像しやすいように、私たちのシステムはOpenStackに非垞によく䌌おいたす。 そしお、ある晎れた日、顧客が私たちのずころに来お、「 プラむベヌトクラりドで仮想マシンを管理するシステムを䜜るために自分のハヌドりェアで 」ず尋ねたした 。 私たちは喜んで、契玄ず䜜業明现曞に眲名した埌、圌に圌の決定を瀺し始めたした、圌はすべおが奜きでした。 私はすべおが奜きで、マネヌゞャヌはすでにシャンパンを開いおいたすしかし、私たちの基準による契玄は非垞に良かったず蚀わなければなりたせん。 そしお、ここでクラむアントはアむテムTKに指を向けお尋ねたす-「 そしおこれでどうやっお 「。 この時点で、管理者は座っお困惑しおいたす 。「 むンベントリ、ラックぞのむンストヌル、電源ネットワヌクの接続埌、新しいサヌバヌを自動的にクラりドに远加する必芁がありたす 。」 私たちは芋せ始めたした-芋お、ここにサヌバヌを蚘録したす1c、ここにそのMACアドレスを远加しdhcpサヌバヌずpxeを管理するための自己蚘述Webフェむス、スクリプトを実行し、ネットワヌク経由でサヌバヌが起動し、システムがむンストヌルされたす私たちは安心したした少なくずもシステムが自動的にむンストヌルされおいるこずに気付いおから息を吐き、その埌、サヌバヌを再起動しおキャッチし、Delキヌを匷く抌したす...䞀般的に、クラむアントの担圓者はそれを芋お、頭をかき、䌚話を歩き回り、考えをたずめお蚀いたした。 ここに自動的に さお、1C以倖のすべおを投げたしょう、すべお同じように、䌚蚈士は私ではなくそこに、そしおあなたがMACアドレスを曞いた堎所にサヌバヌを眮きたす 。」 たあ、そしおすぐに圌は去り、私たちがただ問題を解決するこずを望んでいるず付け加えたした。



それから、い぀ものように、TORを読むこずにしたした。 私たちは、私たちにサむンしお、私たちにそれを曞き盎した人ではなく、タスクを実行した人たちが初めお目にしたあらゆる皮類の興味深い点を芋぀けたした。 たずえば、OSをバむパスする枩床監芖、電力消費監芖、自動BIOSセットアップなど、考え始めたした。 最初は、ipmitoolがこれをすべお実行できるず考える傟向がありたした。 それから、圌らはこれがどのように芋えるかを瀺したした。 蚭定を曎新する方法、センサヌを監芖する方法に぀いお考えたした...䞀般的に、週末に「可胜な限りipmiの代替手段を探しおGoogle党䜓を探玢する」ずいうタスクを手攟したした。



私たちは月曜日に到着したす、誰もが悲しい、怒っおいたす。 そしお、䞀人の管理者が座っお笑っおいたす。 私たちがそのような灜害に遭ったずきに圌がそれを読む理由に぀いおの質問で圌を悩たせるのは論理的でした。 刀明したように、圌はそれが起こったのではなく、Redfishサヌバヌ管理仕様v 1.0 ここを読んでください を読んだこずがうれしかったです。 圌らはすべおを声を出しお䞀緒に読み、怒ったこずをやめたした。 Redfishはたさに私たちが必芁ずしおいるものであるこずがわかりたした。 圌らはマネヌゞャヌを雇い、Redfishが実装されおいるハヌドりェアを芋぀けるためにすべおのサヌバヌメヌカヌに電話をかけたした。 圌らは1時間埌に来お、笑い、入り口の箱を指しお、「 すべお、芋぀けた」ず蚀いたす 。 実際、このボックスはHP Proliant Gen9のボックスであるこずが刀明したした。 私たちはサヌバヌを芋぀け、実隓宀に返したしたそしお、DCにすぐにアクセスできる最新の未探玢サヌバヌを掚枬した人もいたす...、HP REST APIHPサヌバヌでのRedfishの実装に぀いお知り始めたした。



私たちは管理者であるためこれは埌にpythonistによっお䞎えられ、圌はすべおを曞いお矎しいWebむンタヌフェむスを䜜成したした、最初にしたこずは必芁なこずをするsh-nicknamesを曞くこずでした。 もちろん、コン゜ヌルcurlを䜿甚しおRest APIにアクセスし、゚コヌ経由でJSONを生成するこずはお勧めしたせんたあ、少なくずも埌で誰にも衚瀺しない。ただし、HP ProLiant REST APIずの盞互䜜甚の䟋を共有できたす特に代衚者自身から HPからこれに぀いお尋ねられたした。



実際、そこには倚くの可胜性がありたす。ドキュメントには、オブゞェクトのリストの200ペヌゞずそれらの簡単な説明がありたす。 抂念実蚌ずしお、䞻なタスクを達成しようずした最初のこず。 もちろん、それらのいく぀かはIPMIを介しお実行できたすが、1぀のツヌル、぀たりAPIを䜿甚するこずにしたした。



たず、ラックにサヌバヌを接続した埌、HP iLOがIPアドレスを受信した埌、すべおのBIOS蚭定を芏定したす。



 # echo '{"AcpiRootBridgePxm":"Enabled","AcpiRtcSupport":"Disabled","AcpiSlit":"Enabled","AdjSecPrefetch":"Enabled","AdminEmail":"","AdminName":"","AdminOtherInfo":"","AdminPassword":"","AdminPhone":"","AdvancedMemProtection":"AdvancedEcc","AsrStatus":"Enabled","AsrTimeoutMinutes":"10","AssetTagProtection":"Unlocked","AttributeRegistry":"HpBiosAttributeRegistryP86.1.1.0","AutoPowerOn":"RestoreLastState","BootMode":"LegacyBios","BootOrderPolicy":"RetryIndefinitely","ChannelInterleaving":"Enabled","CollabPowerControl":"Enabled","ConsistentDevNaming":"LomsOnly","CustomPostMessage":"","DcuIpPrefetcher":"Enabled","DcuStreamPrefetcher":"Enabled","Description":"This is the Platform/BIOS Configuration (RBSU) Current Settings","Dhcpv4":"Enabled","DynamicPowerCapping":"Auto","DynamicPowerResponse":"Fast","EmbNicEnable":"Enabled","EmbSata1Enable":"Enabled","EmbSata2Enable":"Enabled","EmbVideoConnection":"Auto","EmbeddedDiagnostics":"Enabled","EmbeddedDiagsMode":"Auto","EmbeddedSata":"Raid","EmbeddedUefiShell":"Enabled","EmsConsole":"Disabled","EnergyPerfBias":"BalancedPerf","EraseUserDefaults":"No","ExtendedAmbientTemp":"Disabled","ExtendedMemTest":"Disabled","F11BootMenu":"Enabled","FanFailPolicy":"Shutdown","FanInstallReq":"EnableMessaging","HwPrefetcher":"Enabled","IntelDmiLinkFreq":"Auto","IntelPerfMonitoring":"Disabled","IntelProcVtd":"Enabled","IntelQpiFreq":"Auto","IntelQpiPowerManagement":"Enabled","IntelTxt":"Disabled","IntelligentProvisioning":"Enabled","Ipv4Address":"0.0.0.0","Ipv4Gateway":"0.0.0.0","Ipv4PrimaryDNS":"0.0.0.0","Ipv4SecondaryDNS":"0.0.0.0","Ipv4SubnetMask":"0.0.0.0","MaxMemBusFreqMHz":"Auto","MaxPcieSpeed":"MaxSupported","MemFastTraining":"Enabled","MinProcIdlePkgState":"C6Retention","MinProcIdlePower":"C6","MixedPowerSupplyReportngi":"Enabled","Modified":"2015-02-12T20:16:59+00:00","Name":"BIOS Current Settings","NetworkBootRetry":"Enabled","NicBoot1":"NetworkBoot","NicBoot2":"Disabled","NmiDebugButton":"Enabled","NodeInterleaving":"Disabled","OldAdminPassword":"","OldPowerOnPassword":"","PciBusPadding":"Enabled","PostF1Prompt":"Delayed20Sec","PowerButton":"Enabled","PowerOnDelay":"None","PowerOnLogo":"Enabled","PowerOnPassword":"","PowerProfile":"BalancedPowerPerf","PowerRegulator":"DynamicPowerSavings","PreBootNetwork":"EmbNic","ProcCoreDisable":0,"ProcHyperthreading":"Enabled","ProcNoExecute":"Enabled","ProcTurbo":"Enabled","ProcVirtualization":"Disabled","ProcX2Apic":"Enabled","ProductId":"777424-AA1","QpiBandwidthOpt":"Balanced","QpiSnoopConfig":"Standard","RedundantPowerSupply":"BalancedMode","RemovableFlashBootSeq":"ExternalKeysFirst","RestoreDefaults":"No","RestoreManufacturingDefaults":"No","RomSelection":"CurrentRom","SataSecureErase":"Disabled","SaveUserDefaults":"No","SecureBoot":"Disabled","SerialConsoleBaudRate":"115200","SerialConsoleEmulation":"Vt100Plus","SerialConsolePort":"Auto","SerialNumber":"8CW4340081","ServerAssetTag":"","ServerName":"","ServerOtherInfo":"","ServerPrimaryOs":"","ServiceEmail":"","ServiceName":"","ServiceOtherInfo":"","ServicePhone":"","SettingsResult":{"ETag":"","Messages":[{"MessageArgs":[],"MessageID":"Base.1.0:Success"}],"Time":""},"Sriov":"Enabled","ThermalConfig":"OptimalCooling","ThermalShutdown":"Enabled","TimeZone":"Utc0","TpmBinding":"Disabled","TpmOperation":"Disable","TpmState":"NotPresent","TpmType":"NoTpm","TpmVisibility":"Visible","Type":"HpBios.1.0.0","UefiOptimizedBoot":"Enabled","UefiPxeBoot":"Auto","UefiShellBootOrder":"Disabled","UefiShellStartup":"Disabled","UefiShellStartupLocation":"AttachedMedia","UefiShellStartupUri":"","UrlBootFile":"","Usb3Mode":"Auto","UsbBoot":"Enabled","UsbControl":"UsbEnabled","UtilityLang":"English","VideoOptions":"BothVideoEnabled","VirtualInstallDisk":"Disabled","VirtualSerialPort":"Com2Irq3","WakeOnLan":"Enabled","links":{"BaseConfigs":{"href":"/rest/v1/systems/1/bios/BaseConfigs"},"Boot":{"href":"/rest/v1/systems/1/bios/Boot"},"Mappings":{"href":"/rest/v1/systems/1/bios/Mappings"},"Settings":{"href":"/rest/v1/systems/1/bios/Settings"}}}' | curl -v -k -X PATCH https://Administrator:Password@192.168.2.250/rest/v1/systems/1/Bios/Settings -H "Content-Type: application/json" --data-binary @- ; echo
      
      







食物を管理するこずを孊びたす。 「ボタンで」再起動したす。



 # echo '{"Action":"Reset","ResetType":"ForceRestart"}' | curl -v -k -X POST https://Administrator:Password@192.168.2.250/rest/v1/systems/1 -H "Content-Type: application/json" --data-binary @- ; echo
      
      





「コンセントからケヌブルを匕き出したす」



 # echo '{"Action":"Reset","ResetType":"ForceOff"}' | curl -v -k -X POST https://Administrator:Password@192.168.2.250/rest/v1/systems/1 -H "Content-Type: application/json" --data-binary @- ; echo
      
      





サヌバヌの電源を入れたす。



 # echo '{"Action":"Reset","ResetType":"On"}' | curl -v -k -X POST https://Administrator:Password@192.168.2.250/rest/v1/systems/1 -H "Content-Type: application/json" --data-binary @- ; echo
      
      





「電源ボタンを抌す」ように゚ンゞニアを送りたす



 # echo '{"Action":"Reset","ResetType":"PushPowerButton"}' | curl -v -k -X POST https://Administrator:D3BFF4AE@192.168.2.250/rest/v1/systems/1 -H "Content-Type: application/json" --data-binary @- ; echo
      
      





サヌバヌに圌が誰であるかを尋ねたす。



 # curl -v -k -X GET https://Administrator:Password@192.168.2.250/rest/v1 -H "Content-Type: application/json" {"Name":"HP RESTful Root Service","Oem":{"Hp":{"Manager":[{"DefaultLanguage":"en","FQDN":"ILO8CW4340081.","HostName":"ILO8CW4340081","Languages":[{"Language":"en","TranslationName":"English","Version":"2.02"}],"ManagerFirmwareVersion":"2.02","ManagerType":"iLO 4"}],"Sessions":{"CertCommonName":"ILO8CW4340081","KerberosEnabled":false,"LDAPAuthLicenced":false,"LDAPEnabled":false,"LocalLoginEnabled":true,"LoginFailureDelay":0,"LoginHint":{"Hint":"POST to /Sessions to login using the following JSON object:","HintPOSTData":{"Password":"password","UserName":"username"}},"SecurityOverride":true,"ServerName":""},"Type":"HpiLOServiceExt.0.9.5","links":{"Providers":{"href":"/rest/v1/Providers"}}}},"ServiceVersion":"0.9.5","Time":"2015-05-06T18:01:55Z","Type":"ServiceRoot.0.9.5","links":{"AccountService":{"href":"/rest/v1/AccountService"},"Chassis":{"href":"/rest/v1/Chassis"},"Managers":{"href":"/rest/v1/Managers"},"Registries":{"href":"/rest/v1/Registries"},"Schemas":{"href":"/rest/v1/Schemas"},"Sessions":{"href":"/rest/v1/Sessions"},"Systems":{"href":"/rest/v1/Systems"},"self":{"href":"/rest/v1/root"}}}
      
      





同じペンでPATCHリク゚ストを䜿甚するず、iLo内のサヌバヌ情報を倉曎できたす。



サヌバヌのMACアドレスを確認したしょうそうです、別のVLANで芋慣れないiLOが芋぀かった堎合、最埌にDHCPサヌバヌ自䜓が新しいサヌバヌのむンベントリを取埗したした。iLOの動的アドレスを提䟛し、次に静的アドレスの蚘録を開始したすサヌバヌおよびiLoむンタヌフェむスのネットワヌクカヌド



 # curl -v -k -X GET https://Administrator:Password@192.168.2.250/rest/v1/systems/1 -H "Content-Type: application/json" {"AvailableActions":[{"Action":"Reset","Capabilities":[{"AllowableValues":["On","ForceOff","ForceRestart","Nmi","PushPowerButton"],"PropertyName":"ResetType"}]}],"Bios":{"Current":{"VersionString":"P86 v1.30 (09/04/2014)"}},"Boot":{"BootSourceOverrideEnabled":"Disabled","BootSourceOverrideSupported":["None","Floppy","Cd","Hdd","Usb","Utilities","Diags","BiosSetup","Pxe","UefiShell","UefiTarget"],"BootSourceOverrideTarget":"None","UefiTargetBootSourceOverride":"None","UefiTargetBootSourceOverrideSupported":["NIC.LOM.1.1.IPv4","NIC.LOM.1.1.IPv6"]},"Description":"Computer System View","HostCorrelation":{"HostMACAddress":["14:58:d0:d3:20:8e","14:58:d0:d3:20:8f"],"HostName":"","IPAddress":[""]},"IndicatorLED":"Off","Manufacturer":"HP","Memory":{"TotalSystemMemoryGB":32},"Model":"ProLiant DL120 Gen9","Name":"Computer System","Oem":{"Hp":{"AvailableActions":[{"Action":"PowerButton","Capabilities":[{"AllowableValues":["Press","PressAndHold"],"PropertyName":"PushType"},{"AllowableValues":["/Oem/Hp"],"PropertyName":"Target"}]}],"Bios":{"Backup":{"Date":"v1.30 (09/04/2014)","Family":"P86","VersionString":"P86 v1.30 (09/04/2014)"},"Bootblock":{"Date":"","Family":"P86","VersionString":"P86 "},"Current":{"Date":"09/04/2014","Family":"P86","VersionString":"P86 v1.30 (09/04/2014)"},"UefiClass":2},"PowerAllocationLimit":900,"PowerAutoOn":"Restore","PowerOnDelay":"Minimum","PowerRegulatorMode":"Dynamic","PowerRegulatorModesSupported":["OSControl","Dynamic","Max","Min"],"Type":"HpComputerSystemExt.0.10.0","VirtualUUID":null,"links":{"BIOS":{"href":"/rest/v1/systems/1/bios"},"PCIDevices":{"href":"/rest/v1/Systems/1/PCIDevices"},"PCISlots":{"href":"/rest/v1/Systems/1/PCISlots"},"SecureBoot":{"href":"/rest/v1/Systems/1/SecureBoot"}}}},"Power":"Off","Processors":{"Count":1,"ProcessorFamily":"Intel(R) Xeon(R) CPU E5-2660 v3 @ 2.60GHz"},"SKU":"777424-AA1","SerialNumber":"8CW4340081","Status":{"Health":"OK","State":"Disabled"},"SystemType":"Physical","Type":"ComputerSystem.0.9.5","UUID":"34373737-3432-4338-5734-333430303831","links":{"Chassis":[{"href":"/rest/v1/Chassis/1"}],"Manager":[{"href":"/rest/v1/Managers/1"}],"self":{"href":"/rest/v1/Systems/1"}}}
      
      





前のJSONからCPUモデルを䜿甚しおメモリ量を匕き出した埌、開発者は1Cず統合し、サヌバヌは自身に関するデヌタを送信したした。 ここでは、叀いたたは単にクラスタヌが異なるバヌゞョンを呪うBIOSバヌゞョンも決定したした。



REST APIを䜿甚しおも、電力メトリックの読み取り倀を取埗できたす残念ながら、iLOラむセンスのすべおの「レベル」ではありたせん。



 # curl -v -k -X GET https://Administrator:Password@192.168.2.250/rest/v1/chassis/1/PowerMetrics -H "Content-Type: application/json"
      
      





たた、サヌバヌの状態を衚す䜕らかの䞍気味なペンを芋぀けたした-ファンの速床、枩床、およびサヌバヌ内のさたざたな鉄片の状態。



 # curl -v -k -X GET https://Administrator:Password@192.168.1.235/rest/v1/Chassis/1/ThermalMetrics -H "Content-Type: application/json" {"Fans":[{"CurrentReading":33,"FanName":"Fan 1","Oem":{"Hp":{"Location":"System","Type":"HpServerFan.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Percent"},{"CurrentReading":33,"FanName":"Fan 2","Oem":{"Hp":{"Location":"System","Type":"HpServerFan.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Percent"},{"CurrentReading":33,"FanName":"Fan 3","Oem":{"Hp":{"Location":"System","Type":"HpServerFan.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Percent"},{"CurrentReading":33,"FanName":"Fan 4","Oem":{"Hp":{"Location":"System","Type":"HpServerFan.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Percent"},{"CurrentReading":33,"FanName":"Fan 5","Oem":{"Hp":{"Location":"System","Type":"HpServerFan.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Percent"},{"CurrentReading":33,"FanName":"Fan 6","Oem":{"Hp":{"Location":"System","Type":"HpServerFan.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Percent"}],"Name":"ThermalMetrics","Temperatures":[{"Context":"Ambient","CurrentReading":21,"LowerThresholdCritical":46,"LowerThresholdNonCritical":42,"Name":"01-Inlet Ambient","Oem":{"Hp":{"LocationXmm":11,"LocationYmm":0,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"CPU","CurrentReading":40,"LowerThresholdCritical":0,"LowerThresholdNonCritical":70,"Name":"02-CPU 1","Oem":{"Hp":{"LocationXmm":7,"LocationYmm":9,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"CPU","CurrentReading":40,"LowerThresholdCritical":0,"LowerThresholdNonCritical":70,"Name":"03-CPU 2","Oem":{"Hp":{"LocationXmm":12,"LocationYmm":9,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"GPU","CurrentReading":27,"LowerThresholdCritical":0,"LowerThresholdNonCritical":87,"Name":"04-P1 DIMM 1-2","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":10,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"GPU","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":87,"Name":"05-P1 DIMM 3-4","Oem":{"Hp":{"LocationXmm":5,"LocationYmm":10,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"GPU","CurrentReading":28,"LowerThresholdCritical":0,"LowerThresholdNonCritical":87,"Name":"06-P2 DIMM 1-2","Oem":{"Hp":{"LocationXmm":14,"LocationYmm":10,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"GPU","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":87,"Name":"07-P2 DIMM 3-4","Oem":{"Hp":{"LocationXmm":11,"LocationYmm":10,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":60,"Name":"08-HD Max","Oem":{"Hp":{"LocationXmm":4,"LocationYmm":2,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":41,"LowerThresholdCritical":0,"LowerThresholdNonCritical":105,"Name":"09-Chipset","Oem":{"Hp":{"LocationXmm":7,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":40,"LowerThresholdCritical":0,"LowerThresholdNonCritical":0,"Name":"10-P/S 1","Oem":{"Hp":{"LocationXmm":1,"LocationYmm":14,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":0,"Name":"11-P/S 2","Oem":{"Hp":{"LocationXmm":2,"LocationYmm":14,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":30,"LowerThresholdCritical":120,"LowerThresholdNonCritical":115,"Name":"12-VR P1","Oem":{"Hp":{"LocationXmm":7,"LocationYmm":8,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":30,"LowerThresholdCritical":120,"LowerThresholdNonCritical":115,"Name":"13-VR P2","Oem":{"Hp":{"LocationXmm":12,"LocationYmm":8,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":26,"LowerThresholdCritical":120,"LowerThresholdNonCritical":115,"Name":"14-VR P1 Zone","Oem":{"Hp":{"LocationXmm":7,"LocationYmm":7,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":25,"LowerThresholdCritical":120,"LowerThresholdNonCritical":115,"Name":"15-VR P2 Zone","Oem":{"Hp":{"LocationXmm":12,"LocationYmm":7,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":26,"LowerThresholdCritical":120,"LowerThresholdNonCritical":115,"Name":"16-VR P1 Mem","Oem":{"Hp":{"LocationXmm":8,"LocationYmm":7,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":26,"LowerThresholdCritical":120,"LowerThresholdNonCritical":115,"Name":"17-VR P2 Mem","Oem":{"Hp":{"LocationXmm":13,"LocationYmm":7,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":60,"Name":"18-Storage Batt","Oem":{"Hp":{"LocationXmm":0,"LocationYmm":7,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":30,"LowerThresholdCritical":85,"LowerThresholdNonCritical":80,"Name":"19-iLO Zone","Oem":{"Hp":{"LocationXmm":12,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":30,"LowerThresholdCritical":105,"LowerThresholdNonCritical":100,"Name":"20-System Board","Oem":{"Hp":{"LocationXmm":7,"LocationYmm":14,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":28,"LowerThresholdCritical":105,"LowerThresholdNonCritical":100,"Name":"21-System Board","Oem":{"Hp":{"LocationXmm":11,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":24,"LowerThresholdCritical":127,"LowerThresholdNonCritical":126,"Name":"22-P/S Zone","Oem":{"Hp":{"LocationXmm":4,"LocationYmm":9,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":28,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"23-System Board","Oem":{"Hp":{"LocationXmm":4,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":29,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"24-System Board","Oem":{"Hp":{"LocationXmm":9,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":29,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"25-System Board","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":100,"Name":"26-PCI 1","Oem":{"Hp":{"LocationXmm":4,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":100,"Name":"27-PCI 2","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":100,"Name":"28-PCI 3","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":26,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"29-PCI 1 Zone","Oem":{"Hp":{"LocationXmm":4,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":24,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"30-PCI 2 Zone","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":25,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"31-PCI 3 Zone","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"Health":"OK","State":"Enabled"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":100,"Name":"32-LOM Card","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":13,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"Expansion Bay","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":126,"Name":"33-I/O Board","Oem":{"Hp":{"LocationXmm":10,"LocationYmm":15,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"},{"Context":"System Board","CurrentReading":0,"LowerThresholdCritical":0,"LowerThresholdNonCritical":100,"Name":"34-LOM","Oem":{"Hp":{"LocationXmm":6,"LocationYmm":14,"Type":"HpSeaOfSensors.0.9.5"}},"Status":{"State":"Absent"},"Units":"Celsius"}],"Type":"ThermalMetrics.0.9.5","links":{"self":{"href":"/rest/v1/Chassis/1/ThermalMetrics"}}}
      
      





たた、サヌバヌ党䜓のステヌタスOK /倱敗ず珟圚䜕をしおいるのかこの䟋では読み蟌み䞭を瀺すオブゞェクトを芋぀けたした。



 # curl -v -k -X  GET https://Administrator:Password@192.168.1.235/rest/v1/Chassis/1 -H "Content-Type: application/json" ... "Status":{"Health":"OK","State":"Starting"} ...
      
      





䞀般的に、最終的にsh-nickを䜜成しお開発者に枡したした。 圌は私たちに笑い、私たちは圌をforり、根を䞋ろすず脅した...しかし、圌はRedfishおよびHP REST APIを介しおサヌバヌを远加および管理できるクラりドにモゞュヌルを曞いた。 たあ、私たちは最終的に泚文を完了したした。



おそらくそれは四捚五入する時間です。 このストヌリヌ党䜓で䞻芁な圹割を果たした人々に぀いお話したしょう。





ご枅聎ありがずうございたした



All Articles