メイン コンテンツに進む
  • すばやく簡単にご注文が可能
  • 注文内容の表示、配送状況をトラック
  • 会員限定の特典や割引のご利用
  • 製品リストの作成とアクセスが可能
  • 「Company Administration(会社情報の管理)」では、お使いのDell EMCのサイトや製品、製品レベルでのコンタクト先に関する情報を管理できます。

WSMANin tutkiminen luetteloinnin ulkopuolella

概要: Dellin käyttöjärjestelmä- ja sovellusratkaisut Dell TechCenterissä – Project Sputnik, Microsoft Windows, Red Hat Linux, SUSE, Ubuntu ja niin edelleen

この記事は自動翻訳されたものである可能性があります。品質に関するフィードバックがある場合は、このページの下部にあるフォームを使用してお知らせください。

文書の内容


現象

WSMAN on valittu Dell iDRACin hallinta-API:ksi. Järjestelmän etähallinnasta tehdään parhaillaan kattavaa ja helppoa. Vietin äskettäin jonkin aikaa WSMAN-protokollan ymmärtämiseen laajennuksen toteuttamiseksi ja alkuperäisen wsman-luettelointitoiminnon jälkeen WSMAN-protokolla muuttuu hieman karvaiseksi. Ei ole helppoa dokumentaatiota/esimerkkejä siitä, miten get/put/create/delete/custom -toiminnot käynnistetään oikeilla avainominaisuuksilla.  Näiden tietojen ensisijainen lähde on DMTF: n WSMAN-spesifikaatio ja WSMAN-CIM-sitova spesifikaatio, joita on tuskallisen pitkä seurata. Suurin osa tämän artikkelin sisällöstä on peräisin DMTF-määritysasiakirjoista. Tämä on yritys tehdä tiedoista helposti sulavia joidenkin esimerkkien avulla (Linuxissa).

 Olen jo lähettänyt valkoisen kirjan SFCB: n ja openwsmanin käytön aloittamisesta osoitteessa https://linux.dell.com/files/whitepapers/WBEM_based_management_in_Linux.pdf. Jos olet uusi WSMAN / SFCB: ssä, pdf olisi parempi lähtökohta kuin tämä artikkeli. Kuten yllä olevassa valkoisessa kirjassa, käsittelemme tässä artikkelissa ensisijaisesti openwsman- ja SFCB CIMOM -toteutuksia.

 Nyt, kun otetaan huomioon WSMAN-palvelin, onko mahdollista luetella kaikki komponentit, joita wsman API hallitsee? Suurin osa WSMAN-palvelimista keskustelee CIMOM: n kanssa taustalla ja paljastaa CIMOM: ien hallintatoiminnot. Tämä tarkoittaa, että WSMAN-palvelimen hallintaominaisuudet riippuvat CIM-palveluntarjoajista, jotka on rekisteröity CIMOM: iin taustalla. CIMOMilla on luontainen toiminto nimellä EnumerateClassNames , jota voidaan kutsua luettelemaan kaikki CIMOMiin rekisteröidyt luokat.

原因

Koska WSMAN-määrityksessä ei ole yksi-yhteen-kartoitusta EnumerateClassNames-funktiolle , tätä menetelmää käytetään kuten mitä tahansa muuta mukautettua funktiota WSMAN:ssa. Huomaa, että tämä on toteutuskohtaista ja koskee wsmancli-toteutusta. Tämä voi olla erilainen tai päivitetty tulevissa versioissa.

解決方法

CIMOMin sisäistä EnumerateClassNames-funktiota voidaan kutsua wsmanclilla seuraavasti:
wsman invoke -a EnumerateClassNames --hostname=test_host --port=5985 --username=abc --password=password http://schemas.openwsman.org/wbem/wscim/1/instrinsic  --namespace=root/cimv2
   
 <s:Body>

    <n1:EnumerateClassNames>

      <n1:name>root/cimv2:CIM_Service</n1:name>

      <n1:name>root/cimv2:Syslog_RecordInLog</n1:name>

      <n1:name>root/cimv2:Linux_SambaValidUsersForShare</n1:name>

       <n1:name>root/cimv2:Linux_BaseBoard</n1:name>

      <n1:name>root/cimv2:Linux_SambaForceUserForShare</n1:name>

      <n1:name>root/cimv2:Linux_Processor</n1:name>

      <n1:name>root/cimv2:CIM_RecordForLog</n1:name>

      <n1:name>root/cimv2:Linux_SambaShareForService</n1:name>

      <n1:name>root/cimv2:Linux_SambaServiceConfigurationForService</n1:name>

      <n1:name>root/cimv2:Linux_SambaHostsForService</n1:name>

      <n1:name>root/cimv2:Linux_SambaForceUserForGlobal</n1:name>

      <n1:name>root/cimv2:CIM_OSProcess</n1:name>

      <n1:name>root/cimv2:CIM_RunningOS</n1:name>...................
 
