Arquitectura de CloudQué es Cloud computing?
Para qué sirve un Cloud?
Clouds públicos (Amazon, Azure, Google Cloud) vs Clouds privados (openstack, vmware) Ventajas / Desventajas. Caso Mercado Libre
Aplicaciones Web en Cloud
Estrategias de Deploy
MercadoLibre
Qué es Cloud computing? -> evolución
Cliente - Mainframe Cliente/s - Servidor Cliente/s - Servidores
FE
API
Cliente/s - Cloud
Qué es Cloud computing? -> estructura
Servidores Físicos
Qué es Cloud computing? -> estructura
Servidor Físico
Servidores Virtuales
Apps (APIs, FEs, Jobs, etc)
Qué es Cloud computing? -> estructura
App (APIs, FEs, Jobs, etc)
Servidores Virtuales Servidores Físicos
Para qué sirve un Cloud?
Ventajas
Reducir costos
Reusar infraestructura
Tolerante a fallos
Seguridad externa
Orientado a servicios
Desventajas
No hay control directo del hardware
Alto costo de inversión
Fallos de hardware en cascada
Seguridad interna
Control de costos
Clouds Públicos
Amazon Azure
Google Cloud
Cloud Privado
OpenStackOpen source software for creating private and public clouds.
VMwareVMware vCloud Suite is an integrated offering that brings together vSphere hypervisor and VMware vRealize Suite
Mercadolibre, Arquitectura Histórica
Inicialmente
...
LB (A10, F5)
Luego, con el crecimiento
Mercadolibre, Arquitectura Histórica
MeliCloud
...
...APIs
FEs
OW
MeliCloud Logica
Mercadolibre, Arquitectura Actual
MeliCloud
...
Fury
OtherAWS
Services
Services
Services
Aplicaciones Web en Cloud
... Farm o pool de NginX
LB interno
...
Pool de apps (APIs, FEs)
LB interno
...Pool de apps (APIs, FEs)
LB externo
Estrategias de Deploy
...
Pool de la app por scope (prod, test, etc)
DevGithub
BuildServer(Integración Continua)
Deploy
Tipos de deploy:PartialFull
Blue greenAll in
Mercadolibre: AWS & DockerCaso Mercadolibre
Introducción a Docker
Proceso de Desarrollo y Deploys en Producción
Uso de AWS
Arquitectura en la Nube
MercadoLibre
Caso Mercadolibre
~18.000.000 de Requests por Minuto
~400 Deploys por dia
~1000 Developers en 5 Centros de desarrollo
~20.000 Servidores Virtuales
~1500 Fisicos
Caso Mercadolibre
Cómo nos organizamos con este CAOS?
Caso Mercadolibre
Fury
Caso Mercadolibre
Caso MercadolibreFURY LAYOUT
Introducción a Docker
Docker permite empaquetar una aplicación y sus dependencias en un contenedor virtual que se puede ejecutar en cualquier servidor. Esto ayuda a permitir la flexibilidad y portabilidad en donde la aplicación se puede ejecutar, ya sea en las instalaciones físicas, la nube pública, nube privada, etc
Introducción a Docker
DesarrolloEntornos unificados (sin importar el SO)Mocks simplificadosUna única herramientaSimplicidad para sumarse a colaborar en un proyecto
ProducciónCodigo + Entorno en un único lugarNo hay necesidad de bootstraps on bootPosibilidad de bajar la imagen de producción para debugFast build (vs crear un ami)
Introducción a Docker
Development Image Production Image Build
ROOT.war
Node folder
Uso de AWS
Flexible
Autoscaling
SDN (Software defined Network)
Interoperabilidad con nuestro DC
Servicios de automatización y control
Seguridad
Uso de AWS
Permite definir infraestructura
Mantiene el estado de toda la infraestructura y sus recursos
Permite extender el funcionamiento mediante “custom-resources”
Resuelve acciones de rollbacks y fallas
Guarda información de logging de todas las transacciones
Uso de AWS
Uso de AWS
Uso de AWS
Creación de Repositorio (Custom)
Creacion de subnetsUna por AZ
Creación de configuraciones de jenkins para CI & Build (Custom)
Creación de configuraciones en ES y Kibana para logging (Custom)
Creación de SecurityGroups para la aplicación
Creación de ACL’s de las redes e interconexión de subnets
Configuración de reglas de interoperabilidad para conectarse a la plataforma actual
Uso de AWS
Arquitectura en la Nube
Arquitectura en la Nube
Arquitectura en la Nube
Arquitectura en la Nube
Arquitectura en la Nube
Preguntas
Franco YadonFabian Bertetto
Team Arquitectura para el centro de desarrollo de Córdoba
Gracias!
Top Related