Aracılığıyla paylaş


Hızlı Başlangıç: PowerShell ile blobları karşıya yükleme, indirme ve listeleme

Azure kaynaklarını oluşturmak ve yönetmek için Azure PowerShell modülünü kullanın. Azure kaynaklarını PowerShell komut satırından veya betiklerde oluşturabilir veya yönetebilirsiniz. Bu kılavuzda, dosyaları yerel disk ile Azure Blob depolama arasında aktarmak için PowerShell'in kullanılması açıklanmaktadır.

Prerequisites

Azure Depolama'ya erişmek için bir Azure aboneliğiniz olmalıdır. Henüz aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Ayrıca Azure Depolama kapsayıcılarını ve bloblarını okumak, yazmak ve silmek için Depolama Blobu Veri Katkıda Bulunanı rolüne de ihtiyacınız olacaktır.

Note

Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Bu hızlı başlangıç için Azure PowerShell modülü Az sürüm 0.7 veya üzeri gerekir. Sürümü bulmak için Get-InstalledModule -Name Az -AllVersions | select Name,Version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekiyorsa bkz. Azure PowerShell modülünü yükleme.

Azure'a Giriş Yap

Connect-AzAccount komutuyla Azure aboneliğinizde oturum açın ve ekrandaki yönergeleri izleyin.

Connect-AzAccount

Hangi konumu kullanmak istediğinizi bilmiyorsanız, kullanılabilir konumları listeleyebilirsiniz. Aşağıdaki kod örneğini kullanarak konum listesini görüntüleyin ve kullanmak istediğiniz konumu bulun. Bu örnekte eastus kullanılmıştır. Konumu bir değişkende depolayın ve değişkeni tek bir yerde değiştirebilmeniz için kullanın.

Get-AzLocation | Select-Object -Property Location
$Location = 'eastus'

Bir kaynak grubu oluşturun

New-AzResourceGroup ile bir Azure kaynak grubu oluşturun. Kaynak grubu, Azure kaynaklarının dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır.

$ResourceGroup = 'MyResourceGroup'
New-AzResourceGroup -Name $ResourceGroup -Location $Location

Depolama hesabı oluşturma

New-AzStorageAccount kullanarak LRS çoğaltması ile standart, genel amaçlı bir depolama hesabı oluşturun. Ardından, kullanmak istediğiniz depolama hesabını tanımlayan depolama hesabı bağlamını alın. Bir depolama hesabıyla ilgili işlem yaparken, kimlik bilgilerini tekrar tekrar geçirmek yerine bağlamı kullanın. Yerel olarak yedekli depolama (LRS) ve blob şifrelemesi (varsayılan olarak etkin) ile mystorageaccount adlı bir depolama hesabı oluşturmak için aşağıdaki örneği kullanın.

$StorageHT = @{
  ResourceGroupName = $ResourceGroup
  Name              = 'mystorageaccount'
  SkuName           = 'Standard_LRS'
  Location          =  $Location
}
$StorageAccount = New-AzStorageAccount @StorageHT
$Context = $StorageAccount.Context

Kapsayıcı oluşturma

Bloblar her zaman bir kapsayıcıya yüklenir. Blob gruplarını, bilgisayarınızdaki dosyalarınızı klasörler halinde düzenlediğiniz gibi düzenleyebilirsiniz.

Kapsayıcı adını ayarlayın, ardından New-AzStorageContainer kullanarak kapsayıcıyı oluşturun. Bu örnekteki kapsayıcı adı hızlı başlangıçbloblarıdır.

$ContainerName = 'quickstartblobs'
New-AzStorageContainer -Name $ContainerName -Context $Context

Blobları kapsayıcıya yükleme

Blob depolama blok blobları, ekleme bloblarını ve sayfa bloblarını destekler. IaaS VM'lerini destekleyen VHD dosyaları sayfa bloblarıdır. Günlükler için, bir dosyaya yazdıktan sonra daha fazla bilgi eklemeye devam etmek istediğiniz durumlarda, ek blobları kullanın. Blob depolamada depolanan çoğu dosya blok blobudur.

Blok blob'a dosya yüklemek için, bir kapsayıcıya referans alın ve ardından o kapsayıcıdaki blok blob'a referans alın. Blob başvurusuna sahip olduktan sonra Set-AzStorageBlobContent komutunu kullanarak verileri bu başvuruya yükleyebilirsiniz. Bu işlem, yoksa blobu oluşturur veya varsa blobun üzerine yazar.

