Creo que kyl lo resumió bastante bien. Pero pensé que te dejaría saber exactamente lo que he estado usando desde los rieles beta4 (y ahora con RC). Esta configuración me ha funcionado bien:
Rackspace Cloud servers - Le da control total del servidor. Puede cambiar el tamaño de sus servidores sobre la marcha. También puede tomar imágenes instantáneas si desea duplicar su configuración para otro sitio. Es barato y, en mi opinión, mejor que la nube de Amazon.
CentOS 5.4 - sólido, pero como se menciona en kyl probablemente cualquier distribución funcionará bien.
Ruby 1.9.2RC 2 - sin problemas hasta ahora en Rails 3 para mí. Definitivamente usará Ruby Enterprise cuando lo porten a 1.9.2 (no estoy seguro si eso está en proceso, ¿no?)
Nginx - rápido y liviano. Me gusta mucho mejor que apache. Funciona bien en frente del pasajero, mestizo y delgado.
MySQL - solo preferencia personal para esto. Lo he estado usando por años. Es fácil configurar una configuración maestro/esclavo o maestra/maestra si necesita escalar. Algunas personas tienen éxito simplemente usando sqlite, pero prefiero algo un poco más robusto.
Github - imprescindible para el control de código fuente. Bundler funciona muy bien con github
Servidor de aplicaciones - Todavía estoy debatiendo qué hacer al respecto. Estaba contento con Passenger 2.2.15 hasta que vi cuánto tiempo tardó en generar nuevos procesos de ruby para manejar la concurrencia. Tarda hasta 30 segundos en generar un nuevo proceso para mí y la aplicación está bloqueada, por lo que ninguna solicitud puede pasar mientras está en reproducción. Estoy investigando ahora mismo si es mi aplicación o Rails 3 lo que demora tanto en cargar. Este problema se corrigió con Passenger 3, sin embargo. Esperemos que sea lanzado pronto. Como resultado de esto, probablemente voy a utilizar Thin o Mongrel hasta que salga el Passenger 3.
Capistrano - funciona muy bien para Rails 3. Recomiendo encontrar algunas recetas de tapa para versionar su aplicación con etiquetas git ... o simplemente escriba la suya.
¿Algo más? No está realmente relacionado con el servidor, pero recomendaría usar la nueva API de complemento para cualquier parte de la aplicación que sea reutilizable. Lea sobre las railties y los motores. Es simple crear una gema con Joyero y versionarla con github utilizando tareas de rastrillo de joyería. A continuación, puede implementar desde una etiqueta github o desde el maestro, agregando la fuente gem y github en su Gemfile y la instalación o actualización del paquete. Hace poco porté todo el código de mi aplicación común (blog, autenticación, etc.) a los motores Rails 3 y está funcionando muy bien. Y cada vez que necesito reutilizar ese código, simplemente lo dejo en el archivo de gemas de la nueva aplicación.