¿Cómo empiezo con Chef?

15

La documentación del chef es bastante mala. Y Google no me está ayudando.

¿Alguien puede señalarme un artículo decente o algo que me ayude a comenzar?

Mis problemas específicos son:

  • ¿Cómo consigo que un cliente lea mi configuración? chef-solo parece ser el mejor comienzo (no quiero ejecutar un servidor OpenID o Merb)
  • ¿Cómo configuro Apache para servir Django? Ya sé cómo hacer esto a través de la configuración normal del servidor, pero creo que un ejemplo de receta de Chef sería un buen comienzo;
Brad Wright
fuente
2
"Buenos días Chef, ¿cómo puedo ayudar?" :)
Chopper3
1
Por un momento pensé que finalmente podría responder "Hello World Souffle". aquí en SF: en.wikipedia.org/wiki/Chef_%28programming_language%29
Janne Pikkarainen

Respuestas:

19

Actualizaciones

  • La versión del chef es 0.10.8
  • Chef Wiki ha pasado por muchas revisiones desde que esto se solicitó originalmente.
  • La plataforma Opscode ahora se llama Opscode Hosted Chef
  • Chef pronto se distribuirá como una instalación de pila completa , además de los paquetes RubyGems y Debian.
  • Vagrant es una excelente manera de comenzar a usar Chef.

La respuesta original sigue

Primero, a partir de este escrito, la última versión de Chef es 0.9.8 . Opscode distribuye Chef como RubyGems, y también tiene paquetes Debian / Ubuntu actualizados . Los RPM para la última versión son lanzados por un miembro de la comunidad .

En segundo lugar, en las versiones 0.8.x + y superiores, OpenID ya no es necesario para la autenticación . Se requiere Merb para el Servidor porque es una aplicación web Merb.

Opscode alberga un Chef Server como servicio llamado The Opscode Platform. Puedes registrarte y comenzar . Es gratis durante la "función beta", y una vez que sale de la versión beta, es gratis para hasta 5 nodos . Si se registra, hay una guía de inicio en el sitio de ayuda de Opscode.

Descripción general de cómo comenzar:

  • Obtener Chef instalado . La forma más fácil de hacer esto es ejecutar un sistema Ubuntu 10.04, ya sea en una VM o en EC2, etc. El primer paso es instalar Ruby, luego instalar Chef en sí.
  • Configure el entorno de usuario local para comunicarse con la plataforma Opscode o su propio Chef Server. Puede configurar su propio servidor utilizando la configuración de arranque de Chef de Opscode para RubyGems .
  • Configure un repositorio de chef para almacenar sus libros de cocina y otra configuración de infraestructura.
  • Descargue los libros de cocina que desea utilizar en el directorio 'libros de cocina' en el repositorio.
  • Cargue libros de cocina al Chef Server, agregue las recetas a la lista de ejecución de un nodo y observe cómo se configura.

En cuanto a Django y Apache2:

Deberá escribir uno que implemente el código de su aplicación Django. El libro de cocina de Apache2 contiene una definición para ayudar a configurar un host virtual para aplicaciones web .

Puede ayudar a mejorar la documentación enviando un ticket en el componente "Documentación" del proyecto Chef . Si tiene problemas con el servidor de código abierto de Chef, los mejores lugares para pedir ayuda son la lista de correo de Chef o el canal #chef IRC en FreeNode. Si se registra en la Plataforma, tiene acceso al sitio de ayuda para enviar solicitudes de soporte.

Divulgación: trabajo para Opscode.

revs jtimberman
fuente
El paquete para Ubuntu 9.10 está roto en este momento, lo que es decepcionante con la línea oficial de opscode que parece ser "¿Por qué no estás lúcido?" :( lists.opscode.com/sympa/arc/chef/2010-07/msg00221.html
Philip Reynolds el
2
La línea oficial de Opscode es que no hemos respaldado todos los paquetes necesarios para que el Chef Server se instale en Karmic debido a limitaciones de recursos. Lucid funciona bien y se considera compatible, Karmic no. Podemos apoyar a Karmic en el futuro.
jtimberman
Si desea probar chef con máquinas virtuales locales, puedo recomendar Vagrant . Gestiona máquinas virtuales VirtualBox y se integra con el chef.
Letargo
También asegúrese de revisar nuestra campaña #learnchef learnchef.com
sethvargo