¿Aprovisionamiento simple del servidor de Windows + Linux? Chef / Puppet / Ansible, etc. [cerrado]

8

Soy principalmente un desarrollador, devops a tiempo parcial; y administrar servidores aquí y allá para mis proyectos.

  • Quiero automatizar el aprovisionamiento de servidores web / de aplicaciones / bases de datos en el futuro para mis proyectos
  • Administro una mezcla de servidores Windows y Linux (VPS, cloud y dedicado)

He mirado brevemente al Chef / Marioneta / Ansible investigado; y quiero encontrar algo que:

  • Es fácil de aprender y entender. No quiero invertir semanas para comprender una pieza tecnológica complicada.
  • Idealmente no requiere un servidor ("servidor maestro") para mantener las configuraciones
  • Admite el aprovisionamiento de servidores Windows y Linux
  • Viene con la documentación adecuada para comenzar

¿Alguien tiene algún consejo sobre qué herramienta es la más adecuada?

Gracias

Andrés
fuente
Es posible que desee investigar Foreman ( theforeman.org ) si desea seguir la ruta de las marionetas. Responde la mayoría de sus preguntas, pero deberá pasar unos días haciendo que las cosas funcionen.
No ahora

Respuestas:

5

Tengo casi los mismos requisitos que usted e investigué mucho sobre este tema. Definitivamente puedes usar Puppet / Chef pero la curva de aprendizaje es alta. Además, muy pocas recetas para Puppet / Chef que he visto en realidad son totalmente compatibles con Windows, así que espere tener que escribir las suyas para Windows que de otro modo estarían disponibles para Linux.

Para la administración de Linux, Ansible satisfará todas sus necesidades. Es extremadamente fácil de usar, instalar y no requiere un servidor central. He tenido éxito al usar Ansible con Windows instalando Cygwin con OpenSSH. Puede automatizar la instalación y configuración de Cygwin con algunos scripts simples de lote / PS para arrancar su servidor. Entonces podrá usar Ansible con él siempre que ejecute Python desde la instalación de Cygwin. Windows no es realmente compatible con Ansible y puede haber errores, por supuesto, pero he podido usarlo con éxito. Si eres un desarrollador, incluso es bastante fácil entender el código fuente de Ansible en caso de que tengas algún problema. Los desarrolladores también son muy receptivos cuando se trata de errores. Envié un error que encontré relacionado con las rutas y se solucionó en un día.

Editar: Parece que SaltStack ahora tiene soporte para Windows. Parece funcionar con archivos YAML que es similar a Ansible. Definitivamente vale la pena echarle un vistazo ahora para Windows.

giulianob
fuente
1

He usado tanto Puppet como Chef (lo siento, no ansible). Puedo decirle con confianza que Puppet cumplirá los requisitos que ha enumerado anteriormente.

  • Es facil de aprender. Puedes aprender lo básico en un día o dos. Comience en la documentación de la marioneta
  • Puppet puede ejecutarse en maestro / servidor, así como en modo independiente. Elige tu opción.
  • Puppet puede manejar tanto Linux como Windows según los documentos. No lo he probado en Windows personalmente.
  • La documentación para títeres es realmente genial. También libros como Pulling Strings with Puppet de James Turnbull te ayudan a entender la marioneta desde lo más básico hasta cosas avanzadas como el equilibrio de carga, etc.

He usado Puppet para manejar tanto servidores físicos como implementaciones en la nube (AWS) y es bastante fácil y confiable.

Aditya Patawari
fuente