SlideShare una empresa de Scribd logo
Cloud Native
Arquitectura e infraestructura
Infraestructura
• Hardware y software que soportan aplicaciones
• Data Centers
• Sistemas Operativos
• Pipelines de despliegue
• Administración de la configuración
• etc…
Infraestructura Cloud Native
(Antecedentes)
• 12-Factor Applications de Heroku (Referente)
• Principalmente es sobre hacer que los devs sean
eficientes al permitir separar la lógica de los datos,
automatizando lo más posible, creando diferentes
ambientes para para construcción, distribución y
ejecución.
Infra Cloud Native
• Infraestructura que esta oculta mediante una abstracción con un API de
fácil uso.
• Estas abstracciones a menudo imponen limitaciones sobre las diversas
tecnologías.
• Administrada por software. Habilita escalamiento, resiliencia,
aprovisionamiento y mantenibilidad.
• No es correr tus cargas de trabajo en la nube pública.
• No es ejecutar aplicaciones en contenedores. Ni que sean Microservicios.
• Mucho menos es utilizar un orquestador de contenedores (Mesos/
Kubernetes)
Cloud Native
• "Cloud Native" es el nombre de un enfoque particular
para diseñar, construir y ejecutar aplicaciones basadas en
la infraestructura como servicio, combinada con nuevas
herramientas y servicios operativos como integración
continua, container engines y orquestadores.
• El objetivo es mejorar la velocidad, la escalabilidad y
finalmente el costo/margen.
• No olvidar: Cloud Native es principalmente sobre como
se diseña y construye, más que en donde se ejecuta.
Estrategia Cloud Native
• Se trata de reducir el riesgo técnico.
• En el pasado, el enfoque tradicional para evitar el peligro
era moverse lenta y cuidadosamente.
• El enfoque de Cloud Native se trata de moverse
rápidamente pero tomando pasos pequeños, reversibles
y de bajo riesgo.
• Esto puede ser extremadamente poderoso pero no es
gratis y no es fácil. Es un gran cambio filosófico y cultural,
así como un desafío técnico.
Principios Arquitecturales
• Infraestructura como servicio: se ejecuta en servidores que pueden aprovisionarse
de manera flexible bajo demanda.
• Diseñar sistemas que los utilicen o evolucionar hacia una arquitectura de
microservicios: los componentes individuales son pequeños y están desacoplados.
• Automatice y codifique: reemplazar tareas manuales con scripts o código.
• Telemetría y salud: La aplicación es responsable de proveer un mecanismo para
determinar si esta disponible o si su estado es optimo (saludable), de igual forma
debe permitir obtener métricas clave sobre su funcionamiento.
• Containerize: procesa paquetes con sus dependencias, haciéndolos fáciles de
probar, mover e implementar.
• Orquestar: abstraiga los servidores individuales en producción con herramientas de
gestión y orquestación listas para usar.
Meetup DigitalOcean Cloud Native architecture
–Domingo Suarez Torres
“Cloud Native no es una solución a todos los
problemas, las organizaciones deben conocer su
alcance y tomar lo que es mejor para ellas.”
Patrones clave en Cloud Native
• Resiliency
• Service Discovery
• Configuration
• Logging
• Health Checks
• Metrics
¿Como implementar dichos Patrones?
• ¿Bibliotecas?
• No olvidar que con Microservices es común y en
ocasiones recomendado en ocasiones, tenerlos escritos
en diversos lenguajes de programación.
• Hay que buscar bibliotecas para cada lenguaje de
programación.
• Sidecar
Sidecar Pattern
• http://bit.ly/sidecard-pattern
• Empaquetar un conjunto cohesivo de tareas con la aplicación
principal, con su propio proceso o contenedor,
proporcionando una interfaz homogénea para los servicios de
plataforma en diversos lenguajes de programación o runtimes.
Ventajas
• Un sidecar es independiente de su aplicación principal en términos de
entorno de ejecución y lenguaje de programación, por lo que no es
necesario desarrollar un sidecar por lenguaje.
• El sidecar puede acceder a los mismos recursos que la aplicación
principal. Por ejemplo, un sidecar puede supervisar los recursos del
sistema utilizados tanto por el sidecar como por la aplicación principal.
• Debido a su proximidad a la aplicación principal, no hay una latencia
significativa cuando se comunica entre ellos.
• Incluso para las aplicaciones que no proporcionan un mecanismo de
extensibilidad, puede usar un sidecar para extender la funcionalidad
adjuntándola como proceso propio en el mismo host o subcontenedor
que la aplicación principal.
Tooling
Meetup DigitalOcean Cloud Native architecture
Kubernetes
• Orquestar todo el ciclo de vida de contenedores
• Docker
• rkt
• Linux Container
• Administra recursos de nodos (VMs)
• Basado en 16 años de experiencia de Google (Borg)
Meetup DigitalOcean Cloud Native architecture
Prometheus
• Extrae métricas de nuestros componentes (Exporters)
• Base de datos de series de tiempo
• Lenguaje de consultas muy poderoso
• Gestionar alertas
• Delega la creación de dashboards a herramientas
externas como Graphana
Meetup DigitalOcean Cloud Native architecture
OpenTracing
• Permite analizar el comportamiento de sistemas
distribuidos usando trazas
• Instrumentar el código. Existen implementaciones para
muchos lenguajes y bibliotecas.
Meetup DigitalOcean Cloud Native architecture
Jaeger
• Distributed context propagation
• Distributed transaction monitoring
• Root cause analysis
• Service dependency analysis
• Performance / latency optimization
Meetup DigitalOcean Cloud Native architecture
gRPC?
• Stands for ‘gRPC Remote Procedure Call’
• Open source project from Google hosted by the Cloud Native
Computing Foundation
• High Performance, general purpose standard base, RPC
framework.
• Open sourced of ‘Stubby RPC’ at Google
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
¿Suena bien?
Pero, no es suficiente…
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
Features
• Administración de tráfico
• Ruteo de peticiones
• Espejeo (Mirroring)
• Inyección de fallas
• Service Discovery & Load Balancing
• Monitoreo
• Traceo distribuido
• Métricas
•Inyección automática de sidecar (Envoy Proxy)
Meetup DigitalOcean Cloud Native architecture
Complejo

