Isilon: PowerShellin käyttäminen ympäristön ohjelmointirajapinnassa - kohteiden ja RAN-kohteiden luominen

Zusammenfassung: Tässä artikkelissa selitetään, miten voit luoda objekteja ja RAN-liittymää PowerShellin ja OneFS-ympäristön ohjelmointirajapinnan kanssa.

Dieser Artikel gilt für Dieser Artikel gilt nicht für Dieser Artikel ist nicht an ein bestimmtes Produkt gebunden. In diesem Artikel werden nicht alle Produktversionen aufgeführt.

Symptome

Ei tarvita

Ursache

Ei tarvita

Lösung

JSON-esittely

OPIS käyttää JSON:ia tiedonsiirtomuotona, ja on tärkeää ymmärtää, miten sitä voidaan hyödyntää resurssien luonti-, muokkaus- ja poistoresurssien luonti-, muokkaus- ja poistotoiminnoissa. Voit tutustua JSON:iin www.json.org , mutta keskeistä on, että se on täysin itsenäinen ohjelmointikieli ja perustuu kahteen rakenteeseen:
  • Kokoelma nimi-/arvopareja
  • Tilattu arvoluettelo

Esimerkki tuloksesta järjestelmäobjektin hankkimisesta näyttää tältä:

{
"<kohde>": {
"<ominaisuus>": <arvo>,
...
}

Jos haluat tietää, mitä JSON-tekstiä tarvitaan POST-testiin objektin luontia varten, tutustu KOOSTin omatoimiseen dokumentaatioon lähettämällä seuraava pyyntö:
GET /platform/1/quota/quotas?describe

Seuraava on asiaankuuluva PowerShell-koodi: 

#Get QUOTA-oppaat kiintiöille
$resource = "/platform/1/quota/quotas?describe"
$uri = $baseurl + $resource
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
$ISIObject

 

Seuraavassa esimerkissä kerrotaan, mitä post-testiä tarvitaan uuden kiintiön luomista varten. Kiinnitä huomiota tarvittaviin ominaisuuksiin, koska ne eivät välttämättä ole samoja ominaisuuksia kuin vastaava isi-komento edellyttää.

SLN319398_en_US__1i_isilon_1 PowerShell

Esimerkkiominaisuuksista seuraava on JSON-esimerkkimerkkijono, jonka avulla voidaan luoda hakemiston kiinteä kiintiö:

$QuotaObject = @"
{"type":"directory","include_snapshots": false,"container": true, "path": /ifs/home/user1", "enforced": tosi, "thresholds": {"hard":10000000},"thresholds_include_overhead": false}
" @ 

Kun JSON-merkkijono on valmis, jäljellä on vain Invoke-RestMethod-parametrien kokoaminen ja lähettäminen. Seuraavassa esimerkkikoodissa JSON-merkkijono on POST-testin runko ja sisältötyyppi on sovellus/json:

$headers = @{"Authorization"="Basic $($EncodedPassword)"}
$uri = $baseurl + $resource
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Body $QuotaObject -ContentType "application/json; charset=utf-8" -Method POST
Write-Host " Resulting Quota ID: " ISIObject.id $

Kaiken yhdistäminen

Oletetaan esimerkissä, että ympäristössä on useita kotihakemistoja käyttäjille yhden päähakemiston alla (esimerkiksi: /ifs/home) ja haluat määrittää hakemistokiintiöt kullekin kotihakemistolle. Käytä Isilon RESTful Access to the Namespace (RAN) API -ohjelmointirajapintaa, jotta saat polut kunkin käyttäjän kotihakemistoon. Seuraava koodi hae määritetyn polun alihakemistot ja määrittää hakemistokiintiön jokaisessa alihakemistossa:
 

# Get subdirectories of path specified
$resource = '/namespace/' + $path
$uri = $baseurl + $resource
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
#Loop kunkin hakemiston kautta ja määritä Kiintiö
ForEach ($folder in $ISIObject.children) {

#Create quota
$resource ="/platform/1/quota/quotas"
Write-Host "Setting a $quotasize tavukiintiö on $quotapath"
$QuotaObject = @"
{"type":"directory","include_snapshots": false,"container": true, "path": $quotapath, enforced, true, thresholds: {"hard":$quotasize},"thresholds_include_overhead": false}
"@
$headers = @{"Authorization"="Basic $($EncodedPassword)"}
$uri = $baseurl + $resource
$ISIObject 2 = Invoke-RestMethod -Uri $uri -Headers $headers -Body $QuotaObject -ContentType "application/json; charset=utf-8" -Method POST
Write-Host " Resulting Quota ID: – ISIObject2.id
} $

Tässä on tähän julkaisuun liitetyn komentosarjan suorittamisen tulokset:

SLN319398_en_US__2i_isilon_2 PowerShell
SLN319398_en_US__3i_isilon_3 PowerShell

Betroffene Produkte

Isilon, PowerScale OneFS, Isilon Platform API
Artikeleigenschaften
Artikelnummer: 000132770
Artikeltyp: Solution
Zuletzt geändert: 30 Jän. 2026
Version:  6
Antworten auf Ihre Fragen erhalten Sie von anderen Dell NutzerInnen
Support Services
Prüfen Sie, ob Ihr Gerät durch Support Services abgedeckt ist.