First time here?

You are looking at the most recent posts. You may also want to check out older archives. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS or email. Thank you for visiting!

Amazon just released into public beta their EC2 features of enabling Windows instances.  I’m a fan of Amazon’s services and the route they’ve been taking.  I use S3 a lot, even only if as a file storage for now.  I’ve written a plugin for Live Writer so that S3 is basically my repository for everything non-text on this site and others.  Of course, if S3 goes down (like it did hard a while back) I’m screwed.  Maybe something like Reserve Chute will help me in the future.

I’ve not messed with the EC2 side of their offering only because I didn’t have a need, quite frankly.  I’ve played around with the awesomeness that is Jumpbox and how easy you can get a Jumpbox appliance running and with EC2.  But that’s been just messing around.  After all, I’m a Windows guy in my comfort zone, so that’s where I prefer to stay.

Today I fired up my EC2 information, had Elasticfox installed and started to check out the Windows on Amazon stuff.  I see a lot of people will use Elasticfox as it is easy to use.  One thing I think Amazon needs to do, is provide more intuitive image naming for their manifests.  Here’s a screenshot of how “geeky” they are:

You could decipher them of course, but they should just use their “friendly” names as well for ease of finding them.  One thing I did notice is that when I tried to run a 64-bit instance (which I assume will be named x86_64 – which is odd that it is named x86 and 64) I get a weird error message that I can’t see the rest of:

Oh well, I moved on with the x86 configuration with SQL Server Express (2005 version). 

NOTE: Right now they only have Windows Server 2003 r2 and SQL Server 2005 versions, no 2008 versions of either.

I struggled a bit with getting the right sequence going, so here’s what I did in hopes of helping others.  Twitter came in handy so thanks for those who pointed me in the right direction.  I did all of these FIRST before starting an instance.

First, having an instance running is fine, but generally you actually want to configure stuff with it!  Windows users/developers know and love Remote Desktop Connection…which is available on Windows Server.  Obviously you’d initially want to use that to configure your box in EC2.  Step 1, however, is to ensure that your security group enables the port traffic on TCP/3389.  Elasticfox makes this easy, by going to the Security Groups tab and either modifying the default group or setting a specific one for your instance:

Once that is done, I created a KeyPair (again, using Elastifox).  You simply create the KeyPair using the KeyPair tab and giving it a name.  It will prompt you to save the .pem certificate file somewhere on your machine.  Ensure you keep that handy – you will need it.

Once that is done I located the instance I wanted to fire up and chose to create a new instance.  One important step is to ensure you select the KeyPair correctly before the instance starts spinning up:

After that, I waited until Elasticfox told me that my instance was running.  Even though it indicated “running” I couldn’t connect to it right away.  My test showed that about 5-7 minutes after it turned into “running” mode that I could attempt to connect.

The first time you either attempt to connect or attempt to get the Administrator password, you’ll be prompted for that .pem file for certificate information…just browse to it and choose it.

When I attempted to connect using Elasticfox it gave me some weird errors and failed everytime…even though it gave me the Admin password and everything.  So I figured something was amiss and chose instead to fire up Remote Desktop Connection first and then paste the Public DNS address into there rather than have Elasticfox try to do some weird connection mojo for me.  Alas, it worked!  I was prompted by RDC about a certificate not matching (the certificate had the instance ID and not the public DNS name), but after accepting that, I was in.  I entered the Administrator password, and quickly changed it to something I could remember (they auto generate a rather cryptic one for you).

Wouldn’t you know it, it’s a Windows box :-).  I could configure IIS, added a hello world page and was able to browse to it over the public Internet.  Fantastic.  Your instance name gives you an indication of the IP address, so if you wanted to CNAME something you could do that.  As an example if your public DNS address is ec2-75-123-456-78.compute-1.amazonaws.com then your IP address is 75.123.456.78.  There is also the Elastic IP service which I don’t claim to know anything about, but you can associate with instances as well.

