reborn55 - Fotolia

Evaluar Conozca los pros y contras de las tecnologías, productos y proyectos que está considerando.

Revise las principales herramientas de gestión de la configuración en DevOps

Las herramientas de gestión de la configuración alivian la carga de TI. Y si está implementando prácticas de DevOps, asegúrese de tenerlo en cuenta durante el proceso de evaluación de las herramientas.

El cambio es una parte esencial de TI, pero a menudo es disruptivo. Un ajuste a un activo puede desalinear otros recursos, a veces de formas que nadie anticipó. Esas configuraciones incorrectas pueden dar como resultado un rendimiento deficiente, inconsistencias en las aplicaciones o incumplimiento.

Para evitar esos resultados, la gestión de la configuración ofrece documentación, mantenimiento coherente y controles de cambios. Estas capacidades ayudan a una organización no solo a identificar sus activos de TI, sino también a comprender las relaciones entre esos activos.

Qué son las herramientas de gestión de la configuración y para qué se utilizan

La automatización integrada en las herramientas de gestión de la configuración permite a los administradores de sistemas crear comprobaciones y redundancias que mantienen los activos en el estado deseado. Ese mayor nivel de automatización mejora la eficiencia general y ayuda a los administradores a compensar los problemas que resultan de errores humanos y configuraciones manuales del servidor. Estos beneficios se amplifican cuando una organización cambia a un flujo de trabajo DevOps.

La gestión eficaz de la configuración, o CM, puede impulsar la productividad, reducir los costos de TI y ayudar a garantizar la entrega continua de servicios de TI. Un enfoque estándar para una gestión exitosa es mediante la implementación de agentes de CM instalados en varios servidores que toman comandos del servidor maestro. Un administrador puede enviar un archivo de configuración al servidor maestro para ejecutar acciones específicas en múltiples hosts de destino, ya sea en las instalaciones, en la nube o en un entorno híbrido.

Exploremos las principales herramientas de administración de configuración en DevOps, evaluemos sus características y consideremos los aspectos clave que las distinguen. Todas estas herramientas ofrecen versiones para Linux, Unix, Windows y macOS.

Ansible

Ideal para pequeños equipos de DevOps que necesitan una herramienta de gestión de configuración rápida y ligera, Ansible ofrece una base para la automatización en los sistemas de toda la organización. Los administradores pueden enviar comandos de shell individuales a conjuntos completos de servicios y organizar sus entornos de manera flexible. Además de acceder a Ansible Galaxy para marcos de roles y libros de jugadas, los administradores de sistemas pueden implementar módulos para diversas tareas, desde integraciones dinámicas de AWS y orquestación de contenedores, hasta archivos de configuración básicos. Los usuarios de Ansible necesitan escribir grandes cantidades de código de procedimiento; la familiaridad con Python reduce esta carga.

Chef

Chef, ya sea en las instalaciones o alojado en la nube, es una herramienta DevOps útil para lograr velocidad, escala y consistencia. Requiere que TI ejecute un servidor maestro para almacenar el estado de la infraestructura y luego implemente el software del agente para la configuración de múltiples servidores. Una versión de código abierto de Chef ofrece un formato de configuración independiente titulado Chef Solo. El paquete integrado de herramientas Chef permite a los equipos de TI administrar configuraciones en la nube, en las instalaciones o en entornos híbridos. Chef incorpora recetas escritas en el lenguaje de programación Ruby de código abierto. Chef Enterprise Automation Stack representa la distribución comercial y ofrece seguridad unificada, cumplimiento, infraestructura y automatización de aplicaciones con monitoreo. Progress Software adquirió Chef en 2020 y ofrece combinaciones de componentes de Chef (Habitat, Infra, Automate) llamadas Infrastructure Management y App Delivery.

CFEngine

CFEngine, una herramienta de gestión de configuración de código abierto ampliamente utilizada y establecida, incorpora la teoría Promise para implementar configuraciones. Se basa en la cooperación voluntaria de agentes ligeros sobre los recursos gestionados. CFEngine se ejecuta en lenguaje C y, debido a su pequeña huella de memoria, funciona más rápido con menos dependencias que la mayoría de las otras herramientas. Si bien el proceso de personalización puede parecer abrumador, la entusiasta comunidad de la herramienta ofrece apoyo y orientación.

Consul

Consul ofrece un producto de administración sencillo para el almacenamiento y el acceso de la configuración, y proporciona APIs de HTTP y DNS para el descubrimiento de servicios. Además de ser fácil de implementar y usar, Consul está escrito en Go y disponible como binario nativo, lo que lo hace efectivo en sistemas grandes y distribuidos. A través del descubrimiento dinámico de servicios, Consul proporciona verificación de estado, almacenamiento de claves/valores y soporte para el mantenimiento de múltiples centros de datos.

Puppet

El sistema basado en modelos de Puppet y la dependencia del lenguaje Ruby ayudan a simplificar su proceso de configuración y uso. Ofrece la capacidad de automatizar tareas, desde la instalación de paquetes hasta la actualización automática de configuraciones. Puppet requiere un servidor maestro para almacenar información de estado, ofrece módulos fáciles de manipular y se basa en el modelo push para enviar actualizaciones. La edición de código abierto de Puppet es gratuita, mientras que Puppet Enterprise se integra bien con las principales herramientas de DevOps y es gratuita para hasta 10 nodos.

Rudder

Rudder, un derivado de CFEngine, ofrece una interfaz de usuario que puede atraer específicamente a los principiantes en la gestión de configuraciones. Si bien su interfaz web está construida con el lenguaje Scala, los agentes locales están escritos en C. Implementa la función de configuración de estado deseada, que permite que los scripts de PowerShell especifiquen los parámetros de configuración de los servidores basados ​​en Windows. Esta herramienta de CM de código abierto implementa agentes locales ligeros e identifica las características de los nodos para simplificar aún más las configuraciones del sistema.

SaltStack

Al ofrecer enfoques de configuración maestros o sin maestro, SaltStack proporciona una automatización rápida impulsada por eventos utilizando ZeroMQ como una biblioteca de mensajería asincrónica sin intermediarios. Fue creado para la recopilación de datos de alta velocidad y ofrece integraciones con los principales proveedores de nube, respaldando el enfoque de infraestructura como código. Las características de SaltStack están diseñadas para entornos que dependen de la computación en la nube, la virtualización y la contenedorización, todos elementos clave del enfoque DevOps. VMware anunció su adquisición de SaltStack a fines de 2020 y lo ha integrado con la suite vRealize Automation.

Terraform

Como herramienta de gestión de la configuración orientada al aprovisionamiento, Terraform permite a los equipos de TI codificar API para editar, revisar y versionar fácilmente las configuraciones compartidas. Una organización que se basa en contenedores e imágenes de máquinas virtuales encontrará que Terraform es especialmente útil. La herramienta emplea un enfoque de configuración inmutable para evitar la deriva y mantener los servidores sincronizados en el estado deseado. Para monitorear configuraciones basadas en la nube, Terraform se basa en las API del proveedor de la nube; los administradores pueden simplemente usar claves API para la autenticación. Una utilidad recientemente revisada conecta más profundamente Consul y Terraform.

Investigue más sobre Desarrollo de aplicaciones

Close