Microsoft – vZilla https://vzilla.co.uk One Step into Kubernetes and Cloud Native at a time, not forgetting the world before Mon, 22 Mar 2021 19:53:31 +0000 en-GB hourly 1 https://wordpress.org/?v=6.8.1 https://vzilla.co.uk/wp-content/uploads/2018/01/cropped-profile_picture_symbol-32x32.png Microsoft – vZilla https://vzilla.co.uk 32 32 Getting Started with Microsoft AKS – Azure PowerShell Edition https://vzilla.co.uk/vzilla-blog/getting-started-with-microsoft-aks-azure-powershell-edition https://vzilla.co.uk/vzilla-blog/getting-started-with-microsoft-aks-azure-powershell-edition#respond Tue, 23 Mar 2021 08:35:00 +0000 https://vzilla.co.uk/?p=2846 This post is going to cover off using Azure PowerShell to get a Microsoft Azure Kubernetes Service (AKS) cluster up and running in your Azure Subscription.

In the previous post, we went through the same AKS cluster creation using the Azure CLI

Which one you choose will depend on your background and usage, if you are familiar with PowerShell then you might choose this option as you might be more familiar with the object output. There are lots of posts already out there around the Azure CLI vs Azure PowerShell here is one, but I am not going to get into that here.

Install Azure PowerShell

Spoiler Alert! To use Azure PowerShell, you are going to need to install it on your system. This article explains how to install the Azure PowerShell. Or before doing this confirm that you have it already installed by running the command in your PowerShell console.

# Connect to Azure with a browser sign in token
Connect-AzAccount

With the above command, you are either going to get a wall of red text saying module not found or you will be prompted to log in to your Azure portal. Alternatively, you can just check which modules you have installed with the Get-Module command.

032221 1433 GettingStar1

Either way, you need to connect to your Azure Account and authenticate.

032221 1433 GettingStar2

Authenticate to the account you wish to use and then you will see the following in the same browser.

032221 1433 GettingStar3

Back in your PowerShell console, I am using Visual Studio Code to run through these commands I now see the following:

032221 1433 GettingStar4

Variables

I generally want to define some variables before we begin creating our AKS cluster. We will use these variables later on in our commands and you will get the complete script linked at the bottom.

$ResourceGroupName = "CadeAKS"
$ClusterName = "CadeAKSCluster"
$ClusterLocation = "eastus"
$NodeCount = "3"

Creating the Azure Resource Group

Next, we need to create a new resource group for where our AKS cluster will be hosted. Broadly speaking the Azure resource group construct is a group where resources are deployed and managed, when creating a resource group, you define a location and a name. For more information, you can find that here.

#Create a New resource group
New-AzResourceGroup -Name $ResourceGroupName -Location $ClusterLocation

032221 1433 GettingStar5

Creating your AKS Cluster

For this example, I will be using Azure PowerShell to also generate a new SSH Public Key, but if you wish to create or use an existing key then you can see the detailed process for creating that public SSH key here. The command to create your AKS cluster with your existing SSH key is as follows: Obviously pointing to the correct location of your SSH Key.

New-AzAksCluster -ResourceGroupName $ResourceGroupName -Name $ClusterName -NodeCount $NodeCount -SshKeyValue 'C:\\Users\micha\\.ssh\\id_rsa'

As I mentioned I will be creating a new cluster and with that also creating new SSH keys with the following command.

#Create the AKS cluster, GenerateSshKey is used here to authenticate to the cluster from the local machine.

New-AzAksCluster -ResourceGroupName $ResourceGroupName -Name $ClusterName -NodeCount $NodeCount -GenerateSshKey -KubernetesVersion 1.19.7

032221 1433 GettingStar6

When this is complete you will get the cluster, information posted like below.

032221 1433 GettingStar7

Accessing the Kubernetes Cluster

The first part to access is making sure you have the kubectl available on your system you can do this by running the below command.

#This will install Kubectl but i am not sure if this is needed if you already have kubectl on your system will have to test that.


Install-AzAksKubectl

Once you have this, we can now import the AKS cluster context to our kubectl configuration to access the cluster.

#Now we need to add our AKS context so we can connect


Import-AzAksCredential -ResourceGroupName $ResourceGroupName -Name $ClusterName -Force

032221 1433 GettingStar8

Now if we check the kubectl config contexts

032221 1433 GettingStar9

Deleting the AKS Cluster

When you have finished your testing, learning tasks then I would advise removing your cluster, do not just leave it running unless you really need to. By leaving it running you are going to be spending money and potentially lots of it.

When you are finished running the following command based on what we have created above.

#To Delete your cluster run the following command
Remove-AzResourceGroup -Name $ResourceGroupName -force

At this stage you might also want to delete that SSH Public Key we created above as well, and this can be done with the following command.

Remove-Item C:\Users\micha\.ssh\id_rsa

aks

You might also find this repository on GitHub useful where I store my scripts for the above as well as Azure PowerShell which I will cover in another post.

Hopefully, this will be useful to someone, as always open for feedback and if I am doing something not quite right then I am fine also to be educated and open to the community to help us all learn.

]]>
https://vzilla.co.uk/vzilla-blog/getting-started-with-microsoft-aks-azure-powershell-edition/feed 0
Getting started with Microsoft Azure Kubernetes Service (AKS) https://vzilla.co.uk/vzilla-blog/getting-started-with-microsoft-azure-kubernetes-service-aks https://vzilla.co.uk/vzilla-blog/getting-started-with-microsoft-azure-kubernetes-service-aks#comments Mon, 22 Mar 2021 12:32:03 +0000 https://vzilla.co.uk/?p=2829 In this post we will cover getting started with Microsoft Azure Kubernetes Service (AKS) much the same as the previous post covering Amazon EKS, we will walk through getting a Kubernetes cluster up and running. Now we could walk through the Azure Portal and this is pretty straight forward and if you would like to see that as a walkthrough let me know and I will cover this but I think the most appropriate way is gearing up for Infrastructure as Code.

I took the scientific approach over the weekend and asked if I should use Azure CLI or Azure PowerShell, the twitter-verse responded with their views and opinions on which one they use and why. Let’s rewind slightly we have 4 options when it comes to Microsoft AKS, Azure Portal, Azure CLI, Azure PowerShell or using an ARM Template. ARM templates will come later along with Terraform, but I wanted to understand a little more about the components you needed to get up and running. If you didn’t respond, then head on over to Twitter and let me know your choices and why. Neither is the wrong answer.

032221 1052 Gettingstar1

I decided based on the thread and feedback that I should probably take both options and simply walk through the configuration. This post will cover Azure CLI and I will make sure I also walkthrough another post covering Azure PowerShell.

Getting Started with Azure CLI

Start by downloading the Azure CLI, I am using Windows but as always you have options for macOS and Linux all found in the same location. Another option is the Azure Cloud Shell which you may have if you are using the Windows Terminal. Now I believe that this is the same as Azure CLI but more details can be found here from Sarah Lean aka Techie Lass Blog.

032221 1052 Gettingstar2

Once you have the Azure CLI downloaded and installed when you open your PowerShell window you should be able to run the following command. This confirms that you have the Azure CLI now installed on your system. This also means that I can work with my Azure CLI from my PowerShell console rather than having to open the specific tab on Windows Terminal. If you run az version on your Azure Cloud Shell you will get something very similar which is why I think this is the same.

