En mi lugar de trabajo actual, cuido dos máquinas host VMware, una máquina física OpenBSD, tres máquinas virtuales Debian y seis máquinas virtuales Windows Server (2008/2012).
Estoy considerando implementar una herramienta de administración de configuración como Puppet o Chef. ¿Es esto razonable, o la sobrecarga de aprender la herramienta superará los beneficios? ¿Dónde está el punto de inflexión entre la capacidad de administración y el costo de implementación?
Respuestas:
En mi humilde opinión, vale la pena aprender incluso si solo administra un solo servidor,
Sí, habrá una curva de aprendizaje. Sí, te sentirás frustrado. Sin embargo, por esos costos, se le reembolsará en múltiplos a través de implementaciones confiables, consistentes, con un solo clic, configuración de servidor controlada por versión, facilidad para configurar entornos de prueba / desarrollo, etc.
Además de los beneficios de su trabajo actual, poder agregar un sistema CM a su currículum es una gran victoria. Ahora se espera que los administradores de sistemas modernos tengan al menos exposición a un sistema de administración de configuración, si no competencia.
(Nota al margen: considere Ansible también. Es mi CM preferido, y es muy fácil de poner en marcha, mucho más fácil que Puppet o Chef. Además, el soporte de Windows en Ansible está funcionando muy bien).
fuente
Es razonable dependiendo de cuánto tiempo y dinero tiene que gastar, y si es o no su dinero lo que está quemando.
Una herramienta de administración de configuración (cualquiera de ellas) se está convirtiendo en una habilidad valiosa en el mercado actual.
Pasar el tiempo para aprender e implementar una herramienta CM puede no ser lo más eficiente desde la perspectiva de su negocio o entorno, pero de su conjunto de habilidades puede valer la pena.
La mayoría de las herramientas de administración de configuración están disponibles de forma gratuita con la advertencia de que son más difíciles de instalar y poner en marcha.
Esta pregunta es un poco difícil de responder, ya que realmente depende de lo que esté haciendo día a día para administrar estos servidores. Si no se requiere que haga mucho, entonces una herramienta de administración de configuración puede ser una exageración total.
Si realmente necesita forzar su infraestructura a un estado predecible y básico, entonces no le hará mucho daño aprender los conceptos básicos de algo como SaltStack o Ansible.
En mi experiencia personal, Salt es muy fácil de poner en marcha y arrancar en los servidores, y puede usarse para la ejecución remota e informes muy básicos, lo que puede ser útil si aún no lo tiene implementado en su entorno.
Tenga en cuenta que soy parcial. Debe evaluar cada herramienta de CM usted mismo.
fuente
Tal como dijo @EEAA, la cantidad de servidores es irrelevante. Puede obtener beneficios de usar la administración de configuración con una sola máquina:
Puedo decir que tuve que implementar CM para todos mis servidores personales, ya que trabajo allí con poca frecuencia y olvido todos los pequeños detalles. Tener scripts CM mientras que puede parecer que consume mucho tiempo (lo es) la recompensa bien vale la pena. A largo plazo, ahorrará mucho más tiempo que dedicará a configurar las cosas.
fuente
Tengo experiencia con Puppet y Ansible. Ansible es IMO más simple, ya que es de procedimiento, mientras que Puppet es declarativo. Hay ventajas y desventajas para ambos, pero he arrancado suficiente cabello debido a los crípticos errores de Puppet.
Ambos requieren mucho trabajo si desea crear una configuración limpia y reutilizable. Los costos comienzan a pagar realmente si tiene al menos dos servidores muy similares, por ejemplo, nubes o clústeres.
Sin embargo, tiene algún uso incluso para servidores independientes: puede configurar usuarios administradores, configuraciones estándar (con variaciones locales) sshd, postfix o snmpd y también usarlos para una recopilación de información simple, como el cumplimiento de la política o la prueba de vulnerabilidad shellshock.
Además, como lo menciona EEAA, tiene un valor para documentar la configuración si verifica que realmente lleva un servidor del estado base al estado de ejecución. Es bueno combinarlo con el sistema de control de versiones (git), para que los cambios que realice estén versionados y documentados. Eso es muy valioso si tienes un equipo de administradores.
fuente
Puppet o cualquier otro sistema de administración brindan grandes beneficios que han sido destacados por otras respuestas aquí, pero no hay una bala de plata cuando se trata de administración.
Por ejemplo, la creación de clases de títeres para sistemas complejos cuesta mucho tiempo y esfuerzo y, a veces, desgarra, ya que hay muchas dificultades, y los mensajes de error no siempre son 100% claros, y cuando el software se actualiza, debe invertir tiempo para adaptar sus clases de títeres para que coincidan con cualquier especificación nueva. o procedimiento y averiguar qué enfoque es el más adecuado para esto (títere, por ejemplo, declarativo y una actualización suele ser de procedimiento)
También debe averiguar cómo planea implementar los cambios realizados en sus clases de manera controlada y cómo mantener las diferentes versiones de sus manifiestos.
También debe considerar cómo actualizar su solución de administración cuando llegue el momento.
Si pasa una cantidad significativa de tiempo escribiendo, por ejemplo, clases de títeres, entonces tendría que realizar muchas instalaciones con un solo clic para obtener beneficios reales.
Recomiendo explorar aún y cuando sea apropiado, es decir, la distribución de archivos de configuración puede ser un buen lugar para comenzar, y comenzar desde allí.
fuente