Más contenido relacionado

PDF
Introduccion Azure Containers
PDF
Presentacion arquitectura en_la_nube.
PDF
Informe de Diseño de Sistemas
PPTX
Capitulo 3
PPTX
Estudiante de Maestría.
PDF
Insight - Architecture Design
PDF
Cloud Native Development in the JVM
PDF
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Introduccion Azure Containers
Presentacion arquitectura en_la_nube.
Informe de Diseño de Sistemas
Capitulo 3
Estudiante de Maestría.
Insight - Architecture Design
Cloud Native Development in the JVM
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy

Similar a Meetup DigitalOcean Cloud Native architecture (20)

PDF
Principios de cloud native
PPTX
The Lord of Cloud Native – Part 1: The Concentric Rings of the Cloud-Native E...
PDF
Ejemplo de articulo cloud computing
PPTX
Practica subida por jose yañez
PPTX
Cloud native Computing Perú Octubre
PPTX
Cloud Computing Amazon
PPTX
Contenedores y el Futuro del Despliegue de Aplicaciones
PPTX
Bases de Datos No Relacionales (NoSQL)
PDF
Bootcamp gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
PPTX
To Cloud or not To Cloud, That is the question!
PDF
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
PDF
Commit conf arquitectura-microservicios_v1.0
PPTX
Curso Cloud Computing, Parte 1: Amazon Web Services
PDF
Construyendo una nube con OpenStack
PPTX
Webinar: Descubre los diferentes servicios Cloud Native en Azure
PPTX
Cloud Native en Azure Webinar atSistemas
DOCX
Trabajo de robert
PPTX
CLOUD COMPUTING
PPT
Cloud computing
PDF
Cloud computing UGB
Principios de cloud native
The Lord of Cloud Native – Part 1: The Concentric Rings of the Cloud-Native E...
Ejemplo de articulo cloud computing
Practica subida por jose yañez
Cloud native Computing Perú Octubre
Cloud Computing Amazon
Contenedores y el Futuro del Despliegue de Aplicaciones
Bases de Datos No Relacionales (NoSQL)
Bootcamp gdg cloud scl - introduccion a arquitectura cloud en gcp - oliver ...
To Cloud or not To Cloud, That is the question!
Implementación de Cloud Computing con Software Libre y medidas de seguridad p...
Commit conf arquitectura-microservicios_v1.0
Curso Cloud Computing, Parte 1: Amazon Web Services
Construyendo una nube con OpenStack
Webinar: Descubre los diferentes servicios Cloud Native en Azure
Cloud Native en Azure Webinar atSistemas
Trabajo de robert
CLOUD COMPUTING
Cloud computing
Cloud computing UGB
Publicidad

Más de Domingo Suarez Torres (20)

