메인 콘텐츠로 이동
  • 빠르고 간편하게 주문
  • 주문 보기 및 배송 상태 추적
  • 제품 목록을 생성 및 액세스
  • 회사 관리를 사용하여 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