IaC y seguridad


Bienvenida

Competencia


Implementa herramientas de DevOps con un enfoque práctico y aplicable a las distintas industrias y sectores.

Contenido


Pasa el cursor sobre la imagen para ingresar a los temas.


Actividad integradora


Competencia de la credencial:

Implementa herramientas de DevOps con un enfoque práctico y aplicable a las distintas industrias y sectores.

Instrucciones:

A lo largo del curso fortalecerás tus conocimientos en el manejo de DevOps mediante la elaboración de una actividad integradora, que incluye el bosquejo para el aprovisionamiento de una infraestructura con IaC, considerando la gestión de su configuración mediante Ansible y recurriendo a un robustecimiento de la seguridad usando las herramientas que provee Vault, con la finalidad de aplicar la filosofía de DevOps en los proyectos de desarrollo.

Para este proyecto trabajarás en el bosquejo y en la preparación de la infraestructura (entorno de desarrollo). Se busca desarrollar un proyecto para una organización o empresa y que pueda adaptarse para muchas situaciones en las que se requieren varios servicios (por ejemplo, escuelas, ciudades, museos, parques de diversiones, etc.).

Realiza un documento en el que indiques las necesidades específicas, el diseño basado en la infraestructura cómo código y el aprovisionamiento. Para ello, sigue estas instrucciones:

  1. Escoge un proyecto a desarrollar. Si cuentas con experiencia previa en el desarrollo de una aplicación de software con el uso de varios servicios (recursos) con las características antes señaladas, considera trabajar con la adaptación de ese proyecto a un modelo basado en el aprovisionamiento de infraestructura con IaC y su gestión con Ansible.

    En caso de no contar con experiencia previa en el desarrollo de aplicaciones, busca un cliente potencial o persona interesada que pudiera necesitar el desarrollo de una aplicación basada en microservicios. Considera tener una entrevista o reunión con el cliente potencial para conocer las necesidades de su requerimiento.
    Es importante mencionar que el objetivo de esta actividad es el aprovisionamiento de la infraestructura, su manejo y el robustecimiento de la seguridad, no el desarrollo de la aplicación y su despliegue al cliente final.
  1. Integra la documentación de un desarrollo previo o nuevo, apoyado de un análisis de requerimientos:

    1. En el caso de retomar un desarrollo previo, identifica, mediante un análisis de requerimientos funcionales, los elementos principales de cada requerimiento de tu desarrollo previo y conviértelo en un proyecto cuya infraestructura se base en IaC y para su gestión se pueda utilizar Ansible. Para esta etapa, el documento resultante es el llamado análisis de requerimientos.
    2. En el caso de que trabajes en un desarrollo completamente nuevo después de la entrevista con el cliente, deberás identificar los requerimientos de diseño y funcionales que se esperan de la aplicación.

      Genera el documento de análisis de requerimientos, donde identifiques los elementos principales para determinar la complejidad, la prioridad y las dependencias para el desarrollo de la aplicación.

      Deberás dimensionar las características de los recursos que utilizará la aplicación, es decir, la infraestructura. Considera aprovisionarla mediante Terraform y gestionar la configuración con Ansible.
  1. Esquematiza la infraestructura de tu aplicación. Considera los recursos y las dependencias a utilizar en tu desarrollo. Documenta, por medio de los repositorios de Terraform, o bien, de Ansible Galaxy, para buscar módulos scripts que te puedan servir para tus aprovisionamientos y la generación de la infraestructura.

  2. Utilizando alguno de los servicios en la nube para aprovisionar recursos, como AWS, genera el aprovisionamiento mediante Terraform, es decir, crea los recursos a usar, ya sean las instancias EC2 (máquinas virtuales), los balanceadores de carga, las S3 buckets, etc.

  3. Analiza e investiga de qué manera se puede llevar la gestión de la configuración de los servicios de AWS, documenta el proceso e incluye la experiencia de uso de AWS.

  4. Investiga el uso y la aplicación de Vault en fuentes confiables. Agrega a tu documentación de qué manera utilizarías Vault en tu proyecto.

Criterios de evaluación: