Isilon: PowerShellin käyttäminen ympäristön ohjelmointirajapinnassa - Basics
摘要: Tässä artikkelissa selitetään, miten klusteriin muodostetaan yhteys PowerShellin ja YMPÄRISTÖN OHJELMOINTIRAJAPINNAN (RAJA) avulla.
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
–
原因
–
解决方案
Huomautus: Tämä aihe on osa Isilon SDK Isilon -tietokeskusta.
Johdanto
Uuden RESTful-alustan API:n (RAJA: KATHI) myötä Isilon-klustereita voidaan automatisoida ja hallita PowerShellin avulla paljon helpommin ja tyylikkäämmin. Tässä artikkelissa selitetään perusohjeet yhteyden muodostamiseen klusteriin PowerShellin jaRAJA:n avulla.
Suosittelemme, että lataat ja luet OneFS-versiosi TIEDOT tästä.
Klusterin VOI avata REST:n kautta, joten resursseja voi muokata HTTP-menetelmillä, kuten GET, POST, PUT ja DELETE. Kohteet ja kokoelmat vaihdetaan JSON-muotoon alustettuina tiedostoina. JOTTA voit käyttää klusterin HTTP-protokollaa, sinun on otettava klusterin HTTP käyttöön kirjautumalla verkkokäyttöliittymään ja siirtymällä kohtaan: Protokollia>HTTP-asetukset>Ota HTTP käyttöön.
ja -asennusta, .NET Framework -versio 4 löytyy täältä.
Lataa ja asenna sitten asianmukainen v3-hallintakehys tästä.
# Hyväksy syöttöparametrit
Param([string]$isilonip,[string]$username,[string]$password)
Pääset käsiksi klusterin resursseihin käyttämällä Invoke-RestMethod-tiedostoa asianmukaisilla parametreilla. Tämä menetelmä sisältää useita parametreja, kuten URI-merkkijonon, rungon (käytetään POST-testissä) ja ylätunnisteita. Seuraava koodi kokoaa tarvitsemamme otsikkotiedot ja perus-URL-osoitteen käyttöä varten:
# Encode basic authorization header and create baseurl
$EncodedAuthorization = [System.Text.Encoding]::UTF8. GetBytes ($username + ':' + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"
$baseurl = 'https://' + $isilonip +":8080"
Tässä esimerkissä käytetään kiintiöitä. Lisää se perus-URL-osoitteeseen ja luo lopullinen URI, jonka siirrämme invoke-RestMethod-ohjaimeen. JOS tarkastelet KOONTI-oppaita, huomaat, että resursseja käytetään seuraavassa muodossa /platform/1/<namespace>/<collection-name>. Jos esimerkiksi haluamme kerätä objekteja, jotka vastaavat kaikkia klusterissa määritettyjä kiintiöitä, tarvitaan "/platform/1/quota/quotas".
$resourceurl = "/platform/1/quota/quotas"
$uri = $baseurl + $resourceurl
Seuraavaksi soitetaan Invoke-RestMethod ja käytetään palautettua objektia, joka sisältää kiintiökokoelman:
Seuraavassa on esimerkki komentosarjan tuloksesta:
kaikki klusterissa määritetyt kiintiöt ja niiden ominaisuudet luetellaan. Tällä menetelmällä PSv3 muuntaa JSON-tuloksen automaattisesti objekteiksi.
Komentosarjan runko:
Johdanto
Uuden RESTful-alustan API:n (RAJA: KATHI) myötä Isilon-klustereita voidaan automatisoida ja hallita PowerShellin avulla paljon helpommin ja tyylikkäämmin. Tässä artikkelissa selitetään perusohjeet yhteyden muodostamiseen klusteriin PowerShellin jaRAJA:n avulla.
Suosittelemme, että lataat ja luet OneFS-versiosi TIEDOT tästä.
Klusterin VOI avata REST:n kautta, joten resursseja voi muokata HTTP-menetelmillä, kuten GET, POST, PUT ja DELETE. Kohteet ja kokoelmat vaihdetaan JSON-muotoon alustettuina tiedostoina. JOTTA voit käyttää klusterin HTTP-protokollaa, sinun on otettava klusterin HTTP käyttöön kirjautumalla verkkokäyttöliittymään ja siirtymällä kohtaan: Protokollia>HTTP-asetukset>Ota HTTP käyttöön.
PowerShell 3
PowerShell v3:ssa on sisäänrakennettuja tapoja, jotka yksinkertaistavat RESTful-käyttöä. Voit tarkistaa nykyisen PowerShell-versiosi tarkistamalla $PSVersionTable:Jos sinulla ei ole PowerShell v3-latausta
ja -asennusta, .NET Framework -versio 4 löytyy täältä.
Lataa ja asenna sitten asianmukainen v3-hallintakehys tästä.
Yhdistäminen klusteriin
Seuraava komentosarja hyväksyy Isilonin IP-osoitteen tai isäntänimen, käyttäjätunnuksen ja salasanan parametrit:# Hyväksy syöttöparametrit
Param([string]$isilonip,[string]$username,[string]$password)
Pääset käsiksi klusterin resursseihin käyttämällä Invoke-RestMethod-tiedostoa asianmukaisilla parametreilla. Tämä menetelmä sisältää useita parametreja, kuten URI-merkkijonon, rungon (käytetään POST-testissä) ja ylätunnisteita. Seuraava koodi kokoaa tarvitsemamme otsikkotiedot ja perus-URL-osoitteen käyttöä varten:
# Encode basic authorization header and create baseurl
$EncodedAuthorization = [System.Text.Encoding]::UTF8. GetBytes ($username + ':' + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"
$baseurl = 'https://' + $isilonip +":8080"
Tässä esimerkissä käytetään kiintiöitä. Lisää se perus-URL-osoitteeseen ja luo lopullinen URI, jonka siirrämme invoke-RestMethod-ohjaimeen. JOS tarkastelet KOONTI-oppaita, huomaat, että resursseja käytetään seuraavassa muodossa /platform/1/<namespace>/<collection-name>. Jos esimerkiksi haluamme kerätä objekteja, jotka vastaavat kaikkia klusterissa määritettyjä kiintiöitä, tarvitaan "/platform/1/quota/quotas".
$resourceurl = "/platform/1/quota/quotas"
$uri = $baseurl + $resourceurl
Seuraavaksi soitetaan Invoke-RestMethod ja käytetään palautettua objektia, joka sisältää kiintiökokoelman:
$ISIObject = Invoke-RestMethod -Uri $url -Headers $headers -Method Get
$ISIObject.quotas
$ISIObject.quotas
Seuraavassa on esimerkki komentosarjan tuloksesta:
kaikki klusterissa määritetyt kiintiöt ja niiden ominaisuudet luetellaan. Tällä menetelmällä PSv3 muuntaa JSON-tuloksen automaattisesti objekteiksi.
Komentosarjan runko:
###### ######
Luotu: 18.9.2013, Vähintään Smith, EMC NAS Specialist Central Division
# Modified:
#
#
# ps_isilon_get_quotas_via_papi.ps1 - hae kaikki Isilon-klusterin
kiintiöt# Huomautus: Klusterissa on oltava vähintään OneFS 7.0.2, jotta VOI hyödyntääOSAAmis- ja HTTP-käyttöä.
#
# PARAMETERS
#
# -isilonip = node IP
# -username
# -password
# -path = /ifs-hakemistopolku, joka sisältää kiintiöitä tarvitsevat hakemistot
# -quoatasize = kiintiötavujen koko (kuten "500000")
# #
# EXAMPLE
# .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 10.10.10.1 -user root -password P@ssword1
# #
isilonip
10.10.10.1##### ########
Syöttöparametrit
Param([String]$isilonip,[String]$username,[String]$password)
# Oletusvarmennolla näet tavallisesti cert-virheen (koodi blogs.msdn.com)
add-type @"
käyttäen System.Net;
System.Security.Cryptography.X509Certificates-sovelluksella
julkisen luokan TrustAll: ICertificatePolicy {
public TrustAll() {}
public bool CheckValidationResult (
ServicePoint sPoint, X509Certificate cert,
WebRequest req, int problem) {
return true;
}
}
"@
[System.Net.ServicePointManager]:CertificatePolicy = new-object TrustAll
#if oikeita parametreja ei hyväksytty, poistumme ilmoituksen
jälkeen, jos (!( $isilonip -and $username -and $password )) {
write "failed to specify parameters";
Kirjoita esimerkki: .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 192.168.1.2 -username root -password p@ssw0rd1;
exit
}
# Encode basic authorization header and create baseurl
$EncodedAuthorization = [System.Text.Encoding]::UTF8. GetBytes ($username + ':' + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"}
$baseurl = 'https://' + $isilonip +":8080"
# Hanki kaikki määritetyt kiintiöt
$resourceurl = "/platform/1/quota/quotas"
$uri = $baseurl + $resourceurl
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
$ISIObject.quotas
Luotu: 18.9.2013, Vähintään Smith, EMC NAS Specialist Central Division
# Modified:
#
#
# ps_isilon_get_quotas_via_papi.ps1 - hae kaikki Isilon-klusterin
kiintiöt# Huomautus: Klusterissa on oltava vähintään OneFS 7.0.2, jotta VOI hyödyntääOSAAmis- ja HTTP-käyttöä.
#
# PARAMETERS
#
# -isilonip = node IP
# -username
# -password
# -path = /ifs-hakemistopolku, joka sisältää kiintiöitä tarvitsevat hakemistot
# -quoatasize = kiintiötavujen koko (kuten "500000")
# #
# EXAMPLE
# .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 10.10.10.1 -user root -password P@ssword1
# #
isilonip
10.10.10.1##### ########
Syöttöparametrit
Param([String]$isilonip,[String]$username,[String]$password)
# Oletusvarmennolla näet tavallisesti cert-virheen (koodi blogs.msdn.com)
add-type @"
käyttäen System.Net;
System.Security.Cryptography.X509Certificates-sovelluksella
julkisen luokan TrustAll: ICertificatePolicy {
public TrustAll() {}
public bool CheckValidationResult (
ServicePoint sPoint, X509Certificate cert,
WebRequest req, int problem) {
return true;
}
}
"@
[System.Net.ServicePointManager]:CertificatePolicy = new-object TrustAll
#if oikeita parametreja ei hyväksytty, poistumme ilmoituksen
jälkeen, jos (!( $isilonip -and $username -and $password )) {
write "failed to specify parameters";
Kirjoita esimerkki: .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 192.168.1.2 -username root -password p@ssw0rd1;
exit
}
# Encode basic authorization header and create baseurl
$EncodedAuthorization = [System.Text.Encoding]::UTF8. GetBytes ($username + ':' + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"}
$baseurl = 'https://' + $isilonip +":8080"
# Hanki kaikki määritetyt kiintiöt
$resourceurl = "/platform/1/quota/quotas"
$uri = $baseurl + $resourceurl
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
$ISIObject.quotas
受影响的产品
Isilon, PowerScale OneFS, Isilon Platform API文章属性
文章编号: 000177716
文章类型: Solution
上次修改时间: 11 12月 2023
版本: 6
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。