Tulos näyttää samalta kuin yllä, mikä osoittaa, että nimiavaruuden juuressa/cimv2:ssa Linux_Processor on yksi rekisteröidyistä luokista. On olemassa useita CIM-luokkia, jotka periytyvät, kun uusia luokkia rekisteröidään root/cimv2-nimitilaan, ja yllä oleva komento luettelee myös kaikki nämä luokkien nimet. Yleensä voit ohittaa kaikki luokat, joissa on CIM_ etuliite. Kaikki luokat , joissa on Linux_ etuliite, ovat luokkia, jotka Linux-järjestelmään asennetut palveluntarjoajat rekisteröivät. Dellin idracin kanssa työskennellessäsi olet kiinnostunut lähinnä kursseista, joissa on DCIM_ etuliite.

 Nyt kun sinulla on luettelo kaikista luokkien nimistä, voit purkaa Linux_Processor luokan määritelmän getClassin sisäisen funktion avulla seuraavasti:
wsman invoke -a GetClass --hostname=test_host --port=5985 --username=abc --password=password http://schemas.openwsman.org/wbem/wscim/1/intrinsic/Linux_Processor  --namespace=root/cimv2
 
 Edellä oleva komento luettelee kaikki ominaisuudet, jotka on määritetty Linux_Processor paikallisesti. Tämä tarkoittaa, että muista CIM_* -luokista perittyjä ominaisuuksia ei ole lueteltu nykyisessä toteutuksessa. Yleensä luokan määritelmästä voit selvittää, mitä menetelmiä luokassa määritellään, mitkä parametrit on siirrettävä näihin menetelmiin ja mitkä luokan ominaisuudet ovat keskeisiä ominaisuuksia jne. Mutta koska yllä oleva komento palauttaa vain paikalliset ominaisuudet, luokan keskeisiä ominaisuuksia ei voida tunnistaa. Tämä on jälleen tällä hetkellä wsmancli-toteutuksen rajoitus.

Joten vaikka GetClass-funktio on hyvä lähtökohta, sen tulos ei riitä määrittämään, mitä luokan ominaisuuksia voidaan käyttää avainominaisuuksina, jotta get/put/create/custom-toiminto voidaan käynnistää. Joten mitä muita tekniikoita voidaan käyttää tämän saavuttamiseksi? Tässä laajennetut tuottajajärjestöt voivat auttaa.


EPR (End Point Reference) on osoitin esiintymään, jossa on kaksi tietoa: ResourceURI ja Selector Set. ResourceURI:lla on luokan nimi, josta ilmentymä luodaan, ja valitsinjoukossa luetellaan ominaisuudet, joilla ilmentymä voidaan yksilöidä. Tietyn luokan EPR: t voidaan luetella seuraavanlaisella komennolla:
wsman enumerate -M epr  http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_Processor -h test_host-P 5985 -u abc -p password -O out

 <?xml version="1.0" encoding="UTF-8"?>

<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsen="http://schemas.xmlsoap.org/ws/2004/09/enumeration" xmlns:wsman="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">

  <s:Header>

    <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>

    <wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/enumeration/PullResponse</wsa:Action>

    <wsa:RelatesTo>uuid:ca52c9e9-cd47-1d47-8003-a52924d9bed4</wsa:RelatesTo>

    <wsa:MessageID>uuid:ca622bb3-cd47-1d47-8097-a52924d9bed4</wsa:MessageID>

  </s:Header>

  <s:Body>

    <wsen:PullResponse>

      <wsen:EnumerationContext>ca4fdd21-cd47-1d47-8095-a52924d9bed4</wsen:EnumerationContext>

      <wsen:Items>

        <wsa:EndpointReference>

          <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>

          <wsa:ReferenceParameters>

            <wsman:ResourceURI>http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_Processor</wsman:ResourceURI>

            <wsman:SelectorSet>

              <wsman:Selector Name="__cimnamespace">root/cimv2</wsman:Selector>

              <wsman:Selector Name="SystemCreationClassName">Linux_ComputerSystem</wsman:Selector>

              <wsman:Selector Name="SystemName">localhost.localdomain</wsman:Selector>

              <wsman:Selector Name="CreationClassName">Linux_Processor</wsman:Selector>

              <wsman:Selector Name="DeviceID">0</wsman:Selector>

            </wsman:SelectorSet>

          </wsa:ReferenceParameters>

        </wsa:EndpointReference>

      </wsen:Items>

    </wsen:PullResponse>

  </s:Body>

</s:Envelope>
 Kaikista kohdejärjestelmän prosessoreista yllä oleva tulos on vain yksi prosessori. Tuloksessa resourceURI näkyy muodossa http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_Processor, ja SelectorSet-parametrissa luetellaan arvot __cimnamespace, SystemCreationClassName, SystemName , CreationClassName ja DeviceID. Tämä tarkoittaa, että kaikista Linux_Processor-luokan ominaisuuksista (perityt ja paikallisesti määritetyt) näitä ominaisuuksia voidaan käyttää esiintymän yksilölliseen tunnistamiseen.

 Voit siis odottaa kelvollista vastausta seuraavanlaisesta komennosta:
