2021-03-24
Jenkins vs Ansible

Jenkins vs Ansible

Durante la última década, DevOps se ha convertido en el referente de los "principios de desarrollo correctos".

En lugar de ofrecer un conjunto de reglas, DevOps busca crear una cultura y una mentalidad que ayude a los equipos a entregar más rápido sin comprometer la calidad de sus proyectos.

Es así, que surgieron varias herramientas para ayudar a esto, entre ellas Jenkins y Ansible, de los cuales estaremos hablando en este artículo.

Ansible

Ansible es un motor de TI de código abierto que se utiliza para automatizar la implementación de aplicaciones, los servicios en la nube y otras herramientas de TI.

El número de servidores de producción en una organización puede variar de decenas a miles.

Gestionar un número tan grande de personas manualmente es lento y tedioso, además de consumir tiempo valioso. Aparte ,las implementaciones deben ser más rápidas y estar libres de errores humanos, y es por esto que la automatización se convierte en la respuesta.

Ansible ha ganado popularidad en los últimos años debido a las siguientes razones:

  • La versión de código abierto de Ansible proporciona una gran cantidad de funciones que vienen con la versión Enterprise.
  • Red Hat proporciona un excelente soporte al cliente para la versión Enterprise.
  • Ansible ofrece una configuración simple ya que utiliza YAML, que es legible y de uso común.
  • Es capaz de manejar flujos de trabajo complejos ya que está estructurado en módulos, roles y guías.
  • Altamente flexible independientemente del sistema operativo de destino.
  • Funciona a través de SSH y elimina la sobrecarga de instalar y ejecutar un agente en el sistema de destino.
  • Debido a su estructura y forma de trabajo simples, es comparativamente más rápido que otras herramientas y es altamente eficiente.
  • Maneja múltiples dominios, como administración de configuración, implementación de aplicaciones,etc.

Jenkins

Jenkins es una herramienta de automatización de código abierto.

Los procesos de creación, prueba y lanzamiento se pueden automatizar fácilmente a través de Jenkins.

Proporciona una variedad de complementos para integraciones con la mayoría de las herramientas de CI / CD.

Dado que se basa en Java, puede ejecutarse en cualquier sistema operativo donde esté instalado Java Runtime Environment (JRE).

Jenkins ha ganado una gran popularidad en la comunidad DevOps debido a su versatilidad y considerable apoyo de la comunidad.

Algunas de sus cualidades más atractivas son:

  • Integración continua y entrega continua: con su enorme cantidad de complementos, se puede configurar como un servidor CI simple y también manejar CD para proyectos complejos.
  • Distribuido: permite la conexión a varios nodes, lo que ayuda a distribuir la carga de trabajo entre plataformas.
  • Complementos: casi cualquier herramienta se puede integrar en Jenkins debido a la enorme cantidad de complementos disponibles en su centro de actualización.
  • Extensible: debido a su gran compatibilidad con complementos, Jenkins se puede usar para realizar una enorme variedad de tareas.
  • Fácil instalación: los paquetes listos para todos los sistemas operativos están disponibles en el centro de descargas. Java es el único requisito previo para instalar Jenkins.
  • Configuración sencilla: una interfaz de usuario muy ordenada e interactiva facilita la configuración de proyectos.

¿Te gustaría saber más? Te dejamos estos links para que investigues:

https://www.jenkins.io

https://www.ansible.com

¿Querés aprender? ¡Date una vuelta por estos cursos!

https://www.udemy.com/course/jenkins-de-principiante-a-experto/

https://es.coursera.org/projects/cicd-using-jenkins

https://es.coursera.org/projects/ansible-fundamentals

https://es.coursera.org/projects/ansible-introduction-playbook-lamp-wordpress-cloud-devops-automation