Posted on

Speed of a remote backup

To build a backup environment it is recommended to follow the 3-2-1 rule.

  • Make 3 backups
  • Make 2 backups on different media
  • Make 1 backup in another location than the source data

To carry out the third tip, we very often think of the Cloud; it’s a great solution but the costs are still quite high if we need to move TB. If, on the other hand, we have to save some GB, the solution is attractive.

For companies that need to move TB of data, a solution can be backup to a remote location, for example connected with a vpn. The costs of saving the data will therefore be absorbed by the purchase costs of a fairly large NAS unit.

Let us try to detail such a solution.

Backup speed in vpn

The speed of the backup will be determined by the slowest internet connection speed between the 2 locations. Let’s suppose that the 2 offices are able to communicate at the speed of 300 Mb / s.

300 Mb / s = 300,000,000 b / s

300,000,000 b / s / 8 = 37,500,000 b / s = 37.5 MB / s

To move 1GB of data over a 300 Mb / s network, it will take 1,000 / 37.5 = 26.7 seconds

To move 1GB of data over a 100 Mb / s network, it will take 1,000 / 12.5 = 80 seconds

Backup software all have the ability to perform incremental backups but the first backup that is performed will inevitably be very long. So it needs to be planned carefully.

If we want to move a 20GB virtual machine across a 300 Mb / s network, it will take about 27 minutes. It will take us 2 hours and 15 minutes for a 1TB virtual machine. The incremental backups of the various software on the market, in “normal” conditions of server activity, allow subsequent backups to arrive at times equal to 20% of the first backup.

Choice of Backup NAS

The source site data is stored on Nas at the destination site. It is clear that choosing a NAS equipped with a 10Gb / S ethernet card does not improve our remote backup since the transfer speed of the vpn is less than 1Gb / s.

Could the NAS disks further decrease the copy speed? To answer this, let’s take a look at a table that tries to give a value to the write speeds of the various disk systems. We took the data from the wikipedia site and then processed it.

Drive

(Type / RPM )

MB/s

(64KB block, random)

MB/s

(512KB block, random)

MB/s random

average

MB/s

(large block, sequential)

MB/s sequenzial

average

FC / 15 K 9.7 – 10.8 49.7 – 63.1 33,3 73.5 – 127.5 100,5
SAS / 15 K 11.2 – 12.3 58.9 – 68.9 37,8 91.5 – 126.3 108,9
FC / 10 K 8.3 – 9.2 40.9 – 53.1 27,9 58.1 – 107.2 82,65
SAS / 10 K 8.3 – 9.2 40.9 – 53.1 27,9 58.1 – 107.2 82,65
SAS/SATA / 7200 4.4 – 4.9 24.3 – 32.1 16,4 43.4 – 97.8 70,6
SATA / 5400 3.5 22.6 13,05 47,1 (estimate)
SSD 520 520

Backup software normally writes disks sequentially, so numbers in hand, even a sata 5400 hard drive could be useful in our scenario. Buying hard drives above 7200 rpm, on the other hand, would not lead to an improvement.

Posted on

How to check the execution of Microsoft Agent Backup

To check the outcome of Microsoft Azure Backup execution we can take advantage of the fact that, if the backup fails, some events are generated.

Prepare script to send email

Copy and paste the following code in a new file and modify it with your data (mail server, user, password, messages).

$SMTPServer = "YOUR SMTP SERVER"
$SMTPPort = "25"
$Username = "USERNAME TO ACCESS SERVER"
$Password = "PASSWORD"

$to = "Email recipient"
# $cc = "cc email recipient"
$subject = "Error Backup MyServer"
$body = "backup failed"
# $attachment = ""

$message = New-Object System.Net.Mail.MailMessage
$message.subject = $subject
$message.body = $body
$message.to.add($to)
# $message.cc.add($cc)
$message.from = $username
# $message.attachments.add($attachment)

$smtp = New-Object System.Net.Mail.SmtpClient($SMTPServer, $SMTPPort);
$smtp.EnableSSL = $true
$smtp.Credentials = New-Object System.Net.NetworkCredential($Username, $Password);
$smtp.send($message)
write-host "Mail Sent"

Save it as file with extension .ps1

Creating a new Task

  1. Open the Task Scheduler : Control Panel -> Administrative Tools -> Task Scheduler
  2. Right-click the “Task Scheduler Library” branch, and select the New Folder option.
  3. Type a name for the folder. For example, MyTasks.
  4. Expand the “Task Scheduler Library” branch, and select the MyTasks folder.
  5. Click the Action menu.
  6. Select the Create Task option.

Task to check Azure Backup

  1. In the Name field you can write something like “Check Micrososft Agent Backup”.
  2. Click the Triggers tab.
  3. Click the New button.
  4. Use the “Begin the task” drop-down menu to select “On a Event”
  5. Click custom option under the Settings section.

  1. Click the Edit Event Filter… button.
  2. Go the XML tab and at the bottom of the menu press the edit query manually button.
  3. Copy and paste the below XML and OK the changes.
<QueryList>
<Query Id="0" Path="CloudBackup">
<Select Path="CloudBackup">*[System[(Level=1 or Level=2) and (EventID=5 or EventID=10 or EventID=11 or EventID=12 or EventID=13 or EventID=14 or EventID=16 or EventID=18)]]</Select>
</Query>
</QueryList>
  1. Click the Actions tab.
  2. Click the New button.
  3. Browse on the previous powershel script
  4. Clicck OK to save the task

