none
Questions on IP addresses, durable drive and backup of disks RRS feed

  • Question

  • Hi,

    We are running an application in Azure. Due to lack of features in Azure, some parts of this application is running in Amazon EC2. We would like to migrate these parts to Azure, but I'm not sure whether it's yet possible.

    1) SFTP server. While it would be possible to run this in a VM Role, the lack of built in durable disk storage has made it cumbersome. As far as I understand, I can now set up a virtual machine with a durable drive, simply install the SFTP server software and start using it. Files stored on the machine will remain and be backed by Azure Storage. Correct? 

    2) Mail server. We have not been able to run this in Azure, since the SMTP RFC's states that DNS/MX records cannot contain CNAME records. Since no fixed IP addresses have been available in Azure, we would have to add a CNAME host name (something.cloudapp.net) to the MX record which simply is not supported by the SMTP protcol. As far as I understand, this is still an open issue. Fixed IP addresses are not available in Windows Azure. Correct?

    3) On premise/off site backup. As I understand the new functionality, the hard drive data in a virtual machine is  replicated within a data center and optionally geographically distributed. This, however, does not prevent from application errors accidentally deleting data, or hackers wiping the disk after having gained access. We want to perform on-premise backup of the data in Azure , and store this off-site, for instance in a bank vault. As I understand it, the drive image is stored in Blob Storage, so I guess it would be possible to download the VHD file directly from blob storage. But I also guess that this file is being written to by our virtual machine, which would make the consistency of the file we've downloaded unclear. Is there some way to backup the durable drive?


    Nitramafve

    Saturday, June 9, 2012 6:16 PM

Answers

  • Hi Nitramafve,

    You can use cloudXplorer tool from http://clumsyleaf.com/products/cloudxplorer to take the backup of VHD.

    Here are the steps.

    1) Download CloudXplorer from http://clumsyleaf.com/products/cloudxplorer

    2) Setup Account as below

    3) Create a new container for backups

    4) From the vhds folder of your storage account, copy the VHD file to new container you've created and then download to local machine.

    Hope this helps. I will blog about this with detailed instructions and provide link here.

    Thanks,

    Hari

    Sunday, June 10, 2012 10:07 AM
    Moderator
  • Hi Nitramafve,

    1) When using "Virtual Machines" feature of Windows Azure, data is persisted to storage.

    2) Not sure, what you meant by Fixed IP's? The VIP of the VM will be persisted until you delete the deployment. If you deploy the application again, there is no guarantee that previous IP will be assigned to your deployment.

    3) VHD's are stored in storage itself. While it is possible to copy the files from storage to on-premise machines, I'm not sure, if the VHD's copied will be in usable form. I will check and revert back on this.

    Thanks,

    Hari

    Sunday, June 10, 2012 4:29 AM
    Moderator

All replies

  • Hi Nitramafve,

    1) When using "Virtual Machines" feature of Windows Azure, data is persisted to storage.

    2) Not sure, what you meant by Fixed IP's? The VIP of the VM will be persisted until you delete the deployment. If you deploy the application again, there is no guarantee that previous IP will be assigned to your deployment.

    3) VHD's are stored in storage itself. While it is possible to copy the files from storage to on-premise machines, I'm not sure, if the VHD's copied will be in usable form. I will check and revert back on this.

    Thanks,

    Hari

    Sunday, June 10, 2012 4:29 AM
    Moderator
  • Regarding number 2. I just read about the IP address being the same until the deployment is deleted. Wasn't aware of this. Thanks! I wonder whether its possible to have reverse DNS records now though (a requirement for running a mail server). Will try to find info on this.


    Looking forward to an answer on 3.


    Nitramafve

    Sunday, June 10, 2012 7:36 AM
  • Hi Nitramafve,

    You can use cloudXplorer tool from http://clumsyleaf.com/products/cloudxplorer to take the backup of VHD.

    Here are the steps.

    1) Download CloudXplorer from http://clumsyleaf.com/products/cloudxplorer

    2) Setup Account as below

    3) Create a new container for backups

    4) From the vhds folder of your storage account, copy the VHD file to new container you've created and then download to local machine.

    Hope this helps. I will blog about this with detailed instructions and provide link here.

    Thanks,

    Hari

    Sunday, June 10, 2012 10:07 AM
    Moderator
  • Regarding using cloudXplorer like this. If I perform these steps, will the VHD file be in a transactionally correct state? Is it guaranteed that the NTFS driver in the virtual machine will operate in a way in conjunction with blob storage so that it's safe to assume that the VHD will be always be in a consistent state.


    I assume that cloudXplorer is just an example and that any tool which can be used to copy blobs would do? (I use Cloud Storage Studio from RedGate)


    Nitramafve

    Sunday, June 10, 2012 11:39 AM
  • Hey Nitramafve,

    The default setting for a Windows Azure OS disk running a Virtual Machine is to have the read and write cache turned on, for faster boot times. While the write cache is small, it does mean your transactions committed in the VM are not gauranteed to yet be transactionally written. However, I have found that Windows typically handles this small amount of transactional issue well but i would not recommend attempting this with any true datastore nor depending upon it.

    Data Disks you attach to a Virtual Machine hosted in Windows Azure storage are connected with no cache on by default, meaning writes to this disk are then transactionally gauranteed.

    You can also turn off the write cache on the OS disk using the command line tools to give that transcational gaurantee as well.

    Here is a snippet for how to do it using PowerShell:

    New-AzureVMConfig -Name 'VMName' -InstanceSize 'Small' -ImageName 'Image' -MediaLocation 'StroageAddressForDisk' |
    >>    Set-AzureOSDisk -HostCaching 'ReadOnly' |
    >>    Add-AzureProvisioningConfig -Windows -Password 'password'|
    >>    New-AzureVM -ServiceName 'ServiceName' -Location 'loc'
    >>

    Corey

    Friday, June 15, 2012 6:40 AM
    Moderator