Cloud Zone is brought to you in partnership with:

I’ve been a Windows developer since 3.0 and caught the Visual Basic wave early with v1. I’ve released a “production” application in every version of VB since then (except VB for DOS). Focusing on enterprise, line-of-business development I’ve built Call Center Applications, Mortgage finance systems, Customer Relationship Management tools and more recently I’ve been in the Litigation Support/Electronic Data Discovery/Electronically Stored Information space. Greg is a DZone MVB and is not an employee of DZone and has posted 470 posts at DZone. You can read more from them at their website. View Full User Profile

Set Up a Minecraft Server in Azure VM

08.10.2012
| 7697 views |
  • submit to reddit

"My son’s latest addiction is the game Minecraft, a single or multiplayer game that has a client-server architecture to it, millions of users, a newly released version (as of last week), and a vibrant community. When I first saw the game I was put off by the seemingly crude graphics (a cube-constructed world with overlaid textures on the blocks), but I quickly got over that when I saw how it was fun to play, how it sparks creativity (in the way it has you gather materials and craft things in survival mode), and how it encourages even greater creativity by letting you build structures and contraptions in creative mode. I’m also impressed by the huge and vibrant community of people playing and extending the game with plug-ins (mods), custom maps, and public server worlds (sites you can go to play, such as http://planetminecraft.net).

 Setting up a Minecraft Server

With Minecraft you can play single-player on a local machine, or you can connect to remote servers. If you are a power user or someone with some IT chops, you can easily set up a server of your own for which dozens of simple tutorials are available. That involves downloading the server software, running it, disabling any intervening firewalls, and typing in a server IP address on the client machine.

Of course what comes next is “Dad, can my friends connect to my Minecraft server?”

So I went down that route and configured our home router to do port forwarding, in turn allowing open internet traffic into the Minecraft-active port on our home network. That wasn't too tough, and again dozens of tutorials are out there to help walk you through the process.

The scary part: Poking holes in the firewall. This, of course, allows the unknown (and sometimes malicious) parties onto your home network and onto a machine that may have other personal information on it. You also have the issue of connection bandwidth. This is one of the most important aspects of smooth gameplay when a host server is involved. If you don’t have a screaming-fast internet connection, or bandwidth limitations on your connection, you could really be setting up an unusable server.

Enter Windows Azure Virtual Machines

Being a Microsoft Windows Azure Insider, it naturally occurred to me that an infrastructure optimal for this kind of shared access is Windows Azure. Windows Azure has a lot of capabilities, including shared host roles, storage, access control, and what is generally referred to as PaaS – Platform as a Service. But a relatively new offering from Windows Azure is IaaS – Infrastructure as a Service – which includes virtual machine hosting.

 

Setting up a Minecraft Server (or other software) in the Cloud on a Windows Azure Virtual Machine

AHH, finally, a good reason to get going with Azure VM's!

[Wait... That sounds kind of snarky... It's not meant to be. I was trying to be funny... I guess I should keep my day job... ;)]

The more I think about this, though, the more I like the idea. You can spin it down when you're done and you don't have to mess with your home firewalls. Yada, yada... hum...

Published at DZone with permission of Greg Duncan, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)