INGENIERÍA Y SERVICIOS IT

Herramientas de Soporte de la Cultura DevOps

Usar las herramientas no es lo mismo que hacer DevOps.

Hacer DevOps sin usar herramientas es complejo si entendemos que DevOps tiene componentes de automatización. DevOps es y será un tema de cultura y no solo el conjunto de herramientas.

Veamos un ejemplo de que las herramientas no hacen cultura. Piense en una empresa que quiere que sus reuniones internas comiencen a tiempo. Si la empresa compra un software de gestión de reuniones, ¿las reuniones comenzarán a tiempo?

Si la cultura interna es iniciar reuniones tardías, primero debemos trabajar para cambiar la cultura interna. La herramienta, por buena que sea, no podrá cambiar la cultura.

Sin las herramientas adecuadas, la fusión de roles y responsabilidades de DevOps puede crear caos y resultados no deseados, que incluyen problemas relacionados con la escalabilidad, la confiabilidad y la administración de carga.

Herramientas DevOps-GIT

GIT se produjo siguiendo los requisitos de la comunidad Linux para SCM, es decir, el software Source-Control-Management que podría admitir sistemas distribuidos. Esta es la herramienta más utilizada para administrar fuentes que está disponible actualmente.

Su ventaja es que tiene características adicionales en aplicaciones de bifurcación y tracción; por lo tanto, GitHub también proporciona complementos capaces de conectar Jenkins y facilitar la integración y la implementación.

Las pruebas de velocidad que se realizan en una operación de red GIT arrojan resultados impresionantes, ya que los protocolos GIT para la transferencia de datos están altamente optimizados.

Sin embargo, con el tiempo, las implementaciones internas de GIT revelan limitaciones que pueden afectar la velocidad y la eficiencia de los canales de distribución.

Plataforma en la nube

La automatización en la nube se compone de tareas u objetos de automatización discretos que realizan tareas como la arquitectura del servidor VM, la instalación de imágenes del sistema operativo y despliegue de aplicaciones y funciones de red.

Las tareas en la automatización de la nube las realizan muchas herramientas de automatización, como scripts y herramientas de administración local para la administración de la configuración.

La automatización de DevOps utiliza funciones de automatización discretas como herramientas para la integración, compilación y gestión continuas de las configuraciones de software.

Las orquestas DevOps son la coordinación automatizada mediante procesos DevOps personalizados en la organización y las herramientas y tareas de automatización que se llevan a cabo en el proceso.

La infraestructura en la nube se ejecuta junto con las herramientas de DevOps para automatizar y orquestar las implementaciones de aplicaciones y coordina el soporte para los procesos deseados.

La orquestación va más allá de la simple tracción de la infraestructura de la nube para cubrir las tareas de automatización de DevOps en coordinación con la infraestructura para lograr la orquestación de DevOps.

Los desarrolladores que utilizan Docker crean entornos Docker en la computadora portátil para desarrollar y probar aplicaciones localmente en contenedores. En este entorno, las pruebas se realizan en pilas de servicios compuestas con varios contenedores Docker.

Varios contenedores Docker convergen como baterías de un solo servicio, como las baterías LAMP, y tardan unos segundos en crearse una instancia.

Docker

Docker brinda portabilidad a las aplicaciones a través de la tecnología de contenedores, donde las aplicaciones se pueden ejecutar en unidades independientes que se mueven entre plataformas.

Consiste en un motor Docker (un empaquetado ligero y una herramienta de tiempo de ejecución y un Docker Hub) que son servicios en la nube para el intercambio y la automatización del flujo de trabajo.

Docker ha sido una parte vital de la próxima generación de infraestructura de gestión de servicios y pruebas de Yelp.

El aislamiento dependiente y la rápida puesta en marcha del contenedor permiten un ciclo de desarrollo más corto y aumentan las velocidades de prueba en más del 400%.

Algunos entornos pueden ejecutar el host Docker dentro de otro host Docker (Docker-inDocker) en entornos de compilación.

Docker puede aumentar la velocidad de una tubería IC mediante Union-ileSystems y Copy-on-Write (COW).

Para lograr velocidades más altas para proporcionar el software Continuous Delivery (CD), se pueden utilizar muchas técnicas de Docker.

JS

JS permite la creación sencilla de aplicaciones de red rápidas y escalables. Las plataformas JS tienen bibliotecas que permiten que las aplicaciones funcionen como servidores web sin la necesidad de software como Apache-HTTP-Server o Microsoft-IIS.

Sin tener que hacer que los servidores web acorten las listas de tareas de DevOps y agilicen el flujo de código desde el desarrollo hasta la implementación. Además, JavaScript se puede utilizar tanto en el cliente como en el servidor.

Los desarrolladores encuentran una ventaja de eficiencia debido a la reutilización del código. Las aplicaciones NODE.JS se pueden ejecutar en el tiempo de ejecución NODE.JS en Microsoft Windows, OSX, Linux y FreeBSD.

Está diseñado para un funcionamiento rápido con una gran experiencia de usuario. Un modelo de E / S sin bloqueo controlado por eventos en NODE.JS permite aplicaciones ligeras que son altamente eficientes. Muchas organizaciones de pensamiento líderes utilizan NODE.JS, como SAP, Groupon, LinkedIn, PayPal y Wal-Mart.

Chef

Las herramientas de Chef DevOps proporcionan marcos para automatizar y administrar la infraestructura a través de DSL simple. El activo real es el código que da vida a los servidores y servicios. El Chef confía en sus definiciones reutilizables, llamadas libros de cocina y recetas escritas en Ruby. Este nivel de abstracción aumenta la productividad y permite a los desarrolladores crear configuraciones fácilmente personalizadas para aplicaciones. Las recetas se ejecutan de forma independiente utilizando CHEF SOLO o un servidor que tiene CHEF SERVER que actúa como hubs para los datos de configuración.

Los servidores almacenan libros de cocina o políticas aplicadas a nodos y metadatos que describen el nodo registrado administrado por el chef-cliente. Chef es una herramienta de gestión multiplataforma para Windows, Linux, Mac OS, etc., y se puede integrar con los principales proveedores de nube.

Jenkins

Este es un mecanismo de integración extensible y continua que se utiliza como una de las herramientas principales para los ingenieros de DevOps que desean monitorear las ejecuciones de trabajos repetidos. Con Jenkins, al ingeniero de DevOps le resulta más fácil integrar los cambios en los diseños y puede acceder fácilmente a los resultados cuando descubre que algo anda mal.

Las principales características son sus enlaces permanentes, la integración de RSS / correo electrónico / mensajería instantánea, etiquetado posterior al evento, su informe de pruebaJUnit / TestNG y las compilaciones distribuidas.

Puppet

Puppet le permite lidiar con la configuración y la administración de software durante cambios rápidos y repetitivos. Puppet aplica automáticamente la coherencia en todos los entornos y puede funcionar tanto en máquinas físicas como virtuales. Tiene cadenas de herramientas comunes y admite las mejores prácticas clave de DevOps que incluyen la entrega continua.

Puppet Enterprise ofrece la orquestación de centros de datos, automatizando la configuración y gestión de máquinas y software. También existen versiones de código abierto de Puppet que fueron utilizadas por la Universidad de Stanford para llenar los vacíos en el desarrollo de software para el servicio de biblioteca digital y la administración del sistema, necesarios para mantener los servicios funcionando de manera segura.