wsman get  http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_Processor?SystemCreationClassName="Linux_ComputerSystem",SystemName="localhost.localdomain",CreationClassName="Linux_Processor",DeviceID="3",__cimnamespace="root/cimv2" -h test_host -P 5985 -u abc -p password -O get
 Jos yllä olevassa pyynnössä käytetään muita ominaisuuksia, taustalla oleva CIMOM ei pysty tunnistamaan instanssia yksilöllisesti. Vastaavasti, jos esiintymässä on suoritettava joitakin mukautettuja menetelmiä, luokan EPR: ää voidaan käyttää tunnistamaan tärkeimmät ominaisuudet, joilla menetelmä käynnistetään.

Voit luetella myös yhdistyksen EPR: t. Luokan nimen perusteella ei voida selvittää, onko se tavallinen luokan nimi vai yhdistysluokka. Koska yhdistyksen esiintymässä on viitteitä kahteen esiintymään, yhdistyksen EPR:llä on niiden esiintymien/objektien EPR:t, joihin yhdistys viittaa. Seuraavassa on esimerkki samasta:
wsman enumerate -M epr  http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_CSProcessor -h test_host -P 5985 -u abc -p password -O out

 <?xml version="1.0" encoding="UTF-8"?>

<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsen="http://schemas.xmlsoap.org/ws/2004/09/enumeration" xmlns:wsman="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">

  <s:Header>

    <wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>

    <wsa:Action>http://schemas.xmlsoap.org/ws/2004/09/enumeration/PullResponse</wsa:Action>

    <wsa:RelatesTo>uuid:2efbfcad-cd4b-1d4b-8003-a52924d9bed4</wsa:RelatesTo>

    <wsa:MessageID>uuid:2efc1c6f-cd4b-1d4b-80b3-a52924d9bed4</wsa:MessageID>

  </s:Header>

  <s:Body>

    <wsen:PullResponse>

      <wsen:EnumerationContext>2ef7f6f5-cd4b-1d4b-80b1-a52924d9bed4</wsen:EnumerationContext>

      <wsen:Items>

        <wsa:EndpointReference>

          <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>

          <wsa:ReferenceParameters>

            <wsman:ResourceURI>http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_CSProcessor</wsman:ResourceURI>

            <wsman:SelectorSet>

              <wsman:Selector Name="__cimnamespace">root/cimv2</wsman:Selector>

              <wsman:Selector Name="GroupComponent">

                <wsa:EndpointReference>

                  <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>

                  <wsa:ReferenceParameters>

                    <wsman:ResourceURI>http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_ComputerSystem</wsman:ResourceURI>

                    <wsman:SelectorSet>

                      <wsman:Selector Name="CreationClassName">Linux_ComputerSystem</wsman:Selector>

                      <wsman:Selector Name="Name">localhost.localdomain</wsman:Selector>

                      <wsman:Selector Name="__cimnamespace">root/cimv2</wsman:Selector>

                    </wsman:SelectorSet>

                  </wsa:ReferenceParameters>

                </wsa:EndpointReference>

              </wsman:Selector>

              <wsman:Selector Name="PartComponent">

                <wsa:EndpointReference>

                  <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>

                  <wsa:ReferenceParameters>

                    <wsman:ResourceURI>http://sblim.sf.net/wbem/wscim/1/cim-schema/2/Linux_Processor</wsman:ResourceURI>

                    <wsman:SelectorSet>

                      <wsman:Selector Name="SystemCreationClassName">Linux_ComputerSystem</wsman:Selector>

                      <wsman:Selector Name="SystemName">localhost.localdomain</wsman:Selector>

                      <wsman:Selector Name="CreationClassName">Linux_Processor</wsman:Selector>

                      <wsman:Selector Name="DeviceID">0</wsman:Selector>

                      <wsman:Selector Name="__cimnamespace">root/cimv2</wsman:Selector>

                    </wsman:SelectorSet>

                  </wsa:ReferenceParameters>

                </wsa:EndpointReference>

              </wsman:Selector>

            </wsman:SelectorSet>

          </wsa:ReferenceParameters>

        </wsa:EndpointReference>

      </wsen:Items>

    </wsen:PullResponse>

  </s:Body>

</s:Envelope>
Linux_CSProcessor on Linux_ComputerSystem - ja Linux_Processor-luokkien välinen yhteys, joka muodostaa suhteen siihen, että suorittimet sisältyvät tietokonejärjestelmiin ja siten GroupComponent- ja PartComponent-osiin.

Minun piti viettää jonkin aikaa EPR: ien selvittämiseen ja siihen, miten niitä voidaan käyttää yksittäisten tapausten käyttämiseen, ajattelin, että siitä voisi olla hyötyä muille. Voit vapaasti jättää minulle kommenttisi / ehdotuksesi alla.

Vastuuvapauslauseke:

Yllä oleva artikkeli on tarkoitettu vain tiedoksi. Sisältö on tulkinnastani mainituista tekniikoista/terminologioista. Nämä tiedot toimitetaan sellaisenaan, ja ne voivat sisältää joitakin kirjoitusvirheitä ja/tai teknisiä epätarkkuuksia.

文書のプロパティ


影響を受ける製品

Ubuntu Server LTS

最後に公開された日付

11 6月 2024

バージョン

4

文書の種類

Solution