small medium large xlarge

Deploying Rails: Automate, Deploy, Scale, Maintain, and Sleep at Night

by

Cover image for Deploying Rails
Pages 240
Published
Release P1.0 (2012-07-17)
ISBN 978-1-93435-695-1

Today’s modern Rails applications have lots of moving parts. Make sure your next production deployment goes smoothly with this hands-on book, which guides you through the entire production process. You’ll set up scripts to install and configure all the software your servers need, including your application code. Once you’re in production, you’ll learn how to set up systems to monitor your application’s health, gather metrics so you can stop problems before they start, and fix things when they go wrong.


About This Book

Deploying Rails takes you on a expertly guided tour of the current best practices in Rails deployment and management. You’ll find in-depth explanations on effectively running a Rails app by leveraging popular open source tools such as Puppet, Capistrano, and Vagrant. Then you’ll go beyond deployment and learn how to use Ganglia and Nagios to monitor your application’s health and gather metrics so you can head off problems before they happen.

You’ll start out by building your own virtual environment by writing scripts to provision a production server with Vagrant and Puppet. Then you’ll leverage the popular Rails deployment tool Capistrano to deploy an application into this infrastructure. Once the app is live, you’ll monitor your application’s health with Nagios, and configure Ganglia to collect system metrics. Finally, you’ll see how to keep your data backed up, recover data when things go wrong, tame your log files, and use Puppet to automate everything along the way.

If you’re a Rails developer who wants a better understanding of the needs of a production Rails system, if you’re a system administrator who wants to manage a Rails application, or if you’re bridging the gap between development and operations, this book will be your roadmap to successful production deployment and maintenance, whether your application has ten users or ten million users.

For Rails 3

What You Need:

The exercises and examples are most suited to a computer running some Unix variant, such as Mac OS X or Linux. But a Windows machine running Linux in a VirtualBox virtual machine is also sufficient.

We’ll show you how to set up a local virtual machine for your deployments; you won’t need a dedicated server to hone your deployment skills. We expect you to have a basic familiarity with the Ruby programming language, the Ruby on Rails framework, and the Unix command line.

Read the reviews .

You Might Also Like

  • Cover Image For Agile Web Development with Rails 4…

Forums

Each of our books has its own dedicated discussion area, where readers help each other out. Many authors also choose to drop by.

Join in…

Here are some recent topics:

Contents & Extracts

Full Table of Contents

Preface

  • Introduction
  • Getting Started with Vagrant excerpt
  • Rails on Puppet
  • Basic Capistrano
  • Advanced Capistrano excerpt
  • Monitoring with Nagios excerpt
  • Collecting Metrics with Ganglia
  • Maintaining the Application
  • Running Rubies with RVM
  • Special Topics
  • Bibliography

Brought to You By

Tom Copeland is also a Rails developer at LivingSocial. He has programmed in Ruby since 2004, consulted at InfoEther on Ruby on Rails applications since 2007, and received a “Ruby Hero” award in 2008. Before focusing on Ruby, he wrote two books on Java programming (PMD Applied and Generating Parsers with JavaCC) and was named Oracle’s “Open Source Developer of the Year” in 2003.

Anthony Burns is a professional Ruby and Rails developer at LivingSocial. Prior to LivingSocial, he worked at InfoEther, a Rails consultancy, where he handled deployment and infrastructure for various clients.