PowerScale: Slik bruker du curl-kommandoen til å kontrollere at OneFS API-en fungerer som den skal
Summary: Denne KB-artikkelen er nyttig for å feilsøke API-problemer (Application Programming Interface) mot klyngen direkte ved hjelp av curl-kommandoer. Bruk den til å utelukke problemer med egendefinerte skript eller programkode. ...
Instructions
Innledning
Når det oppstår et problem med OneFS API-en, må du kontrollere at grunnleggende operasjoner fungerer som de skal ved å kjøre en curl-kommando før du utfører andre feilsøkinger. Denne artikkelen inneholder instruksjoner for bruk av curl-kommandoen til å teste API-operasjoner. Det bidrar til å bekrefte at kommandoen du kjører, er i riktig format.
OneFS API består av to funksjonsområder:
- Systemkonfigurasjons-API (kjent i OneFS 7.1.0 og tidligere som Platform API)
- API for filsystemtilgang (kjent i OneFS 7.1.0 og tidligere som RESTful Tilgang til navneområdets API, eller RAN-API)
Fremgangsmåte
Bruk curl-kommandoen med "root" -legitimasjon når du tester enten API-en for systemkonfigurasjon eller API-en for tilgang til filsystemet.
- Openn en SSH-tilkobling på en node i klyngen, og logg på med "root" -kontoen.
- Bruk curl-kommandoen som beskrevet i avsnittene Systemkonfigurasjons-API eller File System Access API nedenfor.
- Hvis problemene vedvarer, kan du kontakte Isilons tekniske støtte.
Hvis du vil ha mer informasjon om krøllkommandoer og syntaks, kan du se krøllmannsiden .
Hvis du vil ha mer informasjon om OneFS-systemkonfigurasjon, API-forespørsler og forventet svar, kan du se API-referanseveiledningen for din respektive OneFS-versjon. Koblinger for de vanligste OneFS-versjonene: Systemkonfigurasjons-API for OneFS 8.2.2.0, OneFS 9.1.0, OneFS 9.5.0.0 og OneFS 9.7.0.0
Vanlige alternativer for curl med API for systemkonfigurasjon
| Alternativ | Beskrivelse |
|---|---|
| -d | Sender angitte data i en POST-forespørsel |
| -H | Angir en ekstra topptekst som skal brukes |
| -k | Tillater tilkobling til ikke-klarerte SSL-nettsteder (for Isilon standard selvsignerte SSL-sertifikater) |
| -u | Brukernavn for godkjenning Når du kjører kommandoen, blir du bedt om å oppgi passordet for denne brukeren |
| -v | Angir detaljerte utdata |
| -X | Angir forespørselsmetode (GET,PUT,POST og så videre) |
Vanlig bruk av curl med System Configuration API
Følgende er eksempler på vanlige krøllkommandoer . Følg lignende syntaks for handlingen du vil utføre.
- Henter informasjon (GET-kommandoer):
Generell syntaks: Bruk følgende, der <brukernavn> er brukernavnet, og <URL-adresse> er URL-adressen til noden du kobler til.# curl -vk -u "<username>" -H 'Content-type:application/json' -X GET '<URL>'
Hvis du for eksempel vil ha en liste over delte SMB-ressurser (Server Message Block), ser kommandoen omtrent slik ut:# curl -vk -u "root" -H 'Content-type:application/json' -X GET 'https://10.11.1.1:8080/platform/1/protocols/smb/shares'
- Sende informasjon (POST- eller PUT-kommandoer):
Generell syntaks: Bruk følgende, der <brukernavn> er brukernavnet, <json-data> er den JSON-formaterte strengen, og <URL> er URL-adressen til noden du kobler til.# curl -vk -u <username> -H 'Content-type:application/json' -X POST -d '<json-data>' <URL>
Hvis du for eksempel vil opprette en ny delt SMB-ressurs kalt papi-example med banen /ifs/papi-example, ser kommandoen omtrent slik ut:# curl -vk -u root -H "Content-type: application/json" -X POST -d '{ "name" : "papi-example", "path" : "/ifs/papi-example" }' 'https://10.11.1.1:8080/platform/1/protocols/smb/shares'
API for tilgang til filsystemet
Vanlige alternativer for curl med filsystemtilgangs-API
| Alternativ | Beskrivelse |
|---|---|
| -d | Sender angitte data i en POST-forespørsel |
| --data-binær | Angir plasseringen til binærfilen |
| -H | Angir en ekstra topptekst som skal brukes |
| -k | Tillater tilkobling til ikke-klarerte SSL-nettsteder (Isilon standard selvsignerte SSL-sertifikater). |
| -u | Brukernavn for godkjenning, blir du bedt om å oppgi passordet for denne brukeren. |
| -v | Angir detaljerte utdata |
| -X | Angir forespørselsmetode (GET,PUT,POST og så videre) |
Vanlig bruk av curl med filsystemtilgangs-API
Følgende er eksempler på vanlige krøllkommandoer . Følg en lignende syntaks for handlingen som skal utføres.
NOTAT
Du kan opprette dine egne navneområder via filsystemets tilgangs-API, men du bør bruke standard navneområde for bekreftelse. Standard navneområde er /namespace/ifs.
- Henter informasjon (GET-kommandoer):
Generell syntaks:# curl -vk -u "<username>" -X GET 'https://<node_IP>:8080/namespace/<access_point>'
For eksempel, for å få innholdsoppføringen av / ifs:# curl -vk -u "root" -X GET 'https://10.11.1.1:8080/namespace/ifs'
- Sende informasjon (POST- eller PUT-kommandoer):
Generell syntaks: Bruk følgende ved å bruke riktig for den variable <innholdsoverskriften>. Hvis du vil ha informasjon om innholdshodet>, kan du se referanseveiledningen< for OneFS API# curl -vk -u "<username>" -H "<content header>" --data-binary @<source file path> -X PUT 'https://<node_IP>:8080/namespace/<access_point>/<destination file path>'
Hvis du for eksempel vil kopiere en datafil fra /tmp/testfile.jpg til /ifs/papi-example, ser kommandoen omtrent slik ut:
# curl -vk -u "root" -H "x-isi-ifs-target-type:object" --data-binary @/tmp/testfile.jpg -X PUT 'https://<node_IP>:8080/namespace/ifs/papi-example/testfile.jpg'
Alle kommandoene ovenfor bruker grunnleggende HTTP-godkjenning til å kjøre API-spørringer.