Infrastructure management and deployment of Rails 3.1+ app
I'm a native Windows/ASP.NET MVC dev and in my free time I've been developing with Rails to try and become more of a polygot programmer and understand all platforms.
As part of that I have an app I would like to deploy to EC2. I've looked at Heroku it's great when getting started but unfortunately I'm not too sure the price is quite worth it. Once you start needing to scale Heroku can get quite expensive.
I'd like some sort of system to help manage my infrastructure by helping with spinning up EC2 instances, installing the required software and deploying my local (or remote) code up to these instances.
I've looked at Chef but after an evening of hacking with it I got fed up. I feel like the learning curve is a bit high and there must be something easier out there that others are using.
Now like I said I'm a Windows/ASP.NET MVC guy so my Linux skills aren't there thusly why having something that can help manage the infrastructure is important as well as being able to handle deploys, easily.
If you're a Linux novice, the savings you'll make by avoiding Heroku could very likely be gobbled up by hours spent attempting to learn and configure your EC2 servers.
You said that you're developing with Rails to expand your programming and platform knowledge. With this in mind, are you really likely to need anything beyond a free Heroku instance? If you're just learning and experimenting, you are unlikely to encounter a need to scale.
On the other hand, if you avoid Heroku and manage to find some software that automatically configures your EC2 instance, you'll still not be learning much more about Linux administration, which seems to be one of your goals.
It boils down to the following:
If you're just experimenting with Rails, you don't need to worry about scaling.
If you're aiming to learn about the platform, not just the language, learning how to be a Linux admin will be worth it.
If you are building a commercial application, your time is be better spent working on your app, not attempting to become a Linux admin. Heroku will be worth the investment.
I know that doesn't answer your question directly, but I hope it helps. In the last two years I've transitioned from a .NET background to being a full-time Ruby dev, and I found myself asking the same questions.
链接地址: http://www.djcxy.com/p/63560.html