¿Cuáles son los mejores recursos para aprender sobre DevOps y sus herramientas sin costo?

Puede consultar la siguiente serie de blogs en todas las herramientas principales de DevOps:

Git

Jenkins

Estibador

Marioneta

Cocinero

Puede consultar los videos a continuación para tener una mejor idea de qué es exactamente DevOps:

¿Qué es DevOps?

Entendamos primero por qué se introdujo DevOps, y luego veremos qué es exactamente DevOps.

Antes de DevOps se usaba el modelo de cascada tradicional.

Modelo de cascada:

Consideremos desarrollar software de una manera tradicional usando un modelo de cascada.

En el diagrama anterior verás las fases que implicarán:

  • En la fase 1: se reunió el requisito completo y se desarrolló el SRS
  • En la fase 2: este sistema está planificado y diseñado utilizando el SRS
  • En la fase 3 – Implementación del sistema.
  • En la fase 4 – Se prueba el sistema y se asegura su calidad.
  • En la fase 5: el sistema se implementa para los usuarios finales.
  • En la fase 6 – Se realiza el mantenimiento regular del sistema.

Desafíos modelo de cascada

El modelo de caída de agua funcionó bien y sirvió bien durante muchos años, sin embargo, tuvo algunos desafíos. En el siguiente diagrama se resaltan los desafíos de Waterfall Model.

En el diagrama anterior puede ver que tanto el Desarrollo como las Operaciones tuvieron desafíos en el Modelo de cascada. Desde el punto de vista de los Desarrolladores, hubo principalmente dos desafíos:

Después del desarrollo, el tiempo de implementación del código fue enorme.

La presión del trabajo en el código antiguo, pendiente y nuevo fue alta porque el tiempo de desarrollo y despliegue fue alto.

Por otro lado, Operaciones tampoco estaba completamente satisfecho. Hubo cuatro desafíos principales que enfrentaron según el diagrama anterior:

Fue difícil mantener el tiempo de funcionamiento de ~ 100% del entorno de producción.

Las herramientas de automatización de infraestructura no fueron muy afectivas.

El número de servidores a monitorear sigue aumentando con el tiempo y, por lo tanto, la complejidad.

Fue muy difícil proporcionar comentarios y diagnosticar problemas en el producto.

En el siguiente diagrama se resaltan las soluciones propuestas para los desafíos del Modelo de cascada.

En el diagrama anterior, las Soluciones probables para los problemas que enfrentan los Desarrolladores y las Operaciones se resaltan en azul. Esto establece las pautas para una estrategia de desarrollo de software ideal.

Desde el punto de vista de los desarrolladores:

Un sistema que permite la implementación de código sin demora o tiempo de espera.

Un sistema donde el trabajo se realiza en el código actual, es decir, los sprints de desarrollo son cortos y bien planificados.

Desde el punto de vista de Operaciones:

El sistema debe tener al menos un 99% de tiempo de actividad.

Las herramientas y sistemas están ahí para una fácil administración.

Debería haber un sistema efectivo de monitoreo y retroalimentación.

Mejor colaboración entre desarrollo y operaciones y es un requisito común para los desarrolladores y el equipo de operaciones.

Creo que es hora de que exploremos qué es DevOps y cómo supera estos desafíos.

DevOps:

DevOps integra a los desarrolladores y al equipo de operaciones para mejorar la colaboración y la productividad.

De acuerdo con la cultura de DevOps, un solo grupo de Ingenieros (desarrolladores, administradores de sistemas, control de calidad, probadores, etc. convertidos en Ingenieros de DevOps) tiene la responsabilidad de la aplicación (Software) de extremo a extremo, desde la recopilación del requisito de desarrollo, la prueba y la infraestructura. implementación, a la implementación de la aplicación y, finalmente, a la supervisión y recopilación de comentarios de los usuarios finales, y luego se implementan nuevamente los cambios.

Este es un ciclo sin fin y el logotipo de DevOps tiene mucho sentido para mí. Solo mire el diagrama anterior: ¿Cuál podría haber sido un mejor símbolo que el infinito para simbolizar DevOps?

Ahora veamos cómo DevOps se encarga de los desafíos que enfrenta el Desarrollo y las Operaciones. La siguiente tabla describe cómo DevOps aborda los desafíos de desarrollo.

