Azure Storage Mover is a service that simplifies the migration of data between Azure Blob Storage and Azure File Storage. It's designed to reduce the complexity and risk associated with large-scale data migrations.
To get started with Azure Storage Mover, you'll need to create a storage account in the Azure portal. This will be the central hub for managing your migration process.
Azure Storage Mover supports migrations between Azure Blob Storage and Azure File Storage, as well as between different storage accounts. You can choose the source and target storage accounts based on your specific needs.
The service uses a polling mechanism to check for new files in the source storage account, allowing for a seamless migration process.
Suggestion: Upload File to Azure Blob Storage
Prerequisites
Before you start deploying an Azure Storage Mover, you should read the Planning for a storage mover deployment article to get the best practices for selecting an Azure region and more.
To deploy a storage mover, you need to have the appropriate permissions in your selected subscription and resource group. This means being a member of the Contributor or Owner RBAC role for the selected resource group.
You can deploy a storage mover using three different methods: Azure portal, Azure CLI, or Azure PowerShell.
To decide on a subscription, resource group, region, and name for your storage mover, refer to the Planning for an Azure Storage Mover deployment article for best practices.
You'll need to choose a supported name for your storage mover, which can be found in the resource naming convention.
Here are the deployment methods you can use to create a storage mover:
- Azure portal
- Azure CLI
- Azure PowerShell
Before creating a storage mover, ensure you have an Azure subscription and two existing Azure Storage accounts with Blobs in one of them.
Setup and Migration
To set up Azure Storage Mover, you'll need an Azure subscription, an Azure Storage Account with a Blob Container, an NFS Share hosted on a Windows Virtual Machine, and a Storage Mover Agent deployed within your lab. This setup allows you to test the service and migrate data between sources and targets.
You can create a Storage Mover project by clicking on "create project" in the main Storage Mover window, and then filling in the basic details. A job definition within this project can be created by clicking on "create job" and filling in the job details, which includes several screens.
To add source and target endpoints, you can click on "Storage endpoints" in the Storage Mover portal, and then create a target endpoint by selecting your subscription, storage account, and container, and providing a description. You can also create a source endpoint by selecting your source NFS Share and providing the necessary details.
Readers also liked: How to Create a Blob Storage in Azure
Prepare PowerShell Environment
To prepare your Azure PowerShell environment, you'll first need to install the Az.StorageMover module if you haven't already.
The Install Azure PowerShell article has more details on how to do this. If you're new to Azure, this might be a good place to start.
To deploy a storage mover resource, you'll need to supply values for the required -Name, -ResourceGroupName, and -Region parameters.
Supported Sources and Targets for a Move
Azure Storage Mover currently supports the migration of NFS shares to an Azure Blob Container. This means you can easily move your data from an NFS share to a cloud-based storage solution.
For a detailed overview of the supported sources and targets, check out the official documentation on the Microsoft Azure website.
Setup and Testing
To set up and test the Service, you'll need an Azure Subscription, an Azure Storage Account with a Blob Container, an NFS Share hosted on a Windows Virtual Machine, and a Storage Mover Agent deployed within your Lab.
Here are the key components required for the setup:
- Azure Subscription
- Azure Storage Account with a Blob Container
- NFS Share hosted on a Windows Virtual Machine
- Storage Mover Agent deployed within your Lab
Start by browsing to your NFS share, where you'll find some data waiting to be transferred. The target destination is an empty Azure Storage Account with a Blob Container, which will store the migrated data.
The Project explorer window will guide you through the process, requiring you to click on "create project" again to initiate the transfer. You'll need to fill in basic details and click on "create" to proceed.
A different take: What Is the Data Storage in Azure Called
Creating the
Creating the Storage Mover is a crucial step in setting up Storage Mover. This is done from within the Azure Portal.
You'll need to click on "Create storage mover" to get started. Then, you can fill in a few basic details to begin the process.
Adding monitoring to Storage Mover is an option, which enables metrics and logs to be collected. This can be done during the creation process.
Once you've filled in the necessary details, you can move on to the "Review + create" pane and create the Resource. After this is done, you can see your Storage Mover in the Azure Portal.
The next step is to deploy the Azure Storage Mover Resource. This is a straightforward process that sets the stage for the rest of your setup and migration process.
Related reading: Create a Storage Account in Azure
Adding Our Endpoints
Adding our Storage Endpoints is a crucial step in the migration process.
To start, you'll need to create a target endpoint, which is the destination where your data will be moved to. You can do this by visiting your Storage Mover in the Portal and clicking on "Storage endpoints", then "Create endpoint", and selecting "Create target endpoint."
You might enjoy: Azure Storage Account Private Endpoint
Select your subscription, storage account, and container, and provide a description for your endpoint. Once you've filled in the details, click on "Create" to add your target endpoint.
Your target endpoint is now added, and you can move on to adding your source endpoint. To do this, click on the "Create endpoint" dropdown and select "Create source endpoint."
You'll need to add the details of your source NFS share, including the server name, share name, and username and password. Once you've filled in the details, click on "Create" to add your source endpoint.
Now you have both your source and target endpoints configured, and you're ready to move on to the next step in the migration process.
Migration
Migration is a straightforward process using Storage Mover. You can create a project and a job within this project from the main Storage Mover window.
To set up a job, you'll need to fill in the job definition details, which involves a few screens. The job will then show as "Queued" while the agent picks up the job.
The migration process can be impacted by several factors, including network quality, compute resources, and the ability to process files, folders, and their metadata.
Here are some key factors that affect migration performance:
- Migration scenario: Copying into an empty target is faster than copying into a target with content.
- Namespace item count: Migrating 1 GiB of small files takes more time than migrating 1 GiB of larger files.
- Namespace shape: A wide folder hierarchy lends itself to more parallel processing than a narrow or deep directory structure.
- Namespace churn: How many files, folders, and metadata have changed between two copy runs from the same source to the same target.
- Network
- Migration agent resources: The amount of memory (RAM), number of compute cores, and even the amount of available, local disk capacity on the migration agent can have a profound impact on the migration velocity.
In a traditional migration, a strategy to minimize downtime of the workload that depends on the storage that is to be migrated is often used. Azure Storage Mover supports such a strategy, called convergent, n-pass migration. This involves copying from source to target several times, with the source remaining available for read and write to the workload until the final copy iteration.
Scale Targets
Azure Storage Mover can handle large-scale migrations with ease. It's tested with 100 million namespace items, which includes files and folders.
This scale target is a significant benchmark, indicating the service can handle massive amounts of data. The performance of a storage migration service is a key aspect for any migration.
Azure Storage Mover is designed to efficiently migrate large datasets. Your experience may vary, but the service is built to handle complex migrations.
The performance test results show the service's capabilities, but it's essential to note that your experience may differ.
Additional reading: Which Azure Storage Service Supports Big Data Analytics
Sources
- https://jakewalsh.co.uk/testing-out-azure-storage-mover/
- https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/storage-mover/performance-targets.md
- https://learn.microsoft.com/en-us/azure/storage-mover/storage-mover-create
- https://microsoft.github.io/AzureTipsAndTricks/blog/tip367.html
- https://www.cloudthat.com/resources/blog/simplifying-cloud-data-migration-with-azure-storage-mover
Featured Images: pexels.com