Isilon: Powershell'i Platform API ile Kullanma - Temel Bilgiler (İngilizce)

요약: Bu makalede, Powershell ve PAPI (platform API) kullanılarak bir kümeye nasıl bağlanacakları açıklanmaktadır.

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

증상

yok

원인

yok

해결

Not: Bu konu, Isilon SDK - Isilon Bilgi Merkezi'nin bir parçasıdır.

Giriş
Yeni RESTful platform API'si (PAPI) kullanıma sunulurken Artık Powershell kullanarak Isilon kümelerini otomatikleştirmek ve yönetmek için çok daha kolay ve daha zarif bir yolu vardır. Bu makalede, Powershell ve PAPI kullanarak bir kümeye bağlanmayla ilgili temel bilgiler açıklanmaktadır.

OneFS sürümünüz için PAPI referans kılavuzunu buradan indirip okumanız kesinlikle önerilir.

PAPI, REST aracılığıyla kümeye erişim sağlandığından GET, POST, PUT ve DELETE gibi HTTP yöntemlerini kullanarak kaynakları değiştirebilirsiniz. Nesnelerin ve koleksiyonların gösterimleri JSON biçimli belgeler olarak değiştiriler. PAPI'yi kullanmak için WebUI'de oturum açmak ve aşağıdakilere giderek kümede HTTP'yi etkinleştirmeniz gerekir: Protokol>HTTP Ayarları>HTTP'yi etkinleştir.

Powershell v3

Powershell v3, RESTful erişimi basitleştiren yerleşik yöntemlere sahip. Powershell v3 indirmeniz ve burada bulunan .NET Framework sürüm 4'ü yüklemeniz yoksa şu $PSVersionTable değerine bakarak mevcut Powershell

SLN319397_en_US__1i_isilon_powershell-2

sürümünüzü kontrol edin.
Ardından uygun v3 yönetim çerçevesini buradan indirip takın.

Kümeye bağlanma

Aşağıdaki komut dosyası Isilon IP adresi veya ana bilgisayar adı, kullanıcı adı ve parola için parametreleri kabul eder:

# Parametre([String]$isilonip
,[String]$username,[String]$password) giriş parametrelerini kabul edin

Kümedeki kaynaklara erişmek için uygun parametrelerle "Invoke-RestMethod" (Invoke-RestMethod) komutunu kullanıruz. Bu yöntem, URI dizesi, gövde (POST için kullanılır), üst bilgi vb. gibi çeşitli parametreler kullanır. Aşağıdaki kod, ihtiyacımız olan başlık bilgilerini ve erişim için temel URL'yi oluşturur:

# Temel yetkilendirme başlığını kodlayın ve baseurl
$EncodedAuthorization = [System.Text.Encode]::UTF8 oluşturun. GetBytes ($username + ':' + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"
$baseurl = 'https://' + $isilonip +":8080"

Bu örnekte kotalara erişacağız. Son URI'yi oluşturmak için "Invoke-RestMethod" (Invoke-RestMethod) öğesine ekley rondelayı temel URL'ye ekleyin. PAPI belgelerine bakarak bir kaynak koleksiyonuna aşağıdaki biçimde "/platform/1/namespace></<collection-name" erişilir>. Örneğin, kümede tanımlanan tüm kotaları temsil eden nesnelerin koleksiyonunu almak istiyorsanız "/platform/1/quota/quota/quotas" elde etmek gerekir.

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

Şimdi Invoke-RestMethod(Invoke-RestMethod) adı verilir ve ardından kota koleksiyonunu içeren döndürülen nesneye erişin:
$ISIObject = Invoke-RestMethod -Uri $url -Headers $headers -Method Get$ISIObject.quotas ($ISIObject = Invoke-RestMethod -Uri $url -Headers $headers -Yöntem Al
$ISIObject.quotas)

Komut dosyası çıktısının bir örneği aşağıda verilmiştir:
SLN319397_en_US__3i_isilon_powershell-3

SLN319397_en_US__2i_isilon_powershell

Kümede tanımlanan tüm kotaların ve bunların özelliklerini içeren bir liste bulunur. Bu yöntemi kullanarak PSv3, JSON çıktıyı otomatik olarak nesnelere dönüştürer.

Komut dosyası gövdesi:
##############################

Oluşturuldu: 18.09.2013, EMC NAS Uzmanı Central Division
# Tarafından Değiştirildi:

#
# ps_isilon_get_quotas_via_papi.ps1 - Isilon kümesindeki tüm kotaları al
# Not: PAPI'yi kullanmak için OneFS 7.0.2 veya üstü bir sürüme sahip olun ve kümede HTTP Erişimi etkinleştirilmelidir.
# #
# PARAMETERS
#
# -isilonip = node IP
# -username
# -password
# -path = /ifs directory path containing the directories that need quotas
# -quoatasize = size of quota bytes (ör. "500000")
# #

# EXAMPLE
# .\ps_isilon_get_quotas_via_papi.ps1 -isilonip 10.10.10.1 -user root -password P@ssword1
#
#
################################


#
Parametre([Dize]$isilonip,[Dize]$username,[Dize]$password)


# Giriş parametrelerini kabul et# Varsayılan bir sertifikayla normalde bir sertifika hatası (blogs.msdn.com)
add-type @"
using System.Net;
System.Security.Cryptography.X509Certificates kullanarak;

    genel sınıf 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
doğru parametreler aktarılamadı. (!) mesajından sonra çıkılır $isilonip -ve $username -ve $password )) { write "failed to specify parameters" (parametreler belirtilemedi) {
yazma;
   yazma "Örnek: .\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.Encode]::UTF8. GetBytes ($username + ':'     + $password)
$EncodedPassword = [System.Convert]::ToBase64String($EncodedAuthorization)
$headers = @{"Authorization"="Basic $($EncodedPassword)"}
$baseurl = 'https://' + $isilonip +":8080"
 

#
Tüm tanımlı kotaları alın $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
마지막 수정 시간: 20 1월 2026
버전:  7
다른 Dell 사용자에게 질문에 대한 답변 찾기
지원 서비스
디바이스에 지원 서비스가 적용되는지 확인하십시오.