ClickCease ¿Qué herramienta de gestión de la configuración debo utilizar? Chef en el punto de mira - TuxCare

Únase a nuestro popular boletín

Únase a más de 4.500 profesionales de Linux y el código abierto.

2 veces al mes. Sin spam.

¿Qué herramienta de gestión de la configuración debo utilizar? Chef en primer plano

21 de agosto de 2019 - Equipo de relaciones públicas de TuxCare

¿Qué herramienta de gestión de la configuración debo utilizar? El logotipo de Chef, kernelcare y chef io sobre fondo azul

El auge de DevOps ha hecho necesaria la creación de herramientas que permitan a los ingenieros gestionar cientos o incluso miles de máquinas a la vez. A través de un proceso conocido como infraestructura como código (IaC) -en el que un entorno de TI se declara a través de un lenguaje de programación-, las herramientas de gestión de la configuración (CM) permiten a los administradores de sistemas y a los equipos de DevOps mantener la visibilidad de su infraestructura de servidores, y desplegar y tomar medidas a escala masiva. Las herramientas de CM facilitan la ejecución de tareas en varios servidores a la vez y el despliegue de aplicaciones con un solo clic.

Cuando se trata de despliegue masivo y CM, hay cuatro grandes actores de software: Puppet, Ansible, Saltstack y Chef. KernelCare puede desplegarse a través de los cuatro. Chef es una opción popular, con pros y contras únicos. Aquí tienes todo lo que necesitas saber.

 

Lo bueno: La elección del programador

Chef, que nació como una herramienta interna de despliegue de servidores de extremo a extremo para OpsCode, se lanzó por primera vez como solución de código abierto en 2009. Destaca por ser la herramienta de CM construida sobre un modelo de arquitectura cliente-servidor. Chef utiliza un paradigma de programación imperativo, y utiliza el enfoque basado en pull para enviar información de configuración a los nodos de destino (que se instalan con agentes). Esto es similar al modelo maestro-agente de Puppet, con la salvedad de que se necesita la estación de trabajo Chef para controlar las configuraciones del maestro al agente.

El modelo imperativo de Chef hace que los comandos se ejecuten en orden secuencial, lo que permite a los ingenieros precisar los pasos individuales necesarios para gestionar cada máquina. Toma su nombre de la forma en que están estructurados sus procesos: Los archivos de definición se denominan "recetas" y pueden combinarse con archivos, atributos, bibliotecas, etc. para crear "libros de recetas". Aunque las recetas utilizan un lenguaje específico del dominio exclusivo de Chef, admiten scripts escritos en Ruby plano.

Chef es popular, y con razón. Está pensado para programadores. Su configuración basada en código ofrece una gran cantidad de control y flexibilidad, hasta la creación de módulos, haciendo de Chef probablemente la más personalizable y adaptable de todas las soluciones de CM. Su configuración, arraigada en Git, significa que tiene fuertes capacidades de control de versiones. 

Además de estar profundamente basado en la programación y ser, por tanto, superflexible, Chef es muy fiable. 2009 es antiguo en el mundo del software, y esta persistencia significa que Chef es altamente estable y maduro. La comunidad de Chef es activa y ofrece una documentación y un soporte sólidos. Hay una rica base de recetas de configuración y módulos (incluyendo más de 900 módulos gratuitos). Además, la versión SaaS de Chef es muy útil si desea análisis e informes.

Lo malo: Curva de aprendizaje pronunciada

Chef fue construido para los programadores. Lo cual es genial - si eres un programador. Pero si no lo eres, puede ser un trabajo muy duro. Si todavía estás aprendiendo las cuerdas, o si no eres un usuario de Ruby, Chef puede ser desalentador. Se necesita mucho aprendizaje para sentirse cómodo, incluso con los sencillos pasos de configurar el chef y llevar a cabo las configuraciones iniciales. Las bases de código son grandes, los entornos son complejos, y la documentación está dispersa.

Además, la configuración basada en pull de Chef significa que las configuraciones sólo se recogerán del servidor en el siguiente sondeo programado. La falta de push significa que no hay acción inmediata sobre los cambios. 

 

En general 

Con Chef, es bastante simple. Si usted tiene el (Ruby) nous programación, entonces es la herramienta de CM para usted. Es completamente programable, por lo que las posibilidades de manejo y personalización son enormes. Es más, Chef es súper estable, y genial para despliegues a gran escala en entornos públicos y privados que necesiten un gran almacenamiento. Pero si necesitas algo más ágil y fácil de usar, Chef probablemente no sea la mejor opción. 

 

Lea más resúmenes de soluciones del equipo de KernelCare aquí:

  1. ¿Qué herramienta de gestión de la configuración debo utilizar? Ansible en primer plano
  2. ¿Qué herramienta de gestión de la configuración (CM) utilizar? Enfoque en SaltStack
  3. ¿Qué herramienta de gestión de la configuración debo utilizar? Puppet en primer plano
  4. ¿Qué solución de gestión de vulnerabilidades elegir? Enfoque en Qualys
  5. ¿Qué solución de gestión de vulnerabilidades elegir? Rapid7 en el punto de mira

¿Desea automatizar la aplicación de parches de vulnerabilidad sin reiniciar el núcleo, dejar el sistema fuera de servicio o programar ventanas de mantenimiento?

Más información sobre Live Patching con TuxCare

Conviértete en escritor invitado de TuxCare

Empezar

Correo

Únete a

4,500

Profesionales de Linux y código abierto

Suscríbase a
nuestro boletín