Meet Azure Files, your new Swiss Army Knife Sandrino Di Mattia (@sandrinodm) Microsoft Azure...
-
Upload
dorothy-houston -
Category
Documents
-
view
219 -
download
4
Transcript of Meet Azure Files, your new Swiss Army Knife Sandrino Di Mattia (@sandrinodm) Microsoft Azure...
Meet Azure Files, your new
Swiss Army Knife
Sandrino Di Mattia (@sandrinodm)
Microsoft Azure Consultant at RealDolmen
Author at JustAzure.com
http://fabriccontroller.net
“Shared Drive”-as-a-ServiceAZURE FILES
Agenda
1)Azure Storage and Azure Files2)Using Azure Files3)Comparing to Azure Blobs4)Comparing to Azure Disks5)Scenarios & Demos
Azure StorageAbstractions: Blobs, Tables, Queues and now Files
5
Azure Storage Account (500 TB)
FilesBlobs
Queues
Tables
Drives (PaaS)
Disks (IaaS)
Page
Block
6
Distributed Replication Layer
Massive Scale Out & Auto Load Balancing Index Layer
Blob HeadTable Head
File Share Head
REST REST REST RESTSMB 2.1
Queue Head
Using Azure Files
8
Azure Files
West-Europe
VM
Web Site
REST
SMB 2.1RESTSMB 2.1
REST
Cloud Service
9
Azure Files
West-Europe
Other Region
Cloud Service
VM
Web Site
REST
Contoso (On-Premises)
REST
10
PowerShell
•Creating a share
$c = New-AzureStorageContext <acc> <key>New-AzureStorageShare <share> -Context $ctx
11
AzCopy
•Recursive copy
AzCopy G:\Backups\ https://acc.file.core.windows.net/share/ /DestKey:key /s
12
SMB•Creating a mapped drive
net use Z: \\acc.file.core.windows.net\share /u:acc key==
• Persisting credentials
cmdkey /add:acc.file.core.windows.net /user:acc /pass:key
13
SMB• In Code (P/Invoke)
WNetAddConnection2 (Mpr.dll)
• In Code (Using RedDog.Storage)
CloudFileShare share = client.GetShareReference("reports");share.Mount("P:");
14
SMB
•Credentials: persisted per user•Mapped drives: persisted per user context•User can have 1 normal context•User can have 1 elevated context (administrator)
•Use /runas to store credentials and map drives for other users
15
REST• Using the Storage Client Library
var fileClient = storageAccount.CreateCloudFileClient();var share = fileClient.GetShareReference("reports");if (share.Exists()){ var dir = share.GetRootDirectoryReference(); var file = dir.GetFileReference("report.txt") var content = await file.DownloadTextAsync();}
Comparing to Azure BlobsDifferences between Azure Files and Azure Blobs
17
Attribute Azure Blobs Azure Files
Durability options LRS, ZRS, GRS (and RA-GRS for higher availability)
LRS, GRS
Accessibility / Connectivity REST APIs – Worldwide REST APIs – WorldwideSMB 2.1 - Within region
Endpoints http://myaccount.blob.core.windows.net/mycontainer/myblob
\\myaccount.file.core.windows.net\myshare\myfile.txt
http://myaccount.file.core.windows.net/myshare/myfile.txt
Directories Flat namespace True directory objects
Case sensitivity of names Case sensitive Case insensitive, but case preserving
Comparing to Azure Blobs
18
Attribute Azure Blobs Azure Files
Capacity Up to 500TB containers 5TB file shares
Throughput Up to 60 MB/s per block blob Up to 60 MB/s per share
Object size Up to 200GB/block blobUp to 1TB/page blob
Up to 1 TB/file
Billed capacity Based on bytes written Based on file size
Shared Access Signatures Yes No
Client libraries Multiple languages Multiple languages
Comparing to Azure Blobs
Comparing to Azure DisksDifferences between Azure Files and Azure Disks
20
Attribute Azure Data Disks Azure Files
Scope Exclusive to a single virtual machine
Shared access across multiple virtual machines
Snapshots and Copy Yes No
Configuration Connected at startup of the virtual machine
Connected after the virtual machine has started
Authentication Built-in Set up with net use
Caching Support Yes No
Access using REST Files within the VHD cannot be accessed when Virtual Machine is running
Files stored in a share can be accessed
Comparing to Azure Disks
21
Attribute Azure Data Disks Azure Files
Max Size 1TB Disk 5TB File Share and 1TB file within share
Max 8KB IOps 500 IOps 1000 IOps
Throughput Up to 60 MB/s per Disk Up to 60 MB/s per File Share
I/O traffic Uses the Virtual Disk Driver Uses network bandwidth (same interface as your applications)
Limit Maximum 16 disks (depending on VM size: Small = 2, Medium = 4, …)
Limited to available drive letters on your VM
Comparing to Azure Disks
Scenarios & DemosLift and shift, hybrid applications, …
23
Scenarios• Lift and Shift• CMS (media folder)• Central Logging• Remote Backup (MySQL, …)• ISO / Software Repository• Centralized Configuration / IIS Shared Configuration• Lucene (Near Real Time Search)• NServiceBus (FileShareDataBus)• On-Premises Replication• High-Available FTP Server
24
Service Account
Lift and Shift
ASP.NET Web Application
Local Disk DFS
Service Account
ASP.NET Web Application
Azure Files
Storage Account Credentials
25
On-Premises Replication to Azure Files
Sync Engine (File System Watcher / ...)
Local Disk DFS
Virtual Machine
Azure Files
SMB
REST
On-PremisesWest Europe
26
High-Available FTP Server
VM 1
Azure Files
SMB
Cloud Service
VM 2
21
10000-10050 20000-20050
Links
28
Links
• Introducing Microsoft Azure File Servicehttp://blogs.msdn.com/b/windowsazurestorage/archive/2014/05/12/introducing-
microsoft-azure-file-service.aspx
•Comparing with Azure Blobs and Azure Driveshttp://msdn.microsoft.com/en-us/library/azure/dn790517.aspx
•Persisting connections to Microsoft Azure Fileshttp://blogs.msdn.com/b/windowsazurestorage/archive/2014/05/27/persisting-connections-to-microsoft-azure-files.aspx
29
Links•Azure Files on Linux
http://channel9.msdn.com/Blogs/Open/Shared-storage-on-Linux-via-Azure-Files-Preview-Part-1
•Using the Azure File Service in your Cloud Services (Web and Worker Roles)http://fabriccontroller.net/blog/posts/using-the-azure-file-service-in-your-cloud-services-web-roles-and-worker-role/
•Cloud Portamhttps://app.cloudportam.com/
• Passive FTP and Windows Azure Virtual Machineshttp://fabriccontroller.net/blog/posts/passive-ftp-and-dynamic-ports-in-iis8-and-windows-azure-virtual-machines/
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.