From now on, an email should be sent to you when the backup fails.

Posted on

Ghetto backup for all (part 1)

Why to use Ghetto ?

There are a lot of backup softwares for vmware virtual machine and some are free, but in a scenario it should not be possible to use one of these : for example, if you have vmware esx hosts with old versions (4.0,5.5).

Prepare connection to esx host  via SSH

Usually you get connection to esx host using vsphere client, but you have to use ghetto script directly inside esx operating system. So you need to operate using a prompt via ssh. Download, for example, putty : https://www.putty.org/

Install putty.

SSH port in esx host is number 22. To understand if this port is open, you could open a dos prompt and type

telnet your_esx_ip_address 22

you should recive some response.

Enable SSH on the ESX Host

By default SSH is disabled on an ESXi host.

  1. Open and login to the vSphere Client
  2. Click on the configuration tab and then on Security profile
  3. Click on Properties and Remote Tech Support (SSH)
  4. Click on Options and choose the startup policy.

ESX user for SSH

To connect to esx host via putty you need to create a user on esx. Open vsphere client.

  1. Log in to the vSphere Client as a root user.
  2. Click Users & Groups.
  3. Right-click on a blank area and click Add.
  4. Enter a username and password. Confirm your password.
  5. Select Grant shell access to this user.
  6. Select root group from the dropdown and click Add > OK.

 

How to upload script on esx

Ghetto script is a file and you will have to upload on esx server this file. To do this task we”l use for example WinSCP that is a free and open-source file transfer utility for Windows. It can be used to transfer files between a local and remote machine over SSH. You can download it from here : https://winscp.net/eng/download.php

Install it. Now you have all tools and we can start to work on Ghetto.

Ghetto script

First of all you need to download ghetto from github repository : https://github.com/lamw/ghettoVCB   

Unzip it. Open with an editor the file ghettoVCB.sh. You have to update only one line of script :

VM_BACKUP_VOLUME=/vmfs/volumes/mini-local-datastore-hdd/backups

That you have to substitute with the path of the datastore where you’ll save the backup of vm.

Two options to find the datastore path :

  1. Via vsphere client : you have to find the list of datastores. Using datastore’s name the path will be : /vmfs/volumes/DATASTORENAME
  2. Usng Putty connection : go in vmfs folder, volumes folder.

Prepare virtual machine list

If you ‘ll call ghetto script , you’ll backup all machines in your esx. Instead you can backup only some specific virtual machine. Create a new file, for example mylist.txt with the esactly name of each virtual machine to backup, in each line.

Upload Files to Esx

So you have two files (ghettoVCB.sh, mylist.txt) to upload in esx environment. To do this you can use WinSCP. When the Login dialog pops up click on New Site, enter the IP address in the hostname field, the username and password and then click Login.

WinSCP window is divided in two part : on the left side there is your computer, on the right side there is the esx environment. On esx, create a new folder and upload in it the two files.

Prepare ghetto script to execute

Double click on the PuTTY shortcut , enter the IP address of the ESX  and click Open. Enter the username and your password and you should now be connected.

To continue you need to have administrator (root) priviliges. Write

su -

and enter the password of root user.

Now you need to give execution privileges to .sh file. Navigate in the folder where you have put your files and write the command

chmod +x ghettoVCB.sh

Run the script

Write the command :

./ghettoVCB.sh -f mylist.txt -l output.txt

This command will backup all the virtual machines written in mylist.txt and will write the log of process in the file output.txt in the same folder.

Posted on

prerequisites to install veeam backup and replication

To install Veem Backup and Replication on Windows 2012 server, you need :

  1. Sql server 2014 Exprees
  2. Net Framework 3.5 (install it directly from your windows server). Necessary for Sql server Managment Studio 2014
  3. Sql server managment studio 2014
  4. From Microsoft® SQL Server® 2014 Feature Pack (https://www.microsoft.com/en-us/download/details.aspx?id=42295), you have to download and install
    1. SQLSysClrTypes.msi
    2. SharedManagementObjects.msi
  5. MICROSOFT® REPORT VIEWER 2015 RUNTIME
  6. Windows 10 Universal C Runtime

 

Posted on Leave a comment

Which operating systems do Azure Backup support?

Operating System Platform VERSION
Windows 8 64 bit Enterprise, Pro
Windows 7 64 bit Ultimate, Enterprise, Professional, Home Premium, Home Basic, Starter
Windows 8.1 64 bit Enterprise, Pro
Windows 10 64 bit Enterprise, Pro, Home
Windows Server 2016 64 bit Standard, Datacenter, Essentials
Windows Server 2012 R2 64 bit Standard, Datacenter, Foundation, Essential
Windows Server 2012 64 bit Datacenter, Foundation, Standard
Windows Storage Server 2016 64 bit Standard, Workgroup
Windows Storage Server 2012 R2 64 bit Standard, Workgroup
Windows Storage Server 2012 64 bit Standard, Workgroup
Windows Server 2008 R2 SP1, 64 bit Standard, Enterprise, Datacenter, Foundation
Windows Server 2008 SP2 64 bit Standard, Enterprise, Datacenter, Foundation

Source Microsoft