Solved

Amazon EC2 Backup Strategy

Posted on 2009-04-04
5
2,872 Views
Last Modified: 2014-11-12
Experts,
We are moving our Dotnetnuke websites and applications to Amazon EC2.
1. I'd like to know the best backup strategy to put in place in the unlikely event the Instance fails and we lose all of our data.
2. If an instance fails the Elastic IP is de-allocated and the DNS will be pointing to an invalid server. How do we resolve this? Is there a Dynamic DNS solution recommended?

Environment:
Windows Server 2003 x64
SQL Server 2008
Dotnetnuke 4.90


Thanks
0
Comment
Question by:itproject
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
5 Comments
 
LVL 1

Expert Comment

by:Espeto
ID: 24067910
1. You can use Elastic Block Store for you data or can create backup to S3 Amazon service.
2. This can resolve heartbeat and simple bash scripts. Or script can pin instance and allocate EIP to other instance via amazon api tools.
0
 

Author Comment

by:itproject
ID: 24069483
Thanks, I've read similar high level approaches on Amazon aws and various forums but there aren't any detailed guides on "how" to implement this.

Do you have any step by step guides or example scripts?

Do I store the website files, SQL server data files and binaries on EBS  ?

How do you automate the EBS snapshot to S3 and setup the dynamic DNS heartbeat scripts to allocate a new IP when one is lost so there is the least amount of outage time ?

0
 
LVL 1

Accepted Solution

by:
Espeto earned 250 total points
ID: 24070202
Look http://developer.amazonwebservices.com/connect/entry!default.jspa?categoryID=112&externalID=1663&fromSearchPage=true
It's good resolve for snapshot MySQL and xfs.

For second question:
When an instance start up, you have it execute an Associate Address call that maps the elastic IP address that you own to your instance's current private address.

Use:

#ec2-describe-addresses
 ADDRESS 75.101.157.145
 ADDRESS 75.101.155.119
#ec2-describe-instance
RESERVATION      r-ae33c2c7      924417782495    default
 INSTANCE         i-b2e019da      ami-2bb65342    ec2-72-44-33-67.compute-1.amazonaws.com  ip-10-251-71-165.ec2.internal   running  gsg-keypair     0               m1.small        2008-03-03T23:09:09+0000       us-east-1a
 INSTANCE         i-b2e019db      ami-2bb65342    ec2-67-202-3-83.compute-1.amazonaws.com  ip-10-251-47-36.ec2.internal    running  gsg-keypair     1               m1.small        2008-03-03T23:09:09+0000       us-east-1a
#ec2-associate-address -i i-b2e019da 75.101.157.145
0
 
LVL 33

Assisted Solution

by:shalomc
shalomc earned 250 total points
ID: 24213905
you have to deal with 2 issues: availability of application server and availability of data.
For the application server, create a ready to deploy, up to date  AMI. You can then have it up and running in minutes. the AMI will contain everything except the dynamic data, in your case the sql data.

I assume that you know how to find the official docs, so I won't direct you there ;)

For the data, use EBS. running SQL instance on EBS issues:
http://developer.amazonwebservices.com/connect/thread.jspa?messageID=112585𛟉

For backup, create a snapshot of the EBS volume to S3 with the ec2-create-snapshot command. Read this thread about recommendations (hint: use REST tools rather than java)
http://developer.amazonwebservices.com/connect/thread.jspa?messageID=102822𙆦

You may have additional non-database data like files and images.
These can be either kept on EBS volume, or synced to S3.
You can use jets3t that works like rsync to keep files in sync with a S3 backup.
http://shalomcarmel.blogspot.com/2009/01/synchronize-iseries-files-with-amazon.html

To sum things up:
* Your SQL server's data is stored on EBS
* You have a private AMI with all of the necessary software preinstalled.
* At startup, your AMI connects to EBS, and allocates the elastic IP to itself.
* If you have non-database dynamic data, either store it on EBS or sync it to S3, and then resync it to the fresh instance at startup

There are also commercial services that you may look at, like Rightscale.

ShalomC
0

Featured Post

Manage your data center from practically anywhere

The KN8164V features HD resolution of 1920 x 1200, FIPS 140-2 with level 1 security standards and virtual media transmissions at twice the speed. Built for reliability, the KN series provides local console and remote over IP access, ensuring 24/7 availability to all servers.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this post we will be converting StringData saved within a text file into a hash table. This can be further used in a PowerShell script for replacing settings that are dynamic in nature from environment to environment.
This article provides a convenient collection of links to Microsoft provided Security Patches for operating systems that have reached their End of Life support cycle. Included operating systems covered by this article are Windows XP,  Windows Server…
This tutorial will walk an individual through setting the global and backup job media overwrite and protection periods in Backup Exec 2012. Log onto the Backup Exec Central Administration Server. Examine the services. If all or most of them are stop…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question