032221 1052 Gettingstar3

The first thing we need to do is connect to our Azure account. We can do this by running the following command.

#Web Browser will open to authenticate against your subscription


az login

This is going to open a new browser window which you will need to authenticate to gain access and be able to start building things.

032221 1052 Gettingstar4

Once you have authenticated your browser will report the following

032221 1052 Gettingstar5

I am using Visual Studio Code, once you have authenticated you will see your subscription ID as per below.

032221 1052 Gettingstar6

Creating the Azure Resource Group

Next, we need to create a new resource group for where our AKS cluster will be hosted. Broadly speaking the Azure resource group construct is a group where resources are deployed and managed, when creating a resource group you define a location and a name. For more information, you can find that here.

#Create a New resource group


az group create --name AKSResourceGroup --location eastus

032221 1052 Gettingstar7

With the above we have created a resource group in the EAST US by running the following command it will output a JSON file containing the Azure Region data. All geocode locations for Azure Regions are estimates. They do not represent the actual physical location for specific data centres.

az account list-locations > azure_regions.json

Creating your AKS Cluster

For this example, I will be using Azure CLI to also generate a new SSH Public Key, but if you wish to create or use an existing key then you can see the detailed process for creating that public SSH key here. The command than to create your AKS cluster with your existing SSH key is as follows: Obviously pointing to the correct location of your SSH Key.

#If you would like to use existing SSH keys


az aks create --resource-group AKSResourceGroup --name MyAKSCluster --node-count 3 --ssh-key-value C:\\Users\micha\\.ssh\\id_rsa

As I mentioned I will be creating a new cluster and with that also creating new SSH keys with the following command.

#If you would like to generate new SSH Keys


az aks create --resource-group AKSResourceGroup --name myAKSCluster --node-count 3 --generate-ssh-keys

Once the above command is complete you are going to get a JSON output indicating what you have just built, that will look something like the following, In here you will notice some important aspects that you did not define but could do in the future to tailor your cluster to your requirements.

032221 1052 Gettingstar8

We are using Orchestrator version 1.18.14 you could define this with the following

[--kubernetes-version]

We are using a VM size of “Standard_DS2_v2” you could define this differently using the following

[--node-vm-size]

There are lots of other options as you can imagine spending some time here understanding some of those variables you could use.

Accessing the Kubernetes Cluster

Now we have our running AKS cluster we want to access this to start deploying our apps. First, we need to make sure we can access the cluster and to do this we need to run the following command. At this point, you need to make sure you have the kubectl installed on your system.

#Merge AKS Cluster with current Kubectl Configuration


az aks get-credentials --resource-group AKSResourceGroup --name myAKSCluster

you can then confirm this by running

#Confirm kubectl has new config


kubectl config get-contexts

032221 1052 Gettingstar9

At this stage, we have access to our cluster

032221 1052 Gettingstar10

If you are just getting started then I have to say that the Microsoft quickstarts are the place to be, super simple and easy walkthroughs. Some great examples of getting applications up and running from start to finish. You can find a link to a specific one on Azure CLI and AKS here.

Deleting the Kubernetes cluster

When you have finished your testing, learning tasks then I would advise removing your cluster, do not just leave it running unless you really need to. By leaving it running you are going to be spending money and potentially lots of it.

When you are finished running the following command based on what we have created above.

#Delete the Cluster


az group delete --name AKSResourceGroup --yes --no-wait

For peace of mind, you can then also double-check the portal to make sure all the resources within the resource group are also being deleted.

Kubernetes AKS

You might also find this repository on GitHub useful where I store my scripts for the above as well as Azure PowerShell which I will cover in another post.

Hopefully, this will be useful to someone, as always open for feedback and if I am doing something not quite right then I am fine also to be educated and open to the community to help us all learn.

]]>
https://vzilla.co.uk/vzilla-blog/getting-started-with-microsoft-azure-kubernetes-service-aks/feed 4
Updating your Veeam Backup for Microsoft Office 365 to v5 https://vzilla.co.uk/vzilla-blog/updating-your-veeam-backup-for-microsoft-office-365-to-v5 https://vzilla.co.uk/vzilla-blog/updating-your-veeam-backup-for-microsoft-office-365-to-v5#comments Thu, 03 Dec 2020 20:30:01 +0000 https://vzilla.co.uk/?p=2441 Yesterday I decided to walk through and record for the first time the upgrade process from the previous version of Veeam Backup for Microsoft Office 365 v4 to v5 to take advantage of all the good stuff in v5 around Microsoft Teams and some proxy enhancements, you can catch that demo here below and also the GA blog post that also went live on the day of GA here.

One of the areas that I stumbled upon was having to enable something during the process to take advantage of the new team’s functionality above so wanted to document that also.

Firstly, head on over to the download link posted in the blog linked above this post will also give you a short overview on what you can expect in v5.

Once you have that downloaded, you are good to close down the console and begin the upgrade process, advice here is to make sure all jobs are finished and nothing is scheduled for the next 10 minutes maybe longer depending on the size of the environment.

Run through the pretty simple next next upgrade process.

Then open the console and check you have the correct version. By heading here.

120320 2027 Updatingyou1

By selecting the about option, you are going to then see this following screen to show you your build number and version.

120320 2027 Updatingyou2

This shows we have successfully updated our server to v5 and we can start protecting those Microsoft Teams objects.

But before we can do that especially if you are an existing Veeam Backup for Microsoft Office 365 user then you will need to enable this option on the organisation.

120320 2027 Updatingyou3

What you are going to find is that the Microsoft Teams check box is unselected, if you wish to protect this within the organisation then select that checkbox

120320 2027 Updatingyou4

If you are a green field first time installation of Veeam Backup for Microsoft Office 365 and you are starting with v5 or newer, then when you add your organisation it is going to look like this.

120320 2027 Updatingyou5

You can see there that this is automatically selected.

]]>
https://vzilla.co.uk/vzilla-blog/updating-your-veeam-backup-for-microsoft-office-365-to-v5/feed 1
Veeam Backup for Microsoft Office 365 v5 is GA https://vzilla.co.uk/vzilla-blog/veeam-backup-for-microsoft-office-365-v5-is-ga https://vzilla.co.uk/vzilla-blog/veeam-backup-for-microsoft-office-365-v5-is-ga#comments Thu, 03 Dec 2020 16:28:08 +0000 https://vzilla.co.uk/?p=2433 In a year where the world has been reliant on remote working and collaboration tools like Microsoft Office 365, the emphasis has also grown in this space on how we protect or if we protect that data and how, our roadmap for Veeam Backup for Office 365 was always planned to have a better way to protect Microsoft Teams before the surge of many companies and users switching to remote working during 2020.

As well as making things much faster when it comes to backing up the data but more importantly the granular recovery and speed of that recovery back into your Office 365 environment.

Microsoft Teams

Microsoft Teams data was already being protected when Veeam Backup for Microsoft Office 365 was protecting your SharePoint Online environment, however when it comes to recovery it wasn’t as nice and granular to perform those recoveries. There was a great post back in 2019 talking about this way of protecting Teams data and restoring by Veeam Vanguard Falko Banaszek.

