Windows Azure Tippek – Storage kezelése Powershell-ből

Új cikksorozatunkban minden bejegyzésben néhány hasznos, az Azure használata közben felmerülő gyakorlati újdonságot és tippet mutatunk be olvasóink számára. Az első témánk az Azure Storage kezelése Powershell-el:

Mire is jó az Azure Storage? Részlet a könyv 7. IaaS – Storage fejezetből:

A Blob Storage szolgáltatás egy masszív fájlszerverként képzelhető el. Fájlokat (blobokat) lehet ide feltölteni, nagyon megbízhatóan tárolni, nemzetközileg terjeszteni és így tovább. A korábban megismert IaaS virtuális gépek merevlemezei is voltaképpen fájlok, amik az Azure Blob Storage szolgáltatásban vannak tárolva.

Felmerülhet a kérdés, hogy hogyan tudunk egyszerűen fájlokat feltölteni az Azure Storage tárterületre PowerShell segítségével. Ahogy a könyvben olvashattál róla, az Azure Storage „igazi” API-ja egy REST API, amin keresztül nyers HTTP kérésekkel lehet utasításokat adni a szolgáltatásnak. Minden más hozzáférési technológia, legyen szó PowerShellről, a .NET-es StorageClient könyvtárról vagy az egyéb osztálykönyvtárakról, ezt a REST API-t használja.

Töltsük le a legújabb (0.6.12) Windows Azure PowerShell kiegészítőt az alábbi linkről, vagy telepítsük fel a Web Platform Installer segítségével. Ennek segítsévégel már nem csak vhd fájlokat tudunk PowerShell-en keresztül feltölteni, hanem bármilyen blob tartalmat.

Ha fel szeretnénk tölteni valamilyen fájlt, akkor használjuk bátran az alábbi kódrészletet (természetesen az előfizetésünkhöz tartozó adatokat meg kell adnunk)

[System.Reflection.Assembly]::LoadFrom("C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-10\bin\Microsoft.WindowsAzure.StorageClient.dll")
$account = [Microsoft.WindowsAzure.CloudStorageAccount]::Parse("DefaultEndpointsProtocol=https;AccountName=mystorage;AccountKey=mykey")
$client = [Microsoft.WindowsAzure.StorageClient.CloudStorageAccountStorageClientExtensions]::CreateCloudBlobClient($account)
$blob = $client.GetBlockBlob('container\adw.bacpac')
$blob.UploadFile("c:\bu\adw.bacpac")

Az új blob cmdlet-ek használatával mindössze két sorra tudjuk leegyszerüsíteni a fenti kódrészletet:

$context = New-AzureStorageContext -StorageAccountName mystorage -StorageAccountKey mykey
Set-AzureStorageBlobContent -Blob "adw.bacpac" -Container container -File "c:\bu\adw.bacpac" -Context $context -Force

Néhány egyszerű, Storage használatához kapcsolódó PowerShell code snippet:

Windows Azure előfizetési adatok lekérdezése:

{
Write-Host "Selection: Show Me List of Windows Azure Subscriptions" -ForegroundColor Magenta
sleep -seconds 1
Get-AzureSubscription | select SubscriptionName, IsDefault
Write-Host "Subscrption with Isdefault Value - True will be used for operation" -ForegroundColor Magenta
}

Storage account információk lekérdezése:

{
Write-Host "Selection: List of Windows Azure Storage Services" -ForegroundColor Magenta
sleep -seconds 1
Get-AzureStorageAccount |select label, Location
}

Új Storage account létrehozása egy megadott helyen:

{
Write-Host "Selection: Create New Windows Azure Storage Account in a Specified Location" -ForegroundColor Magenta
sleep -seconds 1
#New-AzureStorageAccount [-StorageAccountName] <String> [-Description <String>] [-Label <String>] -Location <String> [<CommonParameters>]
[string]$tempStorageAccountName = $(Read-Host -prompt "Please specify new Windows Azure Storage Account Name: ")
[string]$tempDescription = $(Read-Host -prompt "Please specify Description for Windows Azure Storage Account: ")
[string]$tempLabel = $(Read-Host -prompt "Please specify Display Name for Windows Azure Storage Account: ")
Get-AzureLocation | select Name
[string]$tempLocation = $(Read-Host -prompt "Please specify Location for Windows Azure Storage Account (from Above List): ")
New-AzureStorageAccount -StorageAccountName $tempStorageAccountName -Description $tempDescription -Label $tempLabel -Location $tempLocation
Write-Host "Storage account $tempLabel has been created in $tempLocation"
}

A PowerShell iránt mélyebben érdeklődők számára ajánljuk az elektronikus formátumban ingyenesen elérhető, magyar nyelvű PowerShell könyvet.

Próbáld ki te is! Regisztrálj az ingyenes, próba Azure előfizetésre!

Holnap folytatjuk!

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s