Earlier when I was first exploring how to use Amazon's EC2 service, I spent a lot of time thinking about interesting uses for it. Since then I've experimented with running Asterisk (pure voip mode since Amazon has yet to introduce Amazon OP1 - "On demand PRI"), several rails apps, some number crunching and, just for fun, as a Counterstrike and Battlefield 2 game server.
I don't play either of those games - if I had time I'd be playing with Second Life - but getting a server up and running was almost trivial:
- Setup your EC2 instance (see my previous article)
- SSH in and start installing the game server
- Use ec2-authorize to unblock the required UDP/TCP ports
And that's it! I had some friends who live in those games test out the performance and they were pretty happy (sorry no figures since I have no clue how to measure performance). The server load stayed pretty low even with many Battlefield 2 users, and the ping was pretty good (again no clue what a good ping was - just relaying what I was told).)
The really interesting thing is from here there are two directions:
- Create a business allowing on demand BF2 or CSS game servers - the cost is a few bucks each day, and the ability to turn it on and off when it is needed could make it really cheap. Building a web app that accepts paypal, creates the instance, then lets the games begin within 5 minutes!
- The community can create a custom EC2 image that has the game servers installed and everything already configured. It can have all the latest mods/interfaces. Perhaps even write a simple client side app that specializes in creating instances of EC2 game servers...
Anyone who knows how to setup a game server should be able to create the EC2 image with a little work, then creating a cool web interface to configure it should be easy.
That anyone isn't me but I hope others have fun with this!
Responses to "On demand Battlefield 2, Counterstrike game servers using Amazon EC2"
Leave a response