That was it, I was up and running.  To recap:

    1. Get Elasticfox – a Firefox plugin.
    2. Configure your Amazon Web Services credentials in the plugin
    3. Go to the security group tab and enable the TCP/3389 port traffic either in the default security group or your own custom security group that you’ll associate with your instance.
    4. Generate a KeyPair for your machine
    5. Use the Elasticfox filter and type in ‘windows’ to see the different options
    6. Choose your option and create a new instance, choosing the KeyPair and Security Group of your preference
    7. Wait about 5-7 minutes AFTER it says it is running
    8. Using Elasticfox, get the administrator password (right-click on the instance for that option)
    9. Using Elasticfox, get the Public DNS Address (right-click on the instance for that option)
    10. Launch Remote Desktop Connection and paste the Public DNS address
    11. Review the certificate warning and accept if all looks good
    12. Login with the administrator password, then change it so you remember what it is
    13. Configure away!

I think this makes EC2 more intriguing to me because I can spin up a fully-fledge dedicated(virtual) box right away (and if needed, scale it to more instances).  The thing that I found curious was the pricing model.  If you create what they call a “small” instance, with using SQL Express and no authentication rights (i.e., the ability to create Windows users), then you’re looking at about $90/month before any bandwidth and disk usage fees apply – that is only compute time.  Also, if you add SQL Server Standard to that, the price jumps significantly (in my calculation to about $600/month). 

NOTE: My EC2 instance registered itself as a Dual-core AMD, 2.7 ghz, 2GB RAM.

When I look at a place like ServerBeach, where I can get a dedicated machine for around $130-150/month (with 2 TB bandwidth and 160GB storage) and add SQL Standard for $275 (and I’m not sure if that is monthly or one-time)…which seems lower than my fees with EC2 before bandwidth.  Now granted, if I needed to spin up more instances I couldn’t (or not without significant cost and inflexibility) but for the “one server” guy scenario, the pricing has me a bit perplexed.  For the person who wants to move from shared hosting to dedicated/virtual this might be an option if no database or SQL Express (or other open source databases) work for you.

Regardless it is interesting.  It is usefuly for these cloud computing services to show up so you can spin up servers almost instantly, play around with scenarios, like perhaps some Silverlight cross-domain or SSL scenarios, and shut them down when needed.  As a developer, very handy.  I’m also looking forward to seeing if any rumors are true about next week at PDC.

This work is licensed under a Creative Commons Attribution By license.

10/24/2008 3:29 PM | # re: Windows on Amazon EC2
Nice article!
Thank You
10/25/2008 7:43 AM | # re: Windows on Amazon EC2
So Tim, is this EC2 like other hosting companies, i.e. DiscountASP.Net that I can host Silverlight app with it's web service and database?

BTW, any news on your LOB applications you were going to post?

10/25/2008 1:05 PM | # re: Windows on Amazon EC2
I got same error message about the platform when i picked a 64 bit version, i found that i have to pick the 'large' instance type when i created the instance
10/25/2008 5:23 PM | # re: Windows on Amazon EC2
Ben: EC2 is more than like discount and others provide. Think of it as more of a comparison to a dedicated hoster (like maximum, serverbeach, etc.). You are getting a full instance of Windows you can configure to your liking, remote desktop into, etc.

re: LOB apps -- part 1 of the first one is staged, and I'm crossing my fingers for this week (content managers make the push).
10/25/2008 5:53 PM | # re: Windows on Amazon EC2
>>Think of it as more of a comparison to a dedicated hoster (like maximum, serverbeach, etc.). <<

Tim, this sounds really good, especially when they charge by the time you use. Also, as you mentioned, we can use their S3 for video. Thanks for the summary!

>>I'm crossing my fingers for this week (content managers make the push).<<
You want me to pay them a visit? ;-)

I'm excited for this series!
10/27/2008 3:27 AM | # re: Windows on Amazon EC2
Nice article!
10/28/2008 12:18 AM | # re: Windows on Amazon EC2
Glad you like the JumpBox product Tim!