Now with v5 we have a much better way to not only capture the Microsoft Teams data but also a much faster way to recover granular items with the new Veeam Explorer for Microsoft Teams functionality.

In terms of what granular levels of recovery can we get to, well this would include your team channels, settings, permissions as well as those files and data also stored within Microsoft Teams. Then there is also the search functionality being able to search across chat and files to find the objects you require for recovery. Then for the final step of the restore you can either just grab individual files or grab multiple files and chats and restore those back to Microsoft Office 365.

The one thing not possible is backing up those GIFs but I feel the internet has a big repository of these some place already.

Proxy placement and deployment

With every Veeam release there is always a focus on Performance and Scalability, this release of v5 is no different. The ability to leverage concurrent tasks with SharePoint backup making those backups faster, but also around proxies and scalability, the number of supported proxies for Veeam Backup for Microsoft Office 365 has been increased by something silly like 5 times.

Prior to this release as well the proxies that deal with the movement of data between Microsoft Office 365 and the repository location had to be joined to a trusted domain the same as the Veeam Backup & Replication server, for most cases this is fine but there are some environments where this is not possible or wanted. V5 brings around the ability to now deploy those proxies in a non-domain joined fashion. Not only that but the Veeam Backup for Microsoft Office 365 management server also does not need to be joined to a domain. This really does enable complete flexibility and scalability in those required environments.

Cloud Field Day – Demo Time

For those that know me and the Veeam Product Strategy team you know we don’t leave home without the ability to perform a live demo, especially when it comes to Cloud Field Day and big events like that. Back earlier in 2020 when we were able to do a session there, we decided to show off Veeam Backup for Microsoft Office 365 in general but also highlighting the features and functionality that have now arrived in v5 of the product.

You can see that demo below.

Free

A lot of us will be running our own personal Office 365, and for that we still have you covered with our community edition, this is going to enable you to protect your Office 365 data to either disk or directly to object storage. You can find out more of that here.

120320 1621 VeeamBackup1

Release Notes

There is so much more than what I have just mentioned here in this post but as always I think we do a great job of noting down all of the What’s New features and functionality in the new releases here.

120320 1621 VeeamBackup2

Download

You can download the update or the whole install file by using this link

120320 1621 VeeamBackup3

I will also be recording the update process with my current v4 version of Veeam Backup for Microsoft Office 365 to this latest version, just to highlight some of these new features but also how super simple and easy the upgrade process is. You will find that appear here on my YouTube channel and alongside the existing Veeam Backup for Microsoft Office 365 demos.

]]>
https://vzilla.co.uk/vzilla-blog/veeam-backup-for-microsoft-office-365-v5-is-ga/feed 1
Automated deployment of Veeam in Microsoft Azure – Part 2 https://vzilla.co.uk/vzilla-blog/automated-deployment-of-veeam-in-microsoft-azure-part-2 https://vzilla.co.uk/vzilla-blog/automated-deployment-of-veeam-in-microsoft-azure-part-2#respond Thu, 27 Aug 2020 08:07:59 +0000 https://vzilla.co.uk/?p=2377 The first part of this series was aimed at getting a Veeam Backup & Replication Azure VM up and running from the Azure Marketplace using Azure PowerShell. A really quick and easy way to spin the system up.

The use case we are talking about is the ability to recover your backups from maybe on premises up into Microsoft Azure.

I was asked “what about AWS?” and yes of course if you are using the capacity tier option within Veeam Backup & Replication on premises and you are using the copy mode function to land a copy of your backups on AWS S3 or IBM Cloud or any S3 Compatible storage then there could be possible synergies in doing this in AWS, why I chose Microsoft Azure was simply because there is an Azure Marketplace offering we can take advantage of.

If you would like to see a similar series with AWS then let me know either on twitter or in the comments below. This will involve a different way of automating the provisioning of a Windows OS and the installation of Veeam Backup & Replication, but not too hard as we already have this functionality using Terraform & CHEF but only for vSphere but the code can be changed to work with AWS and really any platform that requires this functionality.

Veeam Configuration

As I said if you followed Part 1 of this series then you will have your Veeam server now running in Azure with no Veeam configuration.

In order for us to automate the direct restore process we need to provide some details in the script which i will share in stages and in full at the end of the post. But as a high level we need to

Add Azure Storage Account
Import Backups
Add Azure Compute Account

Then we will take those backups and run the Direct Restore to Microsoft Azure on the appropriate backups in a converted state ready to be powered on, or you can choose to power them on as part of this script process.

Firstly we need to add the Veeam snap in and connect to the local Veeam Backup & Replication Server, depending on where you run this script you will need to change the appropriate localhost below to the relevant DNS or IP Address. It is my recommendation that this is done on the server itself, but I am exploring how this PowerShell script could be hosted on your network and not publicly and used that way to fill in the secure details.


Add-PSSnapin VeeamPSSnapin

#Connects to Veeam backup server.
Connect-VBRServer -server "localhost"

Next we will add the Microsoft Azure Compute Account, this command will prompt you to login and authenticate into Microsoft Azure. I use MFA so this was the only way I could find to achieve this.


#Add Azure Compute Account

Add-VBRAzureAccount -Region Global

Next we will add the storage account, You will need to update the script with the requirements below.

Access Key – this will be based on a storage account that you have already created and you will need the long access key for authentication.

Azure Blob Account – this is the name of the storage blob account you have previously created. This is the same blob account and process that you used for adding Microsoft Azure Blob Storage to Veeam Backup & Replication on premises.


#Add Azure Storage Account

$accesskey = "ADD AZURE ACCESS KEY"
 
$blob1 = Add-VBRAzureBlobAccount -Name "AZUREBLOBACCOUT" -SharedKey $accesskey

Now we need to add our capacity tier, this is where you have been sending those backups.


#Add Capacity Tier (Microsoft Azure Blob Storage) Repository

$account = Get-VBRAzureBlobAccount -Name "AZUREBLOBACCOUNT"
 
$connect = Connect-VBRAzureBlobService -Account $account -RegionType Global -ServiceType CapacityTier

$container = Get-VBRAzureBlobContainer -Connection $connect | where {$_.name -eq 'AZURECONTAINER'}

$folder = Get-VBRAzureBlobFolder -Container $container -Connection $connect

The next part to adding capacity tier is important and I have also added this into the script, this repository needs to be added with exactly the same name that you have in your production Veeam Backup & Replication.


#The name needs to be exactly the same as you find in your production Veeam Backup & Replication server
$repositoryname = "REPOSITORYNAME"

Add-VBRAzureBlobRepository -AzureBlobFolder $folder -Connection $connect -Name $repositoryname

Next we need to import and rescan those backups that are in the Azure Blob Storage.


#Import backups from Capacity Tier Repository

$repository = Get-VBRObjectStorageRepository -Name $repositoryname

Mount-VBRObjectStorageRepository -Repository $repository
Rescan-VBREntity -AllRepositories

Now if you are using encryption then you will need the following commands instead of the one above.


#if you have used an encryption key then configure this section

$key = Get-VBREncryptionKey -Description "Object Storage Key"
Mount-VBRObjectStorageRepository -Repository $repository -EncryptionKey $key

At this point if we were to jump into the Veeam Backup & Replication console we would see our Storage and Compute accounts added to the Cloud Credential Manager, we would see the Microsoft Azure Blob Storage container added to our backup repositories and on the home screen you will see the object storage (imported) which is where you will also see the bakcups that reside there.