Aşağıdaki örnekler Image001.jpg ve Image002.png, yerel disk üzerindeki D:\Images klasöründen oluşturduğunuz kapsayıcıya yükler.

# upload a file to the default account (inferred) access tier
$Blob1HT = @{
  File             = 'D:\Images\Image001.jpg'
  Container        = $ContainerName
  Blob             = "Image001.jpg"
  Context          = $Context
  StandardBlobTier = 'Hot'
}
Set-AzStorageBlobContent @Blob1HT
  
 # upload another file to the Cool access tier
 $Blob2HT = @{
  File             = 'D:\Images\Image002.jpg'
  Container        = $ContainerName
  Blob             = 'Image002.png'
  Context          = $Context
  StandardBlobTier = 'Cool'
 }
 Set-AzStorageBlobContent @Blob2HT
  
# upload a file to a folder to the Archive access tier
$Blob3HT = @{
  File             = 'D:\Images\FolderName\Image003.jpg'
  Container        = $ContainerName
  Blob             = 'FolderName/Image003.jpg'
  Context          = $Context
  StandardBlobTier = 'Archive'
}
Set-AzStorageBlobContent @Blob3HT


Devam etmeden önce istediğiniz sayıda dosyayı karşıya yükleyin.

Kapsayıcıdaki blobları listeleme

Get-AzStorageBlob kullanarak kapsayıcıdaki blobların listesini alın. Bu örnek, yüklenen blobların adlarını listeler.

Get-AzStorageBlob -Container $ContainerName -Context $Context |
  Select-Object -Property Name

Blob’ları indirme

Blobları yerel diskinize indirin. İndirmek istediğiniz her blob için adı ayarlayın ve blobu indirmek için Get-AzStorageBlobContent öğesini çağırın.

Bu örnek blobları yerel diskte D:\Images\Downloads konumuna indirir.

# Download first blob
$DLBlob1HT = @{
  Blob        = 'Image001.jpg'
  Container   = $ContainerName
  Destination = 'D:\Images\Downloads\'
  Context     = $Context
}
Get-AzStorageBlobContent @DLBlob1HT

# Download another blob
$DLBlob2HT = @{
  Blob        = 'Image002.png'
  Container   = $ContainerName
  Destination = 'D:\Images\Downloads\'
  Context     = $Context  
}
Get-AzStorageBlobContent @DLBlob2HT

AzCopy ile veri aktarımı

AzCopy komut satırı yardımcı programı, Azure Depolama için yüksek performanslı, betiklenebilir veri aktarımı sunar. Blob depolama ve Azure Dosyaları arasında veri aktarmak amacıyla AzCopy'yi kullanabilirsiniz. AzCopy'nin en son sürümü olan AzCopy v10 hakkında daha fazla bilgi için bkz . AzCopy'yi kullanmaya başlama. Blob depolama ile AzCopy v10 kullanma hakkında bilgi edinmek için bkz . AzCopy ve Blob depolama ile veri aktarma.

Aşağıdaki örnek, yerel bir dosyayı bloba yüklemek için AzCopy'yi kullanır. Örnek değerleri kendi değerlerinizle değiştirmeyi unutmayın:

azcopy login
azcopy copy 'D:\Images\Image001.jpg' "https://$StorageAccountName.blob.core.windows.net/$ContainerName/NewGaphic.jpg"

Kaynakları temizle

Oluşturduğunuz tüm varlıkları kaldırın. Varlıkları kaldırmanın en kolay yolu kaynak grubunu silmektir. Kaynak grubunun kaldırılması, gruba dahil edilen tüm kaynakları da siler. Aşağıdaki örnekte, kaynak grubunun kaldırılması depolama hesabını ve kaynak grubunun kendisini kaldırır.

Remove-AzResourceGroup -Name $ResourceGroup 

Sonraki Adımlar

Bu hızlı başlangıçta, dosyaları yerel bir dosya sistemi ile Azure Blob depolama arasında aktaracaksınız. PowerShell kullanarak Blob depolama ile çalışma hakkında daha fazla bilgi edinmek için aşağıdaki bir seçeneği belirleyin.

Microsoft Azure PowerShell Depolama cmdlet'leri başvurusu

Microsoft Azure Storage Explorer

  • Microsoft Azure Depolama Gezgini , Microsoft'un Windows, macOS ve Linux'ta Azure Depolama verileriyle görsel olarak çalışmanızı sağlayan ücretsiz, tek başına bir uygulamasıdır.