PDF
Projecto Loom - Structured Concurrency - JavaMexico - Julio 2024
PDF
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
PDF
Java Dev Day 2019 No kuberneteen por convivir
PDF
Contenedores 101 Digital Ocean CDMX
PPTX
Retos en la arquitectura de Microservicios
PDF
Java Cloud Native Hack Nights GDL
PDF
meetup digital ocean kubernetes
PDF
Peru JUG Micronaut & GraalVM
PDF
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
PDF
Cloud Native Mexico - Introducción a Kubernetes
PDF
Cloud Native Mexico Meetup enero 2018 Observability
PDF
Cloud Native Mexico Presentacion
PDF
gRPC: Beyond REST
PDF
Devops Landscape
PDF
Orquestación de contenedores con Kubernetes SGNext
PDF
JVM Reactive Programming
PDF
SGNext Elasticsearch
PDF
Webinar Arquitectura de Microservicios
PDF
Elasticsearch JVM-MX Meetup April 2016
PDF
Ratpack JVM_MX Meetup February 2016
Projecto Loom - Structured Concurrency - JavaMexico - Julio 2024
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Java Dev Day 2019 No kuberneteen por convivir
Contenedores 101 Digital Ocean CDMX
Retos en la arquitectura de Microservicios
Java Cloud Native Hack Nights GDL
meetup digital ocean kubernetes
Peru JUG Micronaut & GraalVM
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
Cloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Presentacion
gRPC: Beyond REST
Devops Landscape
Orquestación de contenedores con Kubernetes SGNext
JVM Reactive Programming
SGNext Elasticsearch
Webinar Arquitectura de Microservicios
Elasticsearch JVM-MX Meetup April 2016
Ratpack JVM_MX Meetup February 2016
Publicidad

Último (20)

PDF
Calidad desde el Docente y la mejora continua .pdf
PPTX
Yogurt de tocosh (1).pptx preparacion receta
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PDF
Estrategia de apoyo tecnología grado 9-3
DOCX
Las nuevas tecnologías en la salud - enfermería técnica.
PDF
Aristoteles-y-su-forma-de-entender-el-conocimiento-y-las-personas.pdf
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PDF
La electricidad y la electrónica .pdf n
PPT
Que son las redes de computadores y sus partes
PPTX
Administración se srevidores de apliaciones
PDF
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
PDF
Manual Videovigilancia IP y Seguridad Electronica-Parte 1-Book-cl.pdf
PPTX
Introduccion a servidores de Aplicaciones (1).pptx
PDF
Maste clas de estructura metálica y arquitectura
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PDF
Estrategia de apoyo tecnología miguel angel solis
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPT
introduccion a las_web en el 2025_mejoras.ppt
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
Calidad desde el Docente y la mejora continua .pdf
Yogurt de tocosh (1).pptx preparacion receta
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
Estrategia de apoyo tecnología grado 9-3
Las nuevas tecnologías en la salud - enfermería técnica.
Aristoteles-y-su-forma-de-entender-el-conocimiento-y-las-personas.pdf
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
La electricidad y la electrónica .pdf n
Que son las redes de computadores y sus partes
Administración se srevidores de apliaciones
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
Manual Videovigilancia IP y Seguridad Electronica-Parte 1-Book-cl.pdf
Introduccion a servidores de Aplicaciones (1).pptx
Maste clas de estructura metálica y arquitectura
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
Estrategia de apoyo tecnología miguel angel solis
historia_web de la creacion de un navegador_presentacion.pptx
Zarate Quispe Alex aldayir aplicaciones de internet .docx
introduccion a las_web en el 2025_mejoras.ppt
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad

Meetup DigitalOcean Cloud Native architecture

  • 1. Cloud Native Arquitectura e infraestructura
  • 2. Infraestructura • Hardware y software que soportan aplicaciones • Data Centers • Sistemas Operativos • Pipelines de despliegue • Administración de la configuración • etc…
  • 3. Infraestructura Cloud Native (Antecedentes) • 12-Factor Applications de Heroku (Referente) • Principalmente es sobre hacer que los devs sean eficientes al permitir separar la lógica de los datos, automatizando lo más posible, creando diferentes ambientes para para construcción, distribución y ejecución.
  • 4. Infra Cloud Native • Infraestructura que esta oculta mediante una abstracción con un API de fácil uso. • Estas abstracciones a menudo imponen limitaciones sobre las diversas tecnologías. • Administrada por software. Habilita escalamiento, resiliencia, aprovisionamiento y mantenibilidad. • No es correr tus cargas de trabajo en la nube pública. • No es ejecutar aplicaciones en contenedores. Ni que sean Microservicios. • Mucho menos es utilizar un orquestador de contenedores (Mesos/ Kubernetes)
  • 5. Cloud Native • "Cloud Native" es el nombre de un enfoque particular para diseñar, construir y ejecutar aplicaciones basadas en la infraestructura como servicio, combinada con nuevas herramientas y servicios operativos como integración continua, container engines y orquestadores. • El objetivo es mejorar la velocidad, la escalabilidad y finalmente el costo/margen. • No olvidar: Cloud Native es principalmente sobre como se diseña y construye, más que en donde se ejecuta.
  • 6. Estrategia Cloud Native • Se trata de reducir el riesgo técnico. • En el pasado, el enfoque tradicional para evitar el peligro era moverse lenta y cuidadosamente. • El enfoque de Cloud Native se trata de moverse rápidamente pero tomando pasos pequeños, reversibles y de bajo riesgo. • Esto puede ser extremadamente poderoso pero no es gratis y no es fácil. Es un gran cambio filosófico y cultural, así como un desafío técnico.
  • 7. Principios Arquitecturales • Infraestructura como servicio: se ejecuta en servidores que pueden aprovisionarse de manera flexible bajo demanda. • Diseñar sistemas que los utilicen o evolucionar hacia una arquitectura de microservicios: los componentes individuales son pequeños y están desacoplados. • Automatice y codifique: reemplazar tareas manuales con scripts o código. • Telemetría y salud: La aplicación es responsable de proveer un mecanismo para determinar si esta disponible o si su estado es optimo (saludable), de igual forma debe permitir obtener métricas clave sobre su funcionamiento. • Containerize: procesa paquetes con sus dependencias, haciéndolos fáciles de probar, mover e implementar. • Orquestar: abstraiga los servidores individuales en producción con herramientas de gestión y orquestación listas para usar.
  • 9. –Domingo Suarez Torres “Cloud Native no es una solución a todos los problemas, las organizaciones deben conocer su alcance y tomar lo que es mejor para ellas.”
  • 10. Patrones clave en Cloud Native • Resiliency • Service Discovery • Configuration • Logging • Health Checks • Metrics
  • 11. ¿Como implementar dichos Patrones? • ¿Bibliotecas? • No olvidar que con Microservices es común y en ocasiones recomendado en ocasiones, tenerlos escritos en diversos lenguajes de programación. • Hay que buscar bibliotecas para cada lenguaje de programación. • Sidecar
  • 12. Sidecar Pattern • http://bit.ly/sidecard-pattern • Empaquetar un conjunto cohesivo de tareas con la aplicación principal, con su propio proceso o contenedor, proporcionando una interfaz homogénea para los servicios de plataforma en diversos lenguajes de programación o runtimes.
  • 13. Ventajas • Un sidecar es independiente de su aplicación principal en términos de entorno de ejecución y lenguaje de programación, por lo que no es necesario desarrollar un sidecar por lenguaje. • El sidecar puede acceder a los mismos recursos que la aplicación principal. Por ejemplo, un sidecar puede supervisar los recursos del sistema utilizados tanto por el sidecar como por la aplicación principal. • Debido a su proximidad a la aplicación principal, no hay una latencia significativa cuando se comunica entre ellos. • Incluso para las aplicaciones que no proporcionan un mecanismo de extensibilidad, puede usar un sidecar para extender la funcionalidad adjuntándola como proceso propio en el mismo host o subcontenedor que la aplicación principal.
  • 16. Kubernetes • Orquestar todo el ciclo de vida de contenedores • Docker • rkt • Linux Container • Administra recursos de nodos (VMs) • Basado en 16 años de experiencia de Google (Borg)
  • 18. Prometheus • Extrae métricas de nuestros componentes (Exporters) • Base de datos de series de tiempo • Lenguaje de consultas muy poderoso • Gestionar alertas • Delega la creación de dashboards a herramientas externas como Graphana
  • 20. OpenTracing • Permite analizar el comportamiento de sistemas distribuidos usando trazas • Instrumentar el código. Existen implementaciones para muchos lenguajes y bibliotecas.
  • 22. Jaeger • Distributed context propagation • Distributed transaction monitoring • Root cause analysis • Service dependency analysis • Performance / latency optimization
  • 24. gRPC? • Stands for ‘gRPC Remote Procedure Call’ • Open source project from Google hosted by the Cloud Native Computing Foundation • High Performance, general purpose standard base, RPC framework. • Open sourced of ‘Stubby RPC’ at Google
  • 29. Pero, no es suficiente…
  • 33. Features • Administración de tráfico • Ruteo de peticiones • Espejeo (Mirroring) • Inyección de fallas • Service Discovery & Load Balancing • Monitoreo • Traceo distribuido • Métricas •Inyección automática de sidecar (Envoy Proxy)