Next we need to create the variables in order to start our Direct Restore scenarios to Microsoft Azure.

A lot of the variables are quite self explanatory, but as a brief overview you will need to change the following to suit your backups.

VMBACKUPNAME = Which VM is it you want to restore

AZURECOMPUTEACCOUNT = this is the Azure Compute Account you added to Veeam Backup & Replication at the beginning of the script.

SUBSCRIPTIONNAME = you may have multiple subscriptions on one Azure compute account pick the appropriate one here.

STORAGEACCOUNTFORRESTOREDMACHINE = we are going to be converting that backup to your Azure Storage Group

REGION = Which Azure region would you like this to be restored to

$vmsize = this is where you will define what size Azure VM you wish to use here. In this example Basic_A0 is being used, you can change this to suit your workload.

AZURENETWORK = define the Azure Virtual Network you wish this converted machine to live.

SUBNET = Which subnet should the machine live

AZURERESOURCEGROUP = the Azure Resource Group you wish the VM to live

NAMEFORRESTOREDMACHINEINAZURE = Maybe a different naming conversion but this is what you wish to call your machine in Azure.


 #This next section will enable you to automate the Direct Restore to Microsoft Azure

$restorepoint = Get-VBRRestorePoint -Name "VMBACKUPNAME" | Sort-Object $_.creationtime -Descending | Select -First 1

$account = Get-VBRAzureAccount -Type ResourceManager -Name "AZURECOMPUTEACCOUNT"

$subscription = Get-VBRAzureSubscription -Account $account -name "SUBSCRIPTIONNAME"

$storageaccount = Get-VBRAzureStorageAccount -Subscription $subscription -Name "STORAGEACCOUNTFORRESTOREDMACHINE"

$location = Get-VBRAzureLocation -Subscription $subscription -Name "REGION"

$vmsize = Get-VBRAzureVMSize -Subscription $subscription -Location $location -Name Basic_A0

$network = Get-VBRAzureVirtualNetwork -Subscription $subscription -Name "AZURENETWORK"

$subnet = Get-VBRAzureVirtualNetworkSubnet -Network $network -Name "SUBNET"

$resourcegroup = Get-VBRAzureResourceGroup -Subscription $subscription -Name "AZURERESOURCEGROUP"

$RestoredVMName1 = "NAMEOFRESTOREDMACHINEINAZURE"

Now we have everything added to Veeam Backup & Replication, We have all the variables for our machines that we wish to convert and recover to Microsoft Azure VMs. Next is to start the restore process.


Start-VBRVMRestoreToAzure -RestorePoint $restorepoint -Subscription $subscription -StorageAccount $storageaccount -VmSize $vmsize -VirtualNetwork $network -VirtualSubnet $subnet -ResourceGroup $resourcegroup -VmName $RestoredVMName1 -Reason "Automated DR to the Cloud Testing"

The full script can be found here


#This script will automate the configuration steps of adding the following steps
#Add Azure Compute Account
#Add Azure Storage Account
#Add Capacity Tier (Microsoft Azure Blob Storage) Repository
#Import backups from Capacity Tier Repository
#This will then enable you to perform Direct Restore to Azure the image based backups you require.

Add-PSSnapin VeeamPSSnapin

#Connects to Veeam backup server.
Connect-VBRServer -server "localhost"

#Add Azure Compute Account

#Need to think of a better way to run this as this will close down PowerShell when installing
msiexec.exe /I "C:\Program Files\Veeam\Backup and Replication\Console\azure-powershell.5.1.1.msi"

Add-VBRAzureAccount -Region Global

#Add Azure Storage Account

$accesskey = "ADD AZURE ACCESS KEY"
 
$blob1 = Add-VBRAzureBlobAccount -Name "AZUREBLOBACCOUT" -SharedKey $accesskey

#Add Capacity Tier (Microsoft Azure Blob Storage) Repository

$account = Get-VBRAzureBlobAccount -Name "AZUREBLOBACCOUNT"
 
$connect = Connect-VBRAzureBlobService -Account $account -RegionType Global -ServiceType CapacityTier

$container = Get-VBRAzureBlobContainer -Connection $connect | where {$_.name -eq 'AZURECONTAINER'}

$folder = Get-VBRAzureBlobFolder -Container $container -Connection $connect

#The name needs to be exactly the same as you find in your production Veeam Backup & Replication server
$repositoryname = "REPOSITORYNAME"

Add-VBRAzureBlobRepository -AzureBlobFolder $folder -Connection $connect -Name $repositoryname

#Import backups from Capacity Tier Repository

$repository = Get-VBRObjectStorageRepository -Name $repositoryname

Mount-VBRObjectStorageRepository -Repository $repository
Rescan-VBREntity -AllRepositories

#if you have used an encryption key then configure this section

#$key = Get-VBREncryptionKey -Description "Object Storage Key"
#Mount-VBRObjectStorageRepository -Repository $repository -EncryptionKey $key

 #This next section will enable you to automate the Direct Restore to Microsoft Azure

$restorepoint = Get-VBRRestorePoint -Name "VMBACKUPNAME" | Sort-Object $_.creationtime -Descending | Select -First 1

$account = Get-VBRAzureAccount -Type ResourceManager -Name "AZURECOMPUTEACCOUNT"

$subscription = Get-VBRAzureSubscription -Account $account -name "SUBSCRIPTIONNAME"

$storageaccount = Get-VBRAzureStorageAccount -Subscription $subscription -Name "STORAGEACCOUNTFORRESTOREDMACHINE"

$location = Get-VBRAzureLocation -Subscription $subscription -Name "REGION"

$vmsize = Get-VBRAzureVMSize -Subscription $subscription -Location $location -Name Basic_A0

$network = Get-VBRAzureVirtualNetwork -Subscription $subscription -Name "AZURENETWORK"

$subnet = Get-VBRAzureVirtualNetworkSubnet -Network $network -Name "SUBNET"

$resourcegroup = Get-VBRAzureResourceGroup -Subscription $subscription -Name "AZURERESOURCEGROUP"

$RestoredVMName1 = "NAMEOFRESTOREDMACHINEINAZURE"


Start-VBRVMRestoreToAzure -RestorePoint $restorepoint -Subscription $subscription -StorageAccount $storageaccount -VmSize $vmsize -VirtualNetwork $network -VirtualSubnet $subnet -ResourceGroup $resourcegroup -VmName $RestoredVMName1 -Reason "Automated DR to the Cloud Testing"

You will also find the most up to date and committed PowerShell script here within the GitHub repository.

Feedback is key on this one and would love to make this work better and faster. Feedback welcome below in the comments as well as getting hold of me on Twitter.

]]>
https://vzilla.co.uk/vzilla-blog/automated-deployment-of-veeam-in-microsoft-azure-part-2/feed 0
Automated deployment of Veeam in Microsoft Azure – Part 1 https://vzilla.co.uk/vzilla-blog/automated-deployment-of-veeam-in-microsoft-azure-part-1 https://vzilla.co.uk/vzilla-blog/automated-deployment-of-veeam-in-microsoft-azure-part-1#respond Wed, 26 Aug 2020 15:58:43 +0000 https://vzilla.co.uk/?p=2373 For those that saw this post and the video demo that walks through the manual steps to get your instance of Veeam Backup & Replication running in Microsoft Azure. I decided although that was still quick to deploy it can always be quicker. Then following on from this post we will then look at the automation of the Veeam configuration as well as the direct restore functionality from in this instance Microsoft Azure Blob Storage into Azure VMs.

