I have a few ideas for cloud apps that I want to play with, and I don't want to pay for Amazon AWS or anything like that. Also, I don't want my projects to be in any way exposed to the general Internet while they're still half-baked.
Here's what I have to work with:
- 1 quad-core machine that acts as a file server, DHCP server, and DNS server. I am OK with letting MAAS handle DHCP and DNS on my network. I am NOT OK with reinstalling the OS in a special configuration.
- 1 quad-core machine that can be freely reinstalled or whatever.
So far, I've installed MAAS on the first machine (although it seems I'm getting bitten by bug #1067929 still, despite my use of the workaround), added the second machine as a node, and (apparenlty) commissioned it. MAAS lists the status of the second machine as "Allocated to root" (root being my MAAS user). Juju, however, obstinately refuses to do anything. Running it from my laptop ended in failure because apparently it can't handle MAAS with an HTTPS URL. Running it on the first machine using HTTP gets further, but bootstrapping fails because "No matching node is available." Research suggests that Juju needs at minimum 2 actual, physical machines, but I have yet to see an adequate explanation of why.
(I have to say, I'm rather intrigued by MAAS. With a bit more work (especially in QA), it looks like it could be the centralized machine management platform I've been looking for.)
So, now I find myself looking at DevStack. I can't say I'm particularly thrilled by the idea of downloading some script off GitHub and running it as root, but that seems to be the least painful path. Is DevStack really the way to go? Does it work with Ubuntu 12.10? Does it handle routing and DNS automatically? (I would rather not have to fiddle with bind9 configuration files every time I create a new cloud VM, and I would rather not have to fiddle with iptables at all.)