Isilon: Používání PowerShell s rozhraním API platformy – Základní informace

요약: Tento článek vysvětluje, jak se připojit ke clusteru pomocí prostředí Powershell a rozhraní PAPI (Platform API).

이 문서는 다음에 적용됩니다. 이 문서는 다음에 적용되지 않습니다. 이 문서는 특정 제품과 관련이 없습니다. 모든 제품 버전이 이 문서에 나와 있는 것은 아닙니다.

증상

není k dispozici

원인

není k dispozici

해결

Poznámka: Toto téma je součástí sady Isilon SDK – Isilon Info Hub.

Úvod
Díky zavedení nového rozhraní RESTful Platform API (PAPI) je nyní mnohem snazší a elegantnější způsob automatizace a správy clusterů Isilon pomocí prostředí Powershell. Tento článek vysvětluje základní informace o tom, jak se připojit ke clusteru pomocí nástroje Powershell a papi.

Zde důrazně doporučujeme stáhnout a přečíst referenční příručku PAPI pro vaši verzi systému OneFS.

Protože protokol PAPI poskytuje přístup ke clusteru prostřednictvím rozhraní REST, můžete manipulovat se zdroji pomocí metod HTTP, jako je GET, POST, PUT a DELETE. Reprezentace objektů a kolekcí se vyměňují jako dokumenty ve formátu JSON. Chcete-li použít protokol PAPI, musíte povolit protokol HTTP v clusteru tak, že se přihlásíte do nástroje WebUI a přejdete na: Protokoly>Nastavení> HTTP Povolte protokol HTTP.

Prostředí PowerShell v3

Prostředí Powershell v3 má vestavěné metody, které zjednodušují přístup k rozhraní RESTful. Aktuální verzi prostředí Powershell můžete zkontrolovat v $PSVersionTable hodnotu:

SLN319397_en_US__1i_isilon_powershell 2

Pokud nemáte prostředí Powershell v3 ke stažení a instalaci rozhraní .NET Framework verze 4, které najdete zde.
Poté zde stáhněte a nainstalujte příslušný rámec pro správu v3.

Připojení ke clusteru

Níže uvedené skript přijímá parametry pro IP adresu isilon nebo název hostitele, uživatelské jméno a heslo:

# Accept input parameters
Param([String]$isilonip,[String]$username,[String]$password)

Pro přístup ke zdrojům v clusteru použijeme příkaz "Invoke-Rest Framework" s příslušnými parametry. Tato metoda využívá několik parametrů, jako je řetězec URI, tělo (používané pro test POST), záhlaví atd. Následující kód vytvoří potřebné informace záhlaví a základní adresu URL pro přístup:

# Zakódování základní autorizační hlavičky a vytvoření základního znaku baseurl
$EncodedAuthorization = [System.Text.Zachytáme]::NFC8. GetBytes($username + ':' + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"
$baseurl = 'https://' + $isilonip +":8080"

V tomto příkladu přistupujeme k kvótách. Přidejte jej na základní adresu URL a vytvořte finální identifikátory URI, které předáme příkazu "Invoke-RestObject". Pokud se podíváte na dokumentaci PAPI, zjistíte, že sada zdrojů je přístupná v následujícím formátu "/platform/1/<namespace>/<collection-name>". Pokud například chceme získat kolekci objektů představujících všechny kvóty definované v clusteru, potřebujeme získat "/platform/1/quota/quotas".

$resourceurl = "/platform/1/quota/quotas"
$uri = $baseurl + $resourceurl

Nyní nazýváme Invoke-RestObject a poté přistupujeme k vráceným objektům, který obsahuje sběr kvót:
$ISIObject = Invoke-RestObject -Uri $url -Headers $headers -Method Get
$ISIObject.quotas

Zde je příklad výstupu skriptu:
SLN319397_en_US__3i_isilon_powershell 3

SLN319397_en_US__2i_isilon_powershell

K dispozici je seznam všech kvót a jejich vlastností definovaných v clusteru. Pomocí této metody PSv3 automaticky převádí výstup JSON na objekty.

Text skriptu:
####### #######

18. 9. 2013 Jeremy Smith, EMC NAS Specialist Central Division
# Upravené:

#
# ps_isilon_get_quotas_via_papi.ps1 – Získejte všechny kvóty v clusteru
Isilon# Poznámka: Aby bylo možné využívat přístup PAPI a HTTP v clusteru, musíte být ve verzi OneFS 7.0.2 nebo vyšší.
Číslo
# PARAMETERS
#
# -isilonip = node IP
# -username
# -password
# -path = /ifs directory path containing thedirectories that need quotas
# -quoatasize = size of quota bytes (např. "500000")
#
#
# EXAMPLE
# .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 10.10.10.1 -user root -password P@ssword1
# #

##############


Accept input parameters
Param([String]$isilonip,[String]$username,[String]$password)


# Ve výchozím certifikátu se obvykle zobrazí chyba certifikátu (kód od blogs.msdn.com)
add-type @"
using System.Net;
použití protokolu System.Security.Cryptography.X509Certificates;

    Veřejná třída TrustAll:  ICertificatePolicy {
public TrustAll() {}
public bool CheckResultResult (
ServicePoint sPoint, X509Certificate cert,
WebRequest req, int problem) {
return true;
    }
}
"@
[System.Net.ServicePointManager]::CertificatePolicy = new-object TrustAll



#if po zobrazení zprávy
o chybě (!( nebyly předány správné parametry $isilonip -and $username -and $password )) {
write "failed to specify parameters";
   napište "Příklad: .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 192.168.1.2 -username root -password p@ssw0rd1" ;
   exit
}




# Zakódování základní autorizační hlavičky a vytvoření kódu baseurl
$EncodedAuthorization = [System.Text.Pokořit]::NFC8. GetBytes($username + ':'     + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"}
$baseurl = 'https://' + $isilonip +":8080"
 

# Získejte všechny definované kvóty
$resourceurl = "/platform/1/quota/quotas"
$uri = $baseurl + $resourceurl
$ISIObject = Invoke-RestObject -Uri $uri -Headers $headers -Method Get
$ISIObject.quotas

해당 제품

Isilon, PowerScale OneFS, Isilon Platform API
문서 속성
문서 번호: 000177716
문서 유형: Solution
마지막 수정 시간: 20 1월 2026
버전:  7
다른 Dell 사용자에게 질문에 대한 답변 찾기
지원 서비스
디바이스에 지원 서비스가 적용되는지 확인하십시오.