Installing Azure PowerShell

In order for us to start this automated deployment we need to install locally on our machine the Azure PowerShell module.

More details of that can be found here.

Run the following code on your system.


if ($PSVersionTable.PSEdition -eq 'Desktop' -and (Get-Module -Name AzureRM -ListAvailable)) {
    Write-Warning -Message ('Az module not installed. Having both the AzureRM and ' +
      'Az modules installed at the same time is not supported.')
} else {
    Install-Module -Name Az -AllowClobber -Scope CurrentUser

Select either [Y] Yes or [A] Yes to All as this is an untrusted repository. You can also change currentuser to allusers if you wish to enable for all users on the local machine.

Breaking down the code

This section is going to talk through the steps taken in the code, the way in which this will work though is by taking this code from the GitHub Repository you will be able to modify the variables and begin testing yourself without any actual code changes.

First we need to connect to our Azure account, this will provide you with a web browser to login to your Azure Portal, if you are using MFA then this will enable you to authenticate this way also.


# Connect to Azure with a browser sign in token
Connect-AzAccount

Next we want to start defining what, where and how we want this to look in our Azure accounts. It should be pretty straight forward to understand the following but

locName = Azure Location

Publisher Name = Veeam

Offer Name = is the particular offering we wish to deploy from the publisher, there are quite a few so expect to see other options using this method.

SkuName = what product sku of the offering do you wish to use

version = what version of the product


# Set the Marketplace image
$locName="EASTUS"
$pubName="veeam"
$offerName="veeam-backup-replication"
$skuName="veeam-backup-replication-v10"
$version = "10.0.1"

The following are aligned to the environment.

resourcegroup = which resource group do you wish to use this can be an existing resource group or a new name

vmname = what name do you wish your Veeam Backup & Replication server to have within your Azure environment

vmsize = this is the image that will be used, my advice to pick the supported sizes, this is the default size used for production environments.


# Variables for common values
$resourceGroup = "CadeTestingVBR"
$vmName = "CadeVBR"
$vmSize = "Standard_F4s_v2"

Next we need to agree to the license terms of deploying from the marketplace for this specific VM Image. The following commands will do this.


Get-AzVMImage -Location $locName -PublisherName $pubName -Offer $offerName -Skus $skuName -Version $version

$agreementTerms=Get-AzMarketplaceterms -Publisher "veeam" -Product "veeam-backup-replication" -Name "10.0.1"

Set-AzMarketplaceTerms -Publisher "veeam" -Product "veeam-backup-replication" -Name "10.0.1" -Terms $agreementTerms -Accept

If you wish to review the terms then you can do by running the following command. Spoiler alert the command will give you a link to a txt file to save you the hassle here is the link in the txt file where you will find the Veeam EULA – https://www.veeam.com/eula.html


Get-AzMarketplaceTerms -Publisher "veeam" -Product "veeam-backup-replication" -Name "10.0.1"

Next we need to start defining how our Veeam Backup & Replication server will look in regards to configuration of network, authentication and security.

I also wanted to keep this script following best practice and not containing any usernames or passwords so the first config setting is to gather the username and password for your deployed machine in a secure string.


# Create user object
$cred = Get-Credential -Message "Enter a username and password for the virtual machine."

Create a resource group


# Create a resource group

New-AzResourceGroup -Name $resourceGroup -Location $locname -force

Create a subnet configuration


# Create a subnet configuration
$subnetConfig = New-AzVirtualNetworkSubnetConfig -Name "cadesubvbr" -AddressPrefix 10.0.0.0/24

Create a virtual network


# Create a virtual network
$vnet = New-AzVirtualNetwork -ResourceGroupName $resourceGroup -Location $locName `
  -Name CadeVBRNet -AddressPrefix 10.0.0.0/24 -Subnet $subnetConfig

Create a public IP Address


# Create a public IP address and specify a DNS name
$pip = New-AzPublicIpAddress -ResourceGroupName $resourceGroup -Location $locName `
  -Name "CadeVBR$(Get-Random)" -AllocationMethod Static -IdleTimeoutInMinutes 4

Create inbound security group rule for RDP


# Create an inbound network security group rule for port 3389
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name CadeVBRSecurityGroupRuleRDP  -Protocol Tcp `
  -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * `
  -DestinationPortRange 3389 -Access Allow

Create network security group


# Create a network security group
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $resourceGroup -Location $locName `
  -Name CadeVBRNetSecurityGroup -SecurityRules $nsgRuleRDP

Create a virtual network


# Create a virtual network card and associate with public IP address and NSG
$nic = New-AzNetworkInterface -Name CadeVBRNIC -ResourceGroupName $resourceGroup -Location $locName `
  -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id

Next we need to define what the virtual machine configuration is going to look in our environment using the above environment configurations.


#Create a virtual machine configuration

$vmConfig = New-AzVMConfig -VMName "$vmName" -VMSize $vmSize
$vmConfig = Set-AzVMPlan -VM $vmConfig -Publisher $pubName -Product $offerName -Name $skuName
$vmConfig = Set-AzVMOperatingSystem -Windows -VM $vmConfig -ComputerName $vmName -Credential $cred
$vmConfig = Set-AzVMSourceImage -VM $vmConfig -PublisherName $pubName -Offer $offerName -Skus $skuName -Version $version
$vmConfig = Add-AzVMNetworkInterface -Id $nic.Id -VM $vmConfig

Then now we have everything we need we can now begin deploying the machine.


# Create a virtual machine
New-AzVM -ResourceGroupName $resourceGroup -Location $locName -VM $vmConfig

If you saw the video demo you would have seen that the deployment really does not take long at all, I actually think using this method is a little faster either way less than 5 minutes to quickly deploy a Veeam Backup & Replication server in Microsoft Azure.

Now that we have our machine there is one thing we want to do to ensure the next stages of configuration run smoothly. Out of the box there is a requirement for Azure PowerShell to be installed to be able to use the Azure Compute accounts and Direct Restore to Microsoft Azure. The installer is already on the deployed box and if we go through manually you would have to just install that msi instead in this script we remote run a powershell script from GitHub that will do it for you.


# Start Script installation of Azure PowerShell requirement for adding Azure Compute Account
Set-AzVMCustomScriptExtension -ResourceGroupName $resourceGroup `
    -VMName $vmName `
    -Location $locName `
    -FileUri https://raw.githubusercontent.com/MichaelCade/veeamdr/master/AzurePowerShellInstaller.ps1 `
    -Run 'AzurePowerShellInstaller.ps1' `
    -Name DemoScriptExtension

At this stage the PowerShell installation for me has required a reboot but it is very fast and generally up within 10-15 seconds. So we run the following command to pause the command before then understanding what that public IP is and then start a Windows Remote Desktop to that IP address.


Start-Sleep -s 15

Write-host "Your public IP address is $($pip.IpAddress)"
mstsc /v:$($pip.IpAddress)

Now, this might seem like a long winded approach to getting something up and running but with this combined into one script and you having the ability to create all of this on demand brings a powerful story to being able to recover workloads into Microsoft Azure.

In the next parts to this post will concentrate on a configuration script which is where we will configure Veeam Backup & Replication to attach the Microsoft Azure Blob Storage where our backups reside, Our Azure Compute Account and then we can look at how we could automate end to end this process to bring your machines up in Microsoft Azure when you need them or before you need them.

here is the complete script


# Connect to Azure with a browser sign in token
Connect-AzAccount

# Set the Marketplace image
$locName="EASTUS"
$pubName="veeam"
$offerName="veeam-backup-replication"
$skuName="veeam-backup-replication-v10"
$version = "10.0.1"

# Variables for common values
$resourceGroup = "CadeTestingVBR"
$vmName = "CadeVBR"
$vmSize = "Standard_F4s_v2"
$StorageSku = "Premium_LRS"
$StorageName = "cadestorage"

Get-AzVMImage -Location $locName -PublisherName $pubName -Offer $offerName -Skus $skuName -Version $version

$agreementTerms=Get-AzMarketplaceterms -Publisher "veeam" -Product "veeam-backup-replication" -Name "10.0.1"

Set-AzMarketplaceTerms -Publisher "veeam" -Product "veeam-backup-replication" -Name "10.0.1" -Terms $agreementTerms -Accept


# Create user object
$cred = Get-Credential -Message "Enter a username and password for the virtual machine."

# Create a resource group

New-AzResourceGroup -Name $resourceGroup -Location $locname -force

# Create a subnet configuration
$subnetConfig = New-AzVirtualNetworkSubnetConfig -Name "cadesubvbr" -AddressPrefix 10.0.0.0/24

# Create a virtual network
$vnet = New-AzVirtualNetwork -ResourceGroupName $resourceGroup -Location $locName `
  -Name CadeVBRNet -AddressPrefix 10.0.0.0/24 -Subnet $subnetConfig

# Create a public IP address and specify a DNS name
$pip = New-AzPublicIpAddress -ResourceGroupName $resourceGroup -Location $locName `
  -Name "CadeVBR$(Get-Random)" -AllocationMethod Static -IdleTimeoutInMinutes 4

# Create an inbound network security group rule for port 3389
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name CadeVBRSecurityGroupRuleRDP  -Protocol Tcp `
  -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * `
  -DestinationPortRange 3389 -Access Allow

# Create a network security group
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $resourceGroup -Location $locName `
  -Name CadeVBRNetSecurityGroup -SecurityRules $nsgRuleRDP

# Create a virtual network card and associate with public IP address and NSG
$nic = New-AzNetworkInterface -Name CadeVBRNIC -ResourceGroupName $resourceGroup -Location $locName `
  -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id

# Create a virtual machine configuration
#vmConfig = New-AzVMConfig -VMName $vmName -VMSize $vmSize | `
#Set-AzVMOperatingSystem -Windows -ComputerName $vmName -Credential $cred | `
#Set-AzVMSourceImage -VM $vmConfig -PublisherName $pubName -Offer $offerName -Skus $skuName -Version $version | `
#Add-AzVMNetworkInterface -Id $nic.Id

#Create a virtual machine configuration

$vmConfig = New-AzVMConfig -VMName "$vmName" -VMSize $vmSize
$vmConfig = Set-AzVMPlan -VM $vmConfig -Publisher $pubName -Product $offerName -Name $skuName
$vmConfig = Set-AzVMOperatingSystem -Windows -VM $vmConfig -ComputerName $vmName -Credential $cred
$vmConfig = Set-AzVMSourceImage -VM $vmConfig -PublisherName $pubName -Offer $offerName -Skus $skuName -Version $version
$vmConfig = Add-AzVMNetworkInterface -Id $nic.Id -VM $vmConfig

# Create a virtual machine
New-AzVM -ResourceGroupName $resourceGroup -Location $locName -VM $vmConfig

# Start Script installation of Azure PowerShell requirement for adding Azure Compute Account
Set-AzVMCustomScriptExtension -ResourceGroupName $resourceGroup `
    -VMName $vmName `
    -Location $locName `
    -FileUri https://raw.githubusercontent.com/MichaelCade/veeamdr/master/AzurePowerShellInstaller.ps1 `
    -Run 'AzurePowerShellInstaller.ps1' `
    -Name DemoScriptExtension

Start-Sleep -s 15

Write-host "Your public IP address is $($pip.IpAddress)"
mstsc /v:$($pip.IpAddress)

You can also find this version and updated versions of this script here in my GitHub repository.

Any comments feedback either down below here, twitter or on GitHub.

]]>
https://vzilla.co.uk/vzilla-blog/automated-deployment-of-veeam-in-microsoft-azure-part-1/feed 0
Disaster Recovery to the Cloud https://vzilla.co.uk/vzilla-blog/disaster-recovery-to-the-cloud https://vzilla.co.uk/vzilla-blog/disaster-recovery-to-the-cloud#comments Wed, 19 Aug 2020 12:20:48 +0000 https://vzilla.co.uk/?p=2334 I think it is fair to say, the public cloud is very much in everyone’s mind when looking at an IT refresh or how you approach the constant requirement to innovate on where you enable your business to do more. A constant conversation we are having is around the ability to send workloads to the cloud by using our Direct Restore to Microsoft Azure or AWS, taking care of the conversion process and configuration migration. The most common use case to date has been around performing testing against specific application stacks. Then it comes down to data recovery, for example if you have a failure scenario on premises that maybe doesn’t require the complete failover to a DR site but maybe some virtualisation hosts are in an outage situation and you are now requiring those workloads that lived on those hosts to be ran somewhere whilst remediation takes place. Both use cases that Veeam Backup & Replication have been able to achieve for several years and versions.

But disaster recovery always carries a level of speed. The process of taking your virtual machine backups and restoring them to the public cloud offerings takes some time, maybe outside the required SLAs the business has set. With the most recent version update of Veeam Backup & Replication v10a this process of conversion has been dramatically enhanced, and speed is now a game changer and this Disaster Recovery to the Cloud may now fit within those SLAs that were maybe once impossible using this process.

10,000ft view

Let’s think about your environment or an environment, you have your vSphere / Hyper-V / Nutanix virtualisation environment on premises running your virtual machines. You are using Veeam Backup & Replication to protect these machines on a daily or twice daily or more frequent schedule. You maybe had the requirement to directly restore certain image based backups to Microsoft Azure or AWS for some testing or development, but you likely would not have considered this as a way of recovering those workloads should a failure scenario happen in your environment. What you likely had or have for Disaster Recovery is another site running similar hardware and you are using replication technologies to move your workloads between the sites for that failover.

Maybe you are not familiar with Direct Restore to Microsoft Azure you can find out more here in a previous post. A similar post can be found here for AWS.

Speed Improvements

As previously mentioned the key part of being able to now think of this direct restore option as a Disaster Recovery scenario are the speed improvements that were introduced in the recent Veeam Backup & Replication 10a update. If we go back to v10 that was released early 2020 this will enable me to share how much faster this process is now.

This video demo walks through in detail of some of those restore scenarios generally focused around test and development or data recovery but not full disaster recovery options.

You will see in the 10a update post linked above that there was also a test performed at the time to show you when and where to use the Azure proxy and also depending on your environment variables what speed you would see in regards to direct restore to Microsoft Azure. The below table shows the comparison between 10 and 10a across the board.

081920 1219 DisasterRec1

This video demo in the section below shows the final two results and how this can be achieved.

The Situation

Let’s think about the situation of, our local site is toast, we may not have any access to our local on premises Veeam Backup & Replication server either, but hopefully and if not you should be sending your data offsite to a different location. Preferably into Object Storage, for the purpose of the post I am going to talk to the fact that we are sending our backups into Microsoft Azure Blob Storage as our offsite copy.

We are using Scale Out Backup Repository on premises as our performance tier and Microsoft Azure Blob Storage for our capacity tier.

But we cannot access that Veeam Backup & Replication server! That is ok, the Veeam Backup & Replication server is just software that can be installed on any Windows OS (supported but can be client versions if really need be)

We have also made it super easy to deploy a Veeam Backup & Replication server from the Microsoft Azure Marketplace and this takes 5 minutes! You then add your object storage, import your backup metadata and then you can start the improved direct restore to Microsoft Azure from this machine.

This video shows this process from top to bottom and highlights the speed improvements from the version 10 release.

Other thoughts?

Ok, so we have mentioned Disaster Recovery, this is only applicable if your SLAs allow it, we must get the data converted and up and running in the public cloud and all of this is going to take time. There are ways to streamline this deployment and configuration of the Azure based Veeam Backup & Replication, I am currently working on this process to make things super-fast and streamlined.

I also want to shout out Ian, one of our Senior Systems Engineers here at Veeam. He has been doing some stuff and helping me with some of this process here.

The other angle that could be taken here is around DR testing without affecting or running through a bad outage or failure to the actual live production systems.

You should be able to automate most of the process to make sure that these machines are seen to be up and running and talking to each other in Microsoft Azure or AWS and then auto power off and either sat there waiting for an actual failure scenario or removed from the public cloud.

More of these ideas to come.

]]>
https://vzilla.co.uk/vzilla-blog/disaster-recovery-to-the-cloud/feed 1
A sweet Chocolatey way of deploying your Veeam Software https://vzilla.co.uk/vzilla-blog/a-sweet-chocolatey-way-of-deploying-your-veeam-software https://vzilla.co.uk/vzilla-blog/a-sweet-chocolatey-way-of-deploying-your-veeam-software#respond Mon, 17 Aug 2020 10:18:41 +0000 https://vzilla.co.uk/?p=2325 The ways in which you can deploy Veeam Backup & Replication and all Veeam products for that matter is vast. You could just take the ISO and install on the physical or virtual and click next, next, and you can be protecting your workloads and data within 15 minutes. This is the same software regardless of the size of your environment, no where flexibility in deployment does become a challenge is when you have many sites that require their own Veeam Backup & Replication configuration.

This is where automation plays a huge part in this story, the great thing about Veeam is that it is software only so you can choose where you deploy this, could be on a virtual machine, physical system or a cloud based VM.

There are many angles to take when it comes to automating the deployment of Veeam Backup & Replication, we can leverage configuration management software, unattended install scripts or package management solutions.

081720 1018 AsweetChoco1

Deployment Options

As mentioned above there is quite several ways to leverage configuration management software to automate the deployment and installation of Veeam Backup & Replication. Here are some of those examples:

Veeam & Chef

Cooking up some Veeam deployment with CHEF automation – Part 1

Cooking up some Veeam deployment with CHEF automation – Part 2

Veeam & Ansible

Veeam unattended installation with Ansible – Thanks to Markus Kraus for the effort put in here on this project.

Windows Package Management

Another way to quickly install Veeam Backup & Replication on your Windows operating system is by using a package manager, I hear you shouting at your screen… but there is no package manager in Windows! This is true but there is Chocolatey.

Chocolatey is FREE and an Open Source package manager for Windows. Package managers are great for installing and managing multiple programs at the same time. Chocolatey do offer a pro-business version. I have previously touched on Chocolatey in previous posts here and also here which covers how to install the Veeam agent for Windows using this simple to use package manager. But these posts go back to 2018 and in the world of automation that’s a little while back and if you now go and take a search on the chocolatey site for Veeam and you are going to find a load more options for deploying various different Veeam products.

081720 1018 AsweetChoco2

This is where I have to make a BIG shout out to another of the Veeam Vanguards who has contributed so much in this space, to help is company with some of those deployment challenges at scale by using chocolatey to achieve that but then has the done the community thing by sharing those efforts for everyone to take advantage of.

You can find the contributions of Maurice Kevenaar here on his Chocolatey Profile. Twitter

Big shout out to Maurice here again on the community effort and the contributions in general across the chocolatey packages.

What is available for installation?

Those familiar with Veeam Backup & Replication may be aware that there are many components available that can be individually scaled out depending on your environment. You are able to deploy that all in one server but then you can start deploying separate components into different systems across the estate such as the catalog service or the Veeam explorers that give you the application item level recovery options for your application servers.

All in one Veeam Backup & Replication server

Maurice has also added additional packages for installing other Veeam products such as Veeam ONE and Veeam Backup for Microsoft Office 365 all via chocolatey and a simple command within your Windows OS.

The other package to shine a light on is the extract utility, a tool that allows you to extract your Veeam image-based backups (VBK, VIB, VRB) without requiring a full installation of Veeam Backup & Replication, even though Community Edition gives you all the recovery options. This means that any Veeam backup file mentioned above can be accessed, opened and extracted on both Windows and Linux (Chocolatey package for Windows Only) without the requirement of a full blown Veeam installation. This is massive and some of the benefits I mentioned here on why this is important as you need to ensure you have access to this data and you are not tied to a specific vendor in years to come because they can only open the backup files with a full copy of the software and full restore functionality is also generally required.

The purpose of the post was to highlight yet another great community effort but also the flexibility when it comes to the deployment of Veeam products.

There will be a follow up YouTube walkthrough on how this looks and how easy it is to get things up and running using Chocolatey

]]>
https://vzilla.co.uk/vzilla-blog/a-sweet-chocolatey-way-of-deploying-your-veeam-software/feed 0
Veeam Backup & Replication 10a Released – Another Release https://vzilla.co.uk/vzilla-blog/veeam-backup-replication-10a-released-another-release https://vzilla.co.uk/vzilla-blog/veeam-backup-replication-10a-released-another-release#comments Tue, 28 Jul 2020 10:57:34 +0000 https://vzilla.co.uk/?p=2309 The releases just keep coming from Veeam this year, we have seen releases to the flagship products within the Veeam Availability Suite which consist of Veeam Backup & Replication and Veeam ONE, releases for your Cloud IaaS backup requirements with offerings for both AWS and Azure. SaaS backup aimed at Microsoft Office 365. Business continuity and disaster recovery with Veeam Availability Orchestrator and that’s just the big releases. There have also been some updates.

10a released today, and this release concentrates on and addresses issues reported by customers, but it wouldn’t be a Veeam release if it did not contain some new features and functionality.

Platform Support

I mentioned earlier that we have been releasing at some pace new products and new versions of products and that included Veeam Backup for AWS. I have done covered this product in this YouTube playlist. Very much released as a standalone product but also allowed for the new Veeam Universal License so you had the flexible way of being able to move workloads around your environments whilst always ensuring Veeam would be able to protect your workloads and data.

The new feature in 10a addresses that standalone management of Veeam Backup & Replication and Veeam Backup for AWS, this new plug in also released today enables you to unlock some more centralised management for the Veeam Backup for AWS product. The ability to connect to an existing or deploy a new appliance. Then being able to configure your S3 Backup repository for the appliance also known as your external repository which was already there from v10 of the release earlier in the year, but you had to create that manually in the AWS management console and add to both Veeam Backup & Replication and Veeam Backup for AWS.

But that’s not all you also can create, edit, start and stop your AWS backup policies from within Veeam Backup & Replication. Amongst some more pretty cool features. You can download this plugin from here.

  • Monitor session statistics.
  • View created snapshots and image-level backups.
  • Restore entire EC2 instances as Amazon EC2 instances or Microsoft Azure VMs.
  • Instantly restore EC2 instances as VMs into VMware vSphere or Hyper-V environment.
  • Export EC2 instance volumes as virtual disks.

072820 1044 VeeamBackup1

Ok that was probably the biggest thing for 10a, but there is also support for many new operating system versions, taken from the linked KB article above.

  • Microsoft Windows 10 version 2004 and Microsoft Windows Server SAC version 2004 support as guest OS, as Hyper-V servers, for the installation of Veeam Backup & Replication components, and for agent-based backup with the Veeam Agent for Microsoft Windows 4.0.1 (included in the update).
  • Linux Kernel version 5.7 support for guest VMs, for the installation of Veeam Backup & Replication components, and for agent-based backup with the Veeam Agent for Linux 4.0.1 (included in the update).
  • RHEL 8.2, CentOS 8.2, Oracle Linux 8.2 (RHCK) and VMware Photon OS support for guest processing functionality in host-based backup jobs.
  • RHEL 8.2, CentOS 8.2, Oracle Linux 8.2 (RHCK), Ubuntu 20.04, Debian 10.4, openSUSE Leap 15.2, Oracle Linux 8 (up to UEK R6) and Fedora 32 (up to kernel 5.7.7) distributions support in the Veeam Backup & Replication agent management functionality.
  • VMware vCloud Director 10.1 support and better handling of deployments without network access to vCD cells.
  • Recent Azure Stack versions support. Please refer to the documentation for additional registry settings required depending on your version.

There was also some storage enhancement support around primary storage integrations with HPE Primera, secondary storage system support for Dell EMC Data Domain all this detail can be found in the KB article linked above.

NAS Backup

The noticeable new enhancement around NAS backup is the ability to support Azure File Sync, for those not familiar with Azure File Sync it enables the following

  • Synchronise file shares between offices
  • Fix problems with full file servers by using tiered storage in the cloud
  • Use online backup
  • Get a DR solution for file servers, e.g. small business or branch office

072820 1044 VeeamBackup2

The issue with Veeam Backup & Replication prior to this 10a release is we were not aware of the cloud tiering but now files not present in the local cache will be backed up directly from Azure. I am going to try and set this up and create a video demo, I think this might be useful for all, let me know if you are interested in the comments below.

Ah yes, another thing added in 10a related to NAS backup is for the first 250GB of NAS data it will be protected for FREE!

Restore

It wouldn’t be a Veeam release if there was not some focus on restore and restore speed and performance, the one I have picked from the notes is the enhancements around Direct Restore to Azure. I have spent a lot of time in testing out restore scenarios from either backup locations or if using a proxy within Azure would make a difference.

I will have to jump back on this testing and confirm how much quicker this same process is with the new enhancements. The below image shows the testing prior to this new 10a release.

072820 1044 VeeamBackup3

Another massive release and we are just calling it an update. I have seen the list of what else we can expect for the rest of the year and it will not disappoint.

]]>
https://vzilla.co.uk/vzilla-blog/veeam-backup-replication-10a-released-another-release/feed 3
Veeam Direct Restore to Microsoft Azure, It is not new but… https://vzilla.co.uk/vzilla-blog/veeam-direct-restore-to-microsoft-azure-it-is-not-new-but https://vzilla.co.uk/vzilla-blog/veeam-direct-restore-to-microsoft-azure-it-is-not-new-but#comments Mon, 04 May 2020 08:41:00 +0000 https://vzilla.co.uk/?p=2184 What if I told you, you could take any Veeam image based backup and convert / restore that to an Azure virtual machine without the requirement of any additional storage or file system within Azure other than the disks and resources required to run that virtual machine or virtual machines.

And what if I told you, this has been around for years with Veeam Backup & Replication. Veeam have had this capability for a while now since 2016 in fact.

Primary use cases that we have seen have been,

Test and development

When you have the public cloud at your fingertips why not take advantage of it? Instead of having to purchase specific test and development environments. Also, perfect idea if you are looking to just see how certain apps and workloads are going to run in Microsoft Azure.

Data Migration

Let’s say you know where you are going and that is Microsoft Azure, how are you going to get those workloads there in a fast and efficient manner, Direct Restore to Microsoft Azure enables a fast way to restore those backups to the public cloud without compromising on keeping the restore points and more to the point the rollback is back to those production systems you also still have on premises.

Data recovery

We tend to talk about the bad failure scenarios, or we think nothing will happen to us and not really touch on the in between. What if you lost half your production virtualisation servers due to an outage of some description? What would you do? This feature within Veeam Backup & Replication enables you to restore some of your workloads from backups into Microsoft Azure you can then use an existing VPN or some other connectivity to join the environments and continue working or you could use VeeamPN to achieve this.

Walkthrough

In this YouTube video I walk through how easy and simple it is to get those image-based backups restored into Microsoft Azure as native Azure VMs for some of those use cases mentioned above. This also ties into the Veeam Backup for Microsoft Azure that was released this week.

Where should I run the conversion process?

I ran some tests for this one to determine for my lab where and what would be the best practice when it comes to restoring workloads into Microsoft Azure. Veeam offers a lot of choice when it comes to restore and how to assist when environmental challenges are in the way. Things like link speed to the public cloud due to location or other reasons for that. Also since the release of this feature back in 2016 there have also been many other enhancements and features added to Veeam Backup & Replication including the new Veeam Cloud Tier which gives us the ability to store our backups in Object storage, well we can also recover from those as well. This video linked below goes into more detail around where and what considerations you should take when looking to restore workloads to the public cloud.

Cloud Tier

It is only right that we have spoken about protecting native Azure VMs using the Veeam Backup for Microsoft Azure, we have spoken about getting your image based backups from either virtual or physical platforms that you have on premises or even in other public clouds to Microsoft Azure so I had to mention Cloud Tier or Capacity tier on how we can tier our backups or copy our backups into Microsoft Azure Blob Storage for either a long term retention or an offsite copy of your data.

Couple all these features together and we have a pretty dynamic and flexible way of being able to move data to from and within the public clouds.

If you have any questions or comments, feedback at all on the videos then please let me know either here in the comments, on the YouTube channel or on Twitter, a side note here is that I will be creating more video content over the next few weeks whilst we are stuck at home, I for one have been consuming a lot more of my news and education through YouTube and judging by the uptake in subscriptions I think you are too so let me know anything you want to see or for me to walk through.

]]>
https://vzilla.co.uk/vzilla-blog/veeam-direct-restore-to-microsoft-azure-it-is-not-new-but/feed 4