Yendo más lejos, la tabla a continuación describe cómo DevOps aborda los desafíos de operaciones.

Sin embargo, todavía se estaría preguntando cómo implementar DevOps. Para acelerar y actualizar el proceso de DevOps además de aceptarlo culturalmente, también se necesitan varias herramientas de DevOps como Puppet, Jenkins, GIT, Chef, Docker, Selenium, AWS, etc. Pruebas, implementación continua, monitoreo continuo para entregar un software de calidad al cliente a un ritmo muy rápido.

Ahora eche un vistazo al siguiente diagrama de DevOps con varias herramientas de DevOps e intente descodificarlo.

Estas herramientas han sido categorizadas en varias etapas de DevOps. Por lo tanto, es importante que primero le cuente las etapas de DevOps y luego hable más sobre las herramientas de DevOps.

DevOps Lifecycle se puede dividir ampliamente en las siguientes etapas de DevOps:

  • Desarrollo continuo
  • Integración continua
  • Pruebas continuas
  • Monitoreo continuo
  • Virtualización y contenedorización.

Estas etapas son los bloques de construcción para lograr DevOps en su conjunto.

Te aconsejaría seguir

Ir a través de los recursos en línea que están disponibles

Practica a través de laboratorios libres.

Hay muchos laboratorios gratuitos disponibles para poner a prueba sus conocimientos sobre la nube (AWS, Azure), etc. Puede aprovecharlos para obtener algunos conocimientos al respecto.

  • Construye tu laboratorio de servidor en la nube
  • Inicio | Qwiklabs

Consulte los libros disponibles.

Hay muchos libros disponibles que pueden consultarse incluyendo el mío, que puede obtener en Comprar Cómo comenzar con DevOps Reserve en línea a precios bajos en la India.

Obtener alguna certificación hecha

Busca este espacio para obtener más información al respecto – DevOps – Amazon Web Services (AWS)

Busque en Quora o Linkedin para el blog DevOps y únase a las comunidades DevOps

Esta es una pregunta muy ingenua.

Si eres nuevo en DevOps, seguramente te confundirán las herramientas que se necesitan, cómo y cuándo usarlas.

Mira esto :

La respuesta de Saurabh Tamhankar a ¿Cómo evalúa la preparación de los devops desde la perspectiva de una cadena de herramientas?

donde he mencionado como cavar en DevOps

La mejor manera de “aprender” cualquier herramienta es usarlas y ensuciarte las manos. Instalar, configurar, usar, atascarse, resolver el problema, repetir.

Supongo que OP conoce algunas de las herramientas DevOps gratuitas / de código abierto, a saber:

  • Jenkins
  • Estibador
  • Chef – Automatiza tu infraestructura
  • Amazon Web Services (AWS) – Servicios de computación en la nube
  • Artifactory – Universal Artifact Repository Manager

Estas son algunas de las herramientas líderes que tienen versiones gratuitas.

Obtenga estas herramientas, instálelas (preferiblemente en el cuadro de Linux), utilícelas usted mismo una a la vez. Una vez que haya terminado con una aplicación básica de “HelloWorld”, intente integrar todas estas herramientas en una forma de canalización tal que Jenkins construirá su aplicación, se realizará sobre Artifactory, Docker creará una imagen y ejecutará un contenedor de esta aplicación. en AWS

Todas estas herramientas tienen una excelente documentación.

Sigue / revisa mis otras respuestas en el tema DevOps para tener más idea.

PluralSight tiene uno de los mejores cursos de DevOps en línea disponibles en la sección
Entendiendo DevOps

Los cursos se clasifican cuidadosamente en las siguientes 3 secciones:
Básico ,
Intermedio y
Avanzado
Esto puede ayudar a cualquier persona a comenzar rápidamente sin ninguna confusión sobre dónde comenzar.

Puede inscribirse de forma gratuita durante 60 días y probar algunos de los cursos y, si le gusta el contenido y la interfaz de usuario, puede solicitar la suscripción.

Herramientas gratuitas que pueden ayudarte a aprender DevOps:

Vagrante, Ansible, Chef, Marioneta, Sal.

Free-ish: motor de cálculo de Google (300 $ en créditos gratuitos al registrarse)

AWS: 1 año de uso gratuito.