-
Notifications
You must be signed in to change notification settings - Fork 462
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create Devops Project #1857
Create Devops Project #1857
Changes from 1 commit
ee002b5
440360a
81cbe61
8ef0712
0ea15a9
4c8014b
6605bdd
92e7a85
0f94e02
5d5ebd3
f717bd9
5d24bdc
d41e03f
da4fd26
e84bd9d
f694a0f
905ada9
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -486,6 +486,26 @@ data-analytics: | |
- analysis-report | ||
- analysis-presentation | ||
|
||
devops-computing-cloud-services: | ||
- concepts-cloud-infrastructure-virtualization | ||
- setting-up-runtime-environment | ||
- monitoring-application-virtual-machine | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Se refiere al dashboard de la nube respectiva? |
||
|
||
devops-docker: | ||
- docker-container-image | ||
- dockerfile | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Esto es un tema amplio que tal vez depende de otros OAs (bash/shell-scripts y algo sobre Linux/Debian o Alpine) |
||
- docker-commands | ||
|
||
devops-container-cloud-services: | ||
- orchestration-system-components | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Si dejamos fuera K8s creo que no hacemos nada de orquestación. |
||
- configure-container-task-definitions | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Estas son las deficiones para K8s? |
||
|
||
devops-kubernetes: | ||
- kubernetes-use-cases | ||
- kubernetes-components | ||
- kubernetes-yaml-files | ||
- kubectl-commands | ||
|
||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. quizas mejor agrupar todo dentro de There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. No se? No conversamos sobre eso con el. |
||
# New OAs since UXD006 | ||
agile-planning: | ||
- scope | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2003,6 +2003,106 @@ ai-prompting/open-ai-api: | |
- title: "The chat completion object - API Reference - OpenAI API" | ||
url: https://platform.openai.com/docs/api-reference/chat/object | ||
|
||
devops-computing-cloud-services: | ||
title: Servicios de computación en la nube | ||
description: Servicios de computación en la nube como AWS EC2 y Azure VM | ||
|
||
devops-computing-cloud-services/concepts-cloud-infrastructure-virtualization: | ||
title: Comprender los conceptos fundamentales de la infraestructura en la nube y la virtualización | ||
description: Describir los conceptos básicos de la infraestructura en la nube y cómo la virtualización permite la creación y gestión de máquinas virtuales | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-computing-cloud-services/setting-up-runtime-environment: | ||
title: Configurar el entorno de ejecución de una aplicación en una máquina virtual | ||
description: Instalar y configurar un sistema operativo y otros servicios esenciales en una máquina virtual para ejecutar una aplicación | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Esto es independiente de Devops entonces, de hecho el primer proyecto no lo llamaría Devops porque no involucra Dev solo Ops ;-) |
||
links: | ||
- title: | ||
url: | ||
|
||
devops-computing-cloud-services/monitoring-application-virtual-machine: | ||
title: Monitorear la ejecución de una aplicación en una máquina virtual | ||
description: Utilizar herramientas de monitoreo para supervisar la ejecución de una aplicación en una máquina virtual | ||
links: | ||
- title: | ||
ssinuco marked this conversation as resolved.
Show resolved
Hide resolved
|
||
url: | ||
|
||
devops-docker: | ||
title: Docker | ||
description: Docker permite empaquetar una aplicación junto con todas sus dependencias (como bibliotecas, configuraciones y archivos necesarios) en una unidad estándar conocida como contenedor | ||
|
||
devops-docker/docker-container-image: | ||
title: Explicar qué es Docker, Docker container y Docker image | ||
description: Explicar qué es Docker, Docker container y Docker image | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-docker/dockerfile: | ||
title: Comprender y usar las intrucciones básicas de un Dockerfile para definir una Docker image, como `FROM`, `WORKDIR`, `COPY`, `RUN` y `EXPOSE` | ||
description: Comprender y usar las intrucciones básicas de un Dockerfile para definir una Docker image, como `FROM`, `WORKDIR`, `COPY`, `RUN` y `EXPOSE` | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-docker/docker-commands: | ||
title: Ejecutar comandos básicos de Docker para gestionar el ciclo de vida de un contenedor e imagen e interactuar con contenedores | ||
description: Usar comandos como `docker build`, `docker run`, `docker ps`, `docker stop`, `docker rm`, `docker pull` y `docker push` | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-container-cloud-services: | ||
title: Servicio de orquestación de contenedores | ||
description: Servicios de orquestación de contenedores en la nube como AWS ECS y Azure Container Apps | ||
|
||
devops-container-cloud-services/orchestration-system-components: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Me parece que no cubrimos esto ya si no vamos a entrar en K8s |
||
title: Describir los componentes clave de un sistema de orquestación, como clústeres, tareas, servicios y balanceadores de carga | ||
description: Describir los componentes clave de un sistema de orquestación, como clústeres, tareas, servicios y balanceadores de carga | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-container-cloud-services/configure-container-task-definitions: | ||
title: Crear y configurar definiciones de contenedor y tareas que incluyan todos los componentes necesarios para ejecutar un aplicación, como imágenes Docker, variables de entorno, volúmenes y configuraciones de red | ||
description: Crear y configurar definiciones de contenedor y tareas que incluyan todos los componentes necesarios para ejecutar un aplicación, como imágenes Docker, variables de entorno, volúmenes y configuraciones de red | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-kubernetes: | ||
title: Kubernetes | ||
description: Kubernetes es una herramienta que facilita la gestión de aplicaciones contenedorizadas al automatizar el despliegue, el escalado y la recuperación ante fallos | ||
|
||
devops-kubernetes/kubernetes-use-cases: | ||
title: Explicar que es Kubernetes y describir sus casos de uso y las necesidades que soluciona | ||
description: Explicar que es Kubernetes y describir sus casos de uso y las necesidades que soluciona | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-kubernetes/kubernetes-components: | ||
title: Describir la arquitectura de Kubernetes y sus componentes clave, como nodos, pods, servicios, deployments y namespaces | ||
description: Describir la arquitectura de Kubernetes y sus componentes clave, como nodos, pods, servicios, deployments y namespaces | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-kubernetes/kubernetes-yaml-files: | ||
title: Crear y configurar archivos de manifiesto de Kubernetes (YAML) para definir recursos como deployments, services y configMaps necesarios para desplegar una API. | ||
description: Crear y configurar archivos de manifiesto de Kubernetes (YAML) para definir recursos como deployments, services y configMaps necesarios para desplegar una API. | ||
links: | ||
- title: | ||
url: | ||
|
||
devops-kubernetes/kubectl-commands: | ||
title: Utilizar comandos de kubectl para gestionar recursos del clúster, escalar aplicaciones manualmente y automatizar el escalado basado en métricas de rendimiento | ||
description: Utilizar comandos de kubectl para gestionar recursos del clúster, escalar aplicaciones manualmente y automatizar el escalado basado en métricas de rendimiento | ||
links: | ||
- title: | ||
url: | ||
|
||
data-analytics: | ||
title: Análisis de datos | ||
description: Validar hipótesis mediante el análisis de los datos, y proporcionar recomendaciones estratégicas basadas en tus hallazgos | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,140 @@ | ||
# API Deployment on Computing Service | ||
|
||
## Índice | ||
|
||
- [1. Consideraciones generales](#1-consideraciones-generales) | ||
- [2. Preámbulo](#2-preámbulo) | ||
- [3. Resumen del proyecto](#3-resumen-del-proyecto) | ||
- [4. Implementaciones de ejemplo](#4-Implementaciones-de-ejemplo) | ||
- [5. Paso a paso general para el despliegue en Amazon EC2 o Azure VMs](#5-Paso-a-paso-general-para-el-despliegue-en-Amazon-EC2-o-Azure-VMs) | ||
- [6. Paso a paso detallado para el despliegue en Amazon EC2](#6-Paso-a-paso-detallado-para-el-despliegue-en-Amazon-EC2) | ||
- [7. Paso a paso detallado para el despliegue en Azure VMs](#7-Paso-a-paso-detallado-para-el-despliegue-en-Azure-VMs) | ||
- [8. Consideraciones para pedir tu Project Feedback](#8-Consideraciones-para-pedir-tu-Project-Feedback) | ||
- [9. Objetivos de aprendizaje](#9-Objetivos-de-aprendizaje) | ||
|
||
--- | ||
|
||
## 1. Consideraciones generales | ||
|
||
- Este proyecto lo resolvemos de manera --individual--. | ||
- El rango de tiempo estimado para completar el proyecto es de 1 a 2 Sprints. | ||
|
||
## 2. Preámbulo | ||
|
||
<img | ||
src="https://github.com/user-attachments/assets/506d6905-593f-4774-be0a-26f28c35af9b" | ||
alt="Hardware" | ||
aria-describedby="hardware" /> | ||
|
||
<p id="hardware"> | ||
Virtual Machines | ||
</p> | ||
|
||
_Photo by_ | ||
[_Alexandre Debiève_](https://github.com/user-attachments/assets/506d6905-593f-4774-be0a-26f28c35af9b) | ||
|
||
AWS EC2 y Azure Virtual Machines son servicios de computación en la | ||
nube que permiten a las desarrolladoras crear, gestionar y escalar máquinas | ||
virtuales conocidos como instancias. Ambos servicios proporcionan una | ||
infraestructura flexible y segura para ejecutar una amplia variedad de | ||
aplicaciones y servicios, con características similares como escalabilidad, | ||
diversidad de tipos de instancias, soporte para múltiples sistemas | ||
operativos, opciones de pago por uso, y avanzadas configuraciones de redes | ||
y seguridad. La elección entre AWS EC2 y Azure VMs a menudo depende de | ||
las necesidades específicas del proyecto, la familiaridad con la plataforma | ||
y otros factores como integración con servicios existentes. | ||
|
||
La currícula de Laboratoria incluye 4 proyectos enfocados en | ||
desplegar la [Fleet Management API](../05-fleet-management-api/README.md) | ||
en la nube. Cada proyecto se distingue por utilizar | ||
diferentes métodos de despliegue, lo que te permitirá aprender y aplicar | ||
diversas estrategias para desplegar tu aplicación en producción en un entorno real. | ||
|
||
<img | ||
src="https://github.com/user-attachments/assets/807d21eb-4f47-4b91-8441-a952192562f0" | ||
alt="Proyectos Laboratoria" | ||
aria-describedby="devops-projects-laboratoria" /> | ||
|
||
<p id="devops-projects-laboratoria"> | ||
Ruta Devops | ||
</p> | ||
|
||
## 3. Resumen del proyecto | ||
|
||
En este proyecto desplegarás la Fleet Management API en una máquina | ||
virtual usando **Amazon EC2** o **Azure Virtual Machines (Azure VMs)**. | ||
|
||
En lugar de depender únicamente de tu computadora local para ejecutar aplicaciones, | ||
tanto en Amazon EC2 como en Azure VMs, puedes utilizar servidores remotos, llamados | ||
instancias, que ofrecen más potencia y flexibilidad. Puedes elegir entre | ||
diferentes tipos de instancias según las necesidades | ||
de tu aplicación. Hay instancias optimizadas para tareas que requieren | ||
mucha memoria, mucho procesamiento, almacenamiento rápido, etc. Puedes conectarte | ||
a tu instancia desde tu computadora local usando herramientas como SSH | ||
(para Linux) o Remote Desktop (para Windows). Una vez conectada, | ||
puedes usar la instancia como lo harías con tu computadora local: | ||
instalar software, subir código, ejecutar aplicaciones, etc. | ||
|
||
## 4. Implementaciones de ejemplo | ||
|
||
En caso que no hayas implementado aún la | ||
[Fleet Management API](../05-fleet-management-api/README.md) | ||
puedes usar las siguientes implementaciones mínimas para | ||
completar este proyecto. Elige la implementación en el | ||
lenguaje de programación que más te interese: | ||
|
||
- [Implementación en NodeJS](https://github.com/Laboratoria/minimum-impl-fleet-management-api-nodejs) | ||
- [Implementación en Python](https://github.com/Laboratoria/minimum-impl-fleet-management-api-python) | ||
- [Implementación en Java](https://github.com/Laboratoria/minimum-impl-fleet-management-api-java) | ||
|
||
## 5. Paso a paso general para el despliegue en Amazon EC2 o Azure VMs | ||
|
||
Amazon EC2 y Azure Virtual Machines son servicios muy similares. En ambos | ||
podemos seguir el siguiente paso a paso general para | ||
desplegar la Fleet Management API independientemente del lenguaje de | ||
programación en que esta implementada. | ||
|
||
- Paso 1: Crear una cuenta en el proveedor de infraestructura | ||
- Paso 2: Lanzar una máquina virtual | ||
- Paso 3: Configurar la máquina virtual | ||
- Paso 4: Conectar a la máquina virtual desde tu computadora usando SSH | ||
- Paso 5: Instalar las dependencias de la API en la máquina virtual | ||
- Paso 6: Subir el código de tu API en la máquina virtual | ||
- Paso 7: Configurar y ejecutar la API en la máquina virtual | ||
- Paso 8: Probar la API desde tu computadora | ||
|
||
## 6. Paso a paso detallado para el despliegue en Amazon EC2 | ||
|
||
El paso a paso detallado para el despliegue en Amazon EC2 | ||
depende del lenguaje de implementacion de la API. Te | ||
sugerimos las siguientes guías: | ||
|
||
- [Despliegue de API NodeJS](https://dev.to/drsimplegraffiti/from-code-to-the-cloud-a-step-by-step-guide-to-deploying-your-nodejs-app-on-aws-ec2-4300) | ||
- [Despliegue API Python](https://www.geeksforgeeks.org/how-to-deploy-python-application-in-aws/) | ||
- [Despliegue de API Java](https://medium.com/@amitu2016/deploying-spring-boot-web-app-on-aws-using-ec2-and-s3-4db1d0f55c78) | ||
|
||
## 7. Paso a paso detallado para el despliegue en Azure VMs | ||
|
||
El paso a paso detallado para el despliegue en Azure VMs | ||
depende del lenguaje de implementacion de la API. Te | ||
sugerimos las siguientes guias: | ||
|
||
- [Despliegue de API NodeJS](https://learn.microsoft.com/en-us/azure-stack/user/azure-stack-dev-start-howto-vm-nodejs) | ||
- [Despliegue API Python](https://www.geeksforgeeks.org/how-to-deploy-python-application-in-aws/) | ||
- [Despliegue de API Java](https://learn.microsoft.com/en-us/azure-stack/user/azure-stack-dev-start-howto-vm-java) | ||
|
||
## 8. Consideraciones para pedir tu Project Feedback | ||
|
||
Antes de agendar tu Project Feedback con tu coach, asegúrate de | ||
tener una coleccion de Postman para probar la API que | ||
desplegaste en Amazon EC2 o Azure VMs. | ||
|
||
## 9. Objetivos de aprendizaje | ||
|
||
> ℹ️ Esta sección será automáticamente generada en el idioma pertinente, a partir | ||
> de los objetivos de aprendizaje declarados en [`project.yml`](./project.yml), | ||
> al crear el repo del proyecto para un cohort en particular usando | ||
> [`./scripts/create-cohort-project.js`](../../scripts#create-cohort-project-coaches). | ||
> | ||
> Acá puedes ver una [lista de todos los objetivos de aprendizaje](../../learning-objectives/data.yml) | ||
> que contempla nuestra currícula. |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
track: web-dev | ||
tags: | ||
- featured | ||
learningObjectives: | ||
- devops-computing-cloud-services |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
esto es instalar las herramientas de la nube respectiva?