Also, I've used Elasticfox to run JumpBoxes on EC2 a few times, but man that Elasticfox interface...ugh. I'm searching for alternatives, I think I'm going to try www.Jollat.com
10/28/2008 10:44 AM | # re: Windows on Amazon EC2
Very nice write-up. I would have to agree with you. With the exception of the ability to spin up boxes quickly, I fail to see the value at these price points. Just to expensive for the normal small timer. Perhaps an option for the Small/Mid business but personally, I'm going to stick with my existing host provider. Perhaps over time Amazon will make the service more competitive as the scale up.
11/9/2008 10:15 AM | # re: Windows on Amazon EC2
Is there any proper GUI for AWS? The Firefox extensions are making me nuts. I need something fast and reliable. Preferrably not web based.

11/9/2008 11:06 AM | # re: Windows on Amazon EC2
Peter: No there is not. Amazon provides services, not apps. They may be considering one, but for now they don't provide one. For EC2 the most common is the Elasticfox. I haven't seen other EC2 apps, but I haven't looked either :-).
11/10/2008 2:18 PM | # re: Windows on Amazon EC2
Thanks for the article, Tim. I've connected succefully. However, as I try to set up IIS I'm being asked to insert the Windows CD. Did you run into that? Ideas on how to resolve?
11/10/2008 3:17 PM | # re: Windows on Amazon EC2
pmascari: You'll need your installation disc if you are adding features to Windows that weren't a part of your initial install. I always am using web server stuff so I make it a part of my base install.
11/11/2008 3:39 PM | # re: Windows on Amazon EC2
Great post to get started with Windows and EC2!
11/19/2008 4:34 AM | # SQL Express
Nice article to start with EC2. I need one clarifications regarding SQLExpress login issues.

Today I ran a windows instances(m1.small)(IIS, .Net 1.1, SqlExpress) successfully and made a remote desktop connection to that machine.

The issue was, I should not be able to login to the sqlserver either with windows authentication or with sql server authentication. Is there any thing i need to do.

Please clarify on this.

Thanks in Advance.

11/19/2008 5:08 AM | # re: Windows on Amazon EC2
Ashok: You'd have to contact Amazon about that question. I don't work for them so I'm not sure.
1/5/2009 4:46 AM | # re: Windows on Amazon EC2
C:\ec2>ec2-get-password -k ms-keypair i-7933b610
Unable to load private key: ms-keypair (The system cannot find the file specified) (-h for usage)

This is the error i keep getting while trying to use the ec2 api tools to recieve the admin password in elastic fox I get that the password was not genertaed that all the box prompt box says anyone have any suggestions I had it working the first day now i get this error! Help If you can.
1/5/2009 4:48 AM | # re: Windows on Amazon EC2
OOh yeah ive shut down the instnace now but i still keep geting the same error even afgter creating a new pass key
1/13/2009 12:12 AM | # re: Windows on Amazon EC2
Tim - great tutorial and really helped me setup my first instance with Elastifox. So, Thank you.

Now that the Amazon console is available, I've created a quick tutorial for the same for anyone interested in not using Elastifox: reynoldsftw.blogspot.com/.../...-windows-2003.html

Hope this helps anyone out!
4/19/2009 9:50 PM | # Unbundle a AMI on Windows command prompt

Great tutorial Tim, I got Elastifox up and running very quickly and minutes later I was managing images linked to my account.
However I need a little guidance on a situation I got myself into.
I have an AMI bundled and uploaded on S3. I downloaded the part files with manifest.xml on local directory. I installed AMI Tools and registered all the path and env variables mannually on WindowsXP. But when i tried running the ec2-unbundle command from the cmd prompt gave me the error - 'ec2-unbundle is not recognized as an internal or external command'.

Any idea what could be missing??
Nitin R.
4/29/2009 3:43 AM | # re: Windows on Amazon EC2
I tried same set of steps on a Fedora Core 10, and it worked beautifully..

Please add 1 and 4 and type the answer here:


The opinions/content expressed on this blog are provided "ASIS" with no warranties and are my own personal opinions/content (unless otherwise noted) and do not represent my employer's view in any way.