Azure Files 1: Vytváříme file share v Azure

Častým požadavkem na infrastrukturu v Azure je možnost sdílet soubory mezi virtuálními stroji (a případně dalšími výpočetními službami). Standardní disky jsou vázané na konkrétní VM, standardní Storage zase neumí protokol SMB. Řešením je nenápadná služba, která se jmenuje Azure Files a která dokáže v rámci Storage vytvořit sdílené síťové úložiště přístupné přes SMB 2.1 (a také REST, jako ostatní součásti Azure).

K čemu to může být dobré? Například:

  • Přenesení on-premises aplikací , které využívají file share pro sdílení informací mezi jednotlivými součástmi. Každý virtuální stroj se díky Files může připojit ke společnému úložišti a aplikace funguje stejně jako lokálně.
  • Sdílení konfigurace distribuovaných aplikací, kdy se všechny instance napojí na společné úložiště, odkud si přečtou konfiguraci. Její změnu je tak potřeba dělat pouze na jednom místě.
  • Ukládání logů a diagnostických informací na jedno místo, které je přístupné i přes REST, takže je pak mohou načítat i aplikace mimo Azure.
  • Ukládání nástrojů používaných během vývoje a testování, takže vývojáři nemusí neustále stahovat na každý stroj sadu svých nástrojů, ale mají je dostupné na sdíleném úložišti.

Azure Files jsou stále ve stádiu Preview, takže je potřeba si službu aktivovat na billing portálu v sekci Preview Features:

https://msdntnarchive.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/65/22/metablogapi/0310.image_44661A6A.png

Poté už můžete vytvořit nový Storage Account a uvidíte u něj patřičný koncový bod:

https://msdntnarchive.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/65/22/metablogapi/6303.image_4D10B5BA.png

Pozor! Dokud jsou Files v Preview, nefungují s existujícími Storage Accounty.

Následně je potřeba vytvořit share. Nejde to udělat přes potrál, je nutné využít buď PowerShell, nebo REST API. Azure PowerShell je potřeba nejprve nainstalovat(pokud ještě nemáte) a poté použít příkaz New-AzureStorageShare:

$accountName = "<storage account>"
$accountKey = "<account key>"
$shareName = "<share name>"

$ctx = New-AzureStorageContext $accountName $accountKey
$s = New-AzureStorageShare $shareName -Context $ctx

Hodnoty znamenají:

  • accountName = název vytvořeného Storage Accountu
  • accountKey = přístupový klíč daného Accountu, zjišťuje se přes portál tlačítkem Manage Access Keys
  • shareName = libovolný název, pod kterým budete ke sdílenému úložišti přistupovat

A nakonec už stačí jenom sdílené úložiště připojit a začít používat:

net use z: \\<storage account>.file.core.windows.net\<share name> /u:<storage account> <account key>

Nebo:

https://msdntnarchive.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/00/65/22/metablogapi/6278.image_12B7D08A.png

Pozor! Aby fungoval přístup přes SMB (a tedy net use), musí být Storage i virtuální stroj ve stejném regionu. Přístupu přes REST se toto omezení netýká.

Poznámka nakonec – Azure Files mají jiné limity než disky a také vlastní cenu, která je době Preview nižší než v GA. Detaily najdete v ceníku.

Kdyby vás zajímaly podrobnější informace, najdete je v tomto článku.

Martin