Isilon: Powershell'i Platform API ile Kullanma - Nesne ve RAN Oluşturma

Resumo: Bu makalede, nesne ve RAN oluşturmak için OneFS Platform API ile Powershell'in nasıl kullanılacağı açıklanmaktadır.

Este artigo aplica-se a Este artigo não se aplica a Este artigo não está vinculado a nenhum produto específico. Nem todas as versões do produto estão identificadas neste artigo.

Sintomas

Gerekli değil

Causa

Gerekli değil

Resolução

JSON'a Giriş

PAPI, veri değişim biçimi olarak JSON'u kullanır. Kaynakları oluşturmak, değiştirmek veya silmek için PAPI'yi kullanmak üzere BT'den nasıl yararlanılacağını anlamak kritik önem taşır. JSON hakkında daha fazla bilgiyi www.json.orgBu köprü bağlantı sizi Dell Technologies dışındaki bir web sitesine yönlendirir. adresinde bulabilirsiniz. Temel ilke, tamamen bağımsız bir programlama dili olması ve iki yapı üzerine inşa edilmiş olmasıdır:

  • Ad ve değer çiftleri koleksiyonu
  • Sıralı bir değer listesi

API nesnesi almanın örnek çıktısı şöyle görünebilir:

{
"<object>": {
     "<property>": <value>,
     ...
}

 

Hangi JSON metin çıktılarının kullanılabilir olduğunu bilmek için, bir nesne oluşturmak üzere bir POST komutu vermeliyiz; aşağıdaki isteği göndererek PAPI öz belgelerine bakın:

GET /platform/1/quota/quotas?describe 

İlgili Powershell kodu aşağıda verilmiştir:

#Get PAPI self documentation for quotas
$resource = "/platform/1/quota/quotas?describe"
$uri = $baseurl + $resource
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
$ISIObject

 

Aşağıdaki örnek çıktı, yeni bir kota oluşturmak için yapmanız gerekenleri özetlemektedir. Gerekli özelliklere dikkat edin, çünkü bunlar karşılık gelen için gereken özelliklerle aynı olmayabilir. isi yaparsınız.

komut çıkışı  

Örnek özellikleri kullanarak, aşağıda bir dizin sabit kotası oluşturmak için kullanılabilecek örnek bir JSON dizesi verilmiştir:

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

 

JSON dizesi tamamlandığında, geriye kalan tek şey Invoke-RestMethod parametreler ve gönder. Aşağıdaki örnek kodda, JSON dizesi POST'un gövdesidir ve içerik türü application/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
 

Hepsini Bir Araya Getirin

Bir örnek kullanarak, ortamınızın tek bir ana dizin altında kullanıcılar için birçok ana dizine sahip olduğunu varsayalım (örnek: /ifs/home) eklediyseniz ve bu ana dizinlerin her biri için dizin kotaları ayarlamak istiyorsunuz. Her kullanıcı ana dizininin yollarını almak için Isilon RESTful Access to the namespace (RAN) API'sini kullanın. Aşağıdaki kod, belirli bir yolun alt dizinlerini alır ve ardından her alt dizin için bir dizin kotası ayarlar:
 

# Get subdirectories of path specified
$resource = '/namespace/' + $path
$uri = $baseurl + $resource
$ISIObject = Invoke-RestMethod -Uri $uri -Headers $headers -Method Get
#Loop through each directory and set the quota
ForEach($folder in $ISIObject.children) {
#Create quota
$resource ="/platform/1/quota/quotas"
Write-Host "Setting a $quotasize byte quota 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
$ISIObject2 = Invoke-RestMethod -Uri $uri -Headers $headers -Body $QuotaObject -ContentType "application/json; charset=utf-8" -Method POST
Write-Host "   Resulting Quota ID: "  $ISIObject2.id
}

 

İşte bu gönderiye ekli komut dosyasını çalıştırmanın çıktısı:

Komut dosyası çıktısı  
Komut dosyası çıktısı  

Produtos afetados

Isilon, PowerScale OneFS, Isilon Platform API
Propriedades do artigo
Número do artigo: 000132770
Tipo de artigo: Solution
Último modificado: 02 abr. 2026
Versão:  7
Encontre as respostas de outros usuários da Dell para suas perguntas.
Serviços de suporte
Verifique se o dispositivo está coberto pelos serviços de suporte.