SlideShare una empresa de Scribd logo
Kubernetes en DO
Domingo Suarez Torres
domix
domingo.suarez@gmail.com
Intro a Kubernetes
• Kubernetes es "un software Open Source para automatizar el despliegue, escalado
y administración de aplicaciones en contenedores",
• Conectar los contenedores a través de múltiples hosts, escalarlos cuando sea
necesario, implementar aplicaciones sin tiempo de inactividad y “service
Discovery” entre otros, son desafíos realmente difíciles.
• Kubernetes aborda esos desafíos desde el principio con un conjunto de primitivos
y una poderosa API.
• Un aspecto clave de Kubernetes es que se basa en 15 años de experiencia en
Google.
• La infraestructura de Google comenzó a alcanzar gran escala antes de que las
máquinas virtuales se volvieran omnipresentes en el centro de datos y los
contenedores proporcionaran una solución de grano fino para agrupar los clústeres
de manera eficiente.
• La eficiencia en el uso de clusters y la administración de aplicaciones distribuidas
ha estado en el centro de los desafíos de Google.
Origen
• En griego “κυβερνήτης”, significa el timonel o piloto de la
nave.
• Kubernetes es el piloto de un barco de contenedores.
• https://www.youtube.com/watch?v=4ht22ReBjno
Alternativas
•Docker Swarm es la solución de Docker Inc. Ha sido rediseñado
recientemente y está basado en SwarmKit. Está integrado con el
Docker Engine.
•Apache Mesos es un programador (scheduler) de centro de datos, que
puede ejecutar contenedores mediante el uso de diversos frameworks.
Marathon es el framework que le permite orquestar contenedores.
•Nomad de HashiCorp, los creadores de Vagrant y Consul, es otra
solución para administrar aplicaciones en contenedores. Nomad
programa (schedule) tareas definidas en trabajos. Tiene un controlador
Docker que le permite definir un contenedor en ejecución como una
tarea.
•Rancher es un sistema agnóstico de orquestador de contenedores,
que proporciona un panel único con interfaz para administrar
aplicaciones. Es compatible con Mesos, Swarm, Kubernetes, así como
su sistema nativo, Cattle.
Google y Kubernetes
•Lo que principalmente distingue a Kubernetes de otros es su herencia. Kubernetes está
inspirado en Borg, el sistema interno utilizado por Google para administrar sus
aplicaciones (por ejemplo, Gmail, Apps, GCE).
•Con Google vertiendo las valiosas lecciones que aprendieron al escribir y operar Borg
durante más de 15 años en Kubernetes, esto hace que Kubernetes sea una elección
segura cuando se tiene que decidir qué sistema usar para administrar los
contenedores.
•Cuando usamos Gmail, Google Docs, GCE o cualquier otro servicio de Google, se está
utilizando una aplicación en contenedor administrada por Borg en todo el mundo
•Borg fue un secreto de Google durante mucho tiempo, pero ya no.
•Borg es el sistema de orquestación para administrar todas las aplicaciones de Google
a escala.
•Borg finalmente fue descrito públicamente en 2015.
•Para obtener más información acerca de las ideas detrás de Kubernetes, se puede leer
este documento https://research.google.com/pubs/pub43438.html
Componentes de
Kubernetes
• El siguiente tweet de Julia Evans explica de forma sencilla
los distintos componentes de Kubernetes
• https://twitter.com/b0rk/status/872822361199972352
Componentes
•Está formado por un administrador central (también conocido como
master) y algunos nodos worker.
•El administrador ejecuta un API server, un scheduler, un controller y
también un sistema de almacenamiento para mantener el estado
del clúster.
•Kubernetes expone una API (a través del API server): puede
comunicarse con la API usando un cliente local llamado kubectl.
•El scheduler ve las solicitudes de contenedores en ejecución que
llegan a la API y encuentra un nodo adecuado para ejecutar ese
contenedor.
•Cada nodo en el clúster ejecuta dos procesos: un kubelet y un
proxy de servicio. El kubelet recibe solicitudes para ejecutar los
contenedores y los vigila en el nodo local. El proxy crea y
administra reglas de red para exponer el contenedor en la red.
Caracteristicas
• Está formado de un administrador y un conjunto de nodos.
• Tiene un scheduler para colocar contenedores en un clúster.
• Tiene un API server y una capa de persistencia con etcd.
• Tiene un controller para conciliar estados.
• Se implementa en máquinas virtuales o máquinas bare
metal, en nubes públicas o on-premise.
• Está escrito en Go Lang.
Desarrollo de Kubernetes
• Google lo donó a la Cloud Native Computing Foundation
(CNCF) en Julio de 2015.
• La CNCF esta formada por muchas empresas.
• La CNCF posee los derechos reservados del desarrollo y
marcas registradas.
• Para contribuir con código, se debe firmar un acuerdo con
la CNCF
Componentes de la
arquitectura
• Master (Control plane)
• etcd cluster
• API server
• scheduler
• controller manager
• Worker (minion)
• kubelet
• proxy (kube-proxy)
• Container engine
• Network overlay (Opcional)
Arquitectura
Nodos master
•El API server expone una interfaz REST a todos los recursos de
Kubernetes y es altamente configurable.
•La principal responsabilidad del scheduler es colocar los contenedores
en el nodo del clúster de acuerdo con diversas políticas, métricas y
requisitos de recursos. También se puede configurar mediante
indicadores de línea de comando.
•El Controller Manager es responsable de conciliar el estado real del
clúster con el estado deseado, tal como se especifica a través de la API.
Es un bucle de control que realiza acciones basadas en el estado
observado del clúster y el estado deseado. El controller manager también
es configurable.
•El nodo master se puede configurar en una configuración de múltiples
masters para alta disponibilidad. Los schedulers y los controller
managers pueden elegir un líder, mientras que los API servers pueden ser
elegidos por un balanceador de carga.
Nodos workers
• Ejecutan el kube-proxy y kubelet, así como Container
Engine (Docker Engine), pero soporta rkt.
• kubelet interactúa con el Container Engine también
instalado en todos los nodos y se asegura de que los
contenedores que necesitan ejecutarse se estén
ejecutando realmente.
• El kube-proxy está a cargo de administrar la conectividad
de la red a los contenedores.
Kubernetes en DO
Demo
https://github.com/domix/meetup-digital-ocean-k8s

Más contenido relacionado

La actualidad más candente

Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptxDocker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Paradigma Digital
 
Orquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNextOrquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNext
Domingo Suarez Torres
 
Docker como la máxima expresión de Devops - WISIT 2015
Docker como la máxima expresión de Devops - WISIT 2015Docker como la máxima expresión de Devops - WISIT 2015
Docker como la máxima expresión de Devops - WISIT 2015
Gustavo Andres Brey
 
Contenedores como Servicio con Docker
Contenedores como Servicio con DockerContenedores como Servicio con Docker
Contenedores como Servicio con Docker
Fernando Mayo Fernández
 
Docker containers-itb-2021
Docker containers-itb-2021Docker containers-itb-2021
Docker containers-itb-2021
JaimeRamirez212673
 
Presentación Docker
Presentación DockerPresentación Docker
Presentación Docker
ITPAMI
 
Terraspace, the definitive terraform framework
Terraspace, the definitive terraform frameworkTerraspace, the definitive terraform framework
Terraspace, the definitive terraform framework
Mario IC
 
BEEVA | Introducción a Docker
BEEVA | Introducción a DockerBEEVA | Introducción a Docker
BEEVA | Introducción a Docker
BEEVA_es
 
Manejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con HelmManejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con Helm
Mario IC
 
Docker introducción - Flisol 2015 Huancayo
Docker introducción - Flisol 2015 HuancayoDocker introducción - Flisol 2015 Huancayo
Docker introducción - Flisol 2015 Huancayo
Mario IC
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
Nicolás Bello Camilletti
 
Kubernetes: Caso de uso real con mememtum y Taniwa
Kubernetes: Caso de uso real con mememtum y TaniwaKubernetes: Caso de uso real con mememtum y Taniwa
Kubernetes: Caso de uso real con mememtum y Taniwa
Joselu Marina
 
Usando docker
Usando dockerUsando docker
Usando docker
Gustavo Muslera
 
Presentación Docker
Presentación DockerPresentación Docker
Presentación Docker
Gustavo Muslera
 

La actualidad más candente (14)

Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptxDocker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
Docker, kubernetes, openshift y openstack, para mi abuela. techfest 2017.pptx
 
Orquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNextOrquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNext
 
Docker como la máxima expresión de Devops - WISIT 2015
Docker como la máxima expresión de Devops - WISIT 2015Docker como la máxima expresión de Devops - WISIT 2015
Docker como la máxima expresión de Devops - WISIT 2015
 
Contenedores como Servicio con Docker
Contenedores como Servicio con DockerContenedores como Servicio con Docker
Contenedores como Servicio con Docker
 
Docker containers-itb-2021
Docker containers-itb-2021Docker containers-itb-2021
Docker containers-itb-2021
 
Presentación Docker
Presentación DockerPresentación Docker
Presentación Docker
 
Terraspace, the definitive terraform framework
Terraspace, the definitive terraform frameworkTerraspace, the definitive terraform framework
Terraspace, the definitive terraform framework
 
BEEVA | Introducción a Docker
BEEVA | Introducción a DockerBEEVA | Introducción a Docker
BEEVA | Introducción a Docker
 
Manejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con HelmManejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con Helm
 
Docker introducción - Flisol 2015 Huancayo
Docker introducción - Flisol 2015 HuancayoDocker introducción - Flisol 2015 Huancayo
Docker introducción - Flisol 2015 Huancayo
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
 
Kubernetes: Caso de uso real con mememtum y Taniwa
Kubernetes: Caso de uso real con mememtum y TaniwaKubernetes: Caso de uso real con mememtum y Taniwa
Kubernetes: Caso de uso real con mememtum y Taniwa
 
Usando docker
Usando dockerUsando docker
Usando docker
 
Presentación Docker
Presentación DockerPresentación Docker
Presentación Docker
 

Similar a meetup digital ocean kubernetes

Instalacion y uso basico de Kubernetes.
Instalacion y uso basico de Kubernetes.Instalacion y uso basico de Kubernetes.
Instalacion y uso basico de Kubernetes.
Moisés Elías Araya
 
Explorando los objetos centrales de Kubernetes con Oracle Cloud
Explorando los objetos centrales de Kubernetes con Oracle CloudExplorando los objetos centrales de Kubernetes con Oracle Cloud
Explorando los objetos centrales de Kubernetes con Oracle Cloud
Víctor Leonel Orozco López
 
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architectureMeetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
Domingo Suarez Torres
 
Game of pods - Kubernetes
Game of pods - KubernetesGame of pods - Kubernetes
Game of pods - Kubernetes
jdezine
 
Docker y Kubernetes, en busca de la alta disponibilidad
Docker y Kubernetes, en busca de la alta disponibilidadDocker y Kubernetes, en busca de la alta disponibilidad
Docker y Kubernetes, en busca de la alta disponibilidad
Óscar De Arriba González
 
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...
Francisco Javier Barrena
 
Contenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesContenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de Aplicaciones
Bitnami
 
Java Dev Day 2019 No kuberneteen por convivir
Java Dev Day 2019  No kuberneteen por convivirJava Dev Day 2019  No kuberneteen por convivir
Java Dev Day 2019 No kuberneteen por convivir
Domingo Suarez Torres
 
El camino de Java a Kubernetes
El camino de Java a KubernetesEl camino de Java a Kubernetes
El camino de Java a Kubernetes
Mauricio (Salaboy) Salatino
 
Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018
Gonzalo Vásquez
 
Desarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud NativeDesarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud Native
Víctor Leonel Orozco López
 
Kubernetes Operator 101 - Edith Puclla
Kubernetes Operator 101 - Edith PucllaKubernetes Operator 101 - Edith Puclla
Kubernetes Operator 101 - Edith Puclla
Edith Puclla
 
Kubernetes para developers
Kubernetes para developersKubernetes para developers
Kubernetes para developers
Jaime Perera Merino
 
Kubernetes for beginners
Kubernetes for beginnersKubernetes for beginners
Kubernetes for beginners
Andrés Londoño
 
Operadores de Kubernetes: El poder de la automatización
Operadores de Kubernetes: El poder de la automatizaciónOperadores de Kubernetes: El poder de la automatización
Operadores de Kubernetes: El poder de la automatización
Edith Puclla
 
Introduccion a SQL Server 2017 en Docker
Introduccion a SQL Server 2017 en Docker Introduccion a SQL Server 2017 en Docker
Introduccion a SQL Server 2017 en Docker
Eduardo Castro
 
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de KubernetesCloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Domingo Suarez Torres
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJC
Micael Gallego
 
Kubernetes Community Day Spain -> Crossplane
Kubernetes Community Day Spain -> CrossplaneKubernetes Community Day Spain -> Crossplane
Kubernetes Community Day Spain -> Crossplane
Mauricio (Salaboy) Salatino
 
Containers
ContainersContainers
Containers
iT Synergy
 

Similar a meetup digital ocean kubernetes (20)

Instalacion y uso basico de Kubernetes.
Instalacion y uso basico de Kubernetes.Instalacion y uso basico de Kubernetes.
Instalacion y uso basico de Kubernetes.
 
Explorando los objetos centrales de Kubernetes con Oracle Cloud
Explorando los objetos centrales de Kubernetes con Oracle CloudExplorando los objetos centrales de Kubernetes con Oracle Cloud
Explorando los objetos centrales de Kubernetes con Oracle Cloud
 
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architectureMeetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
 
Game of pods - Kubernetes
Game of pods - KubernetesGame of pods - Kubernetes
Game of pods - Kubernetes
 
Docker y Kubernetes, en busca de la alta disponibilidad
Docker y Kubernetes, en busca de la alta disponibilidadDocker y Kubernetes, en busca de la alta disponibilidad
Docker y Kubernetes, en busca de la alta disponibilidad
 
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...
VLCSofting 2021 - HARD AS A POD 落. HARDENING DE DESPLIEGUES EN KUBERNETES CON...
 
Contenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de AplicacionesContenedores y el Futuro del Despliegue de Aplicaciones
Contenedores y el Futuro del Despliegue de Aplicaciones
 
Java Dev Day 2019 No kuberneteen por convivir
Java Dev Day 2019  No kuberneteen por convivirJava Dev Day 2019  No kuberneteen por convivir
Java Dev Day 2019 No kuberneteen por convivir
 
El camino de Java a Kubernetes
El camino de Java a KubernetesEl camino de Java a Kubernetes
El camino de Java a Kubernetes
 
Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018Meetup AWS User Group chile - Diciembre 2018
Meetup AWS User Group chile - Diciembre 2018
 
Desarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud NativeDesarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud Native
 
Kubernetes Operator 101 - Edith Puclla
Kubernetes Operator 101 - Edith PucllaKubernetes Operator 101 - Edith Puclla
Kubernetes Operator 101 - Edith Puclla
 
Kubernetes para developers
Kubernetes para developersKubernetes para developers
Kubernetes para developers
 
Kubernetes for beginners
Kubernetes for beginnersKubernetes for beginners
Kubernetes for beginners
 
Operadores de Kubernetes: El poder de la automatización
Operadores de Kubernetes: El poder de la automatizaciónOperadores de Kubernetes: El poder de la automatización
Operadores de Kubernetes: El poder de la automatización
 
Introduccion a SQL Server 2017 en Docker
Introduccion a SQL Server 2017 en Docker Introduccion a SQL Server 2017 en Docker
Introduccion a SQL Server 2017 en Docker
 
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de KubernetesCloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJC
 
Kubernetes Community Day Spain -> Crossplane
Kubernetes Community Day Spain -> CrossplaneKubernetes Community Day Spain -> Crossplane
Kubernetes Community Day Spain -> Crossplane
 
Containers
ContainersContainers
Containers
 

Más de Domingo Suarez Torres

Contenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMXContenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMX
Domingo Suarez Torres
 
Retos en la arquitectura de Microservicios
Retos en la arquitectura de MicroserviciosRetos en la arquitectura de Microservicios
Retos en la arquitectura de Microservicios
Domingo Suarez Torres
 
Java Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDLJava Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDL
Domingo Suarez Torres
 
Peru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVMPeru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVM
Domingo Suarez Torres
 
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con IstioDevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
Domingo Suarez Torres
 
Cloud Native Development in the JVM
Cloud Native Development in the JVMCloud Native Development in the JVM
Cloud Native Development in the JVM
Domingo Suarez Torres
 
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y EnvoyCloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Domingo Suarez Torres
 
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 ObservabilityCloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 Observability
Domingo Suarez Torres
 
Cloud Native Mexico Presentacion
Cloud Native Mexico PresentacionCloud Native Mexico Presentacion
Cloud Native Mexico Presentacion
Domingo Suarez Torres
 
gRPC: Beyond REST
gRPC: Beyond RESTgRPC: Beyond REST
gRPC: Beyond REST
Domingo Suarez Torres
 
Devops Landscape
Devops LandscapeDevops Landscape
Devops Landscape
Domingo Suarez Torres
 
JVM Reactive Programming
JVM Reactive ProgrammingJVM Reactive Programming
JVM Reactive Programming
Domingo Suarez Torres
 
SGNext Elasticsearch
SGNext ElasticsearchSGNext Elasticsearch
SGNext Elasticsearch
Domingo Suarez Torres
 
Webinar Arquitectura de Microservicios
Webinar Arquitectura de MicroserviciosWebinar Arquitectura de Microservicios
Webinar Arquitectura de Microservicios
Domingo Suarez Torres
 
Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016
Domingo Suarez Torres
 
Ratpack JVM_MX Meetup February 2016
Ratpack JVM_MX Meetup February 2016Ratpack JVM_MX Meetup February 2016
Ratpack JVM_MX Meetup February 2016
Domingo Suarez Torres
 
SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring BootSOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
Domingo Suarez Torres
 
SOA Latam 2015
SOA Latam 2015SOA Latam 2015
SOA Latam 2015
Domingo Suarez Torres
 
SGCE 2015 REST APIs
SGCE 2015 REST APIsSGCE 2015 REST APIs
SGCE 2015 REST APIs
Domingo Suarez Torres
 
javerosmx-2015-marzo-groovy-java8-comparison
javerosmx-2015-marzo-groovy-java8-comparisonjaverosmx-2015-marzo-groovy-java8-comparison
javerosmx-2015-marzo-groovy-java8-comparison
Domingo Suarez Torres
 

Más de Domingo Suarez Torres (20)

Contenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMXContenedores 101 Digital Ocean CDMX
Contenedores 101 Digital Ocean CDMX
 
Retos en la arquitectura de Microservicios
Retos en la arquitectura de MicroserviciosRetos en la arquitectura de Microservicios
Retos en la arquitectura de Microservicios
 
Java Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDLJava Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDL
 
Peru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVMPeru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVM
 
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con IstioDevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
 
Cloud Native Development in the JVM
Cloud Native Development in the JVMCloud Native Development in the JVM
Cloud Native Development in the JVM
 
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y EnvoyCloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
 
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 ObservabilityCloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 Observability
 
Cloud Native Mexico Presentacion
Cloud Native Mexico PresentacionCloud Native Mexico Presentacion
Cloud Native Mexico Presentacion
 
gRPC: Beyond REST
gRPC: Beyond RESTgRPC: Beyond REST
gRPC: Beyond REST
 
Devops Landscape
Devops LandscapeDevops Landscape
Devops Landscape
 
JVM Reactive Programming
JVM Reactive ProgrammingJVM Reactive Programming
JVM Reactive Programming
 
SGNext Elasticsearch
SGNext ElasticsearchSGNext Elasticsearch
SGNext Elasticsearch
 
Webinar Arquitectura de Microservicios
Webinar Arquitectura de MicroserviciosWebinar Arquitectura de Microservicios
Webinar Arquitectura de Microservicios
 
Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016
 
Ratpack JVM_MX Meetup February 2016
Ratpack JVM_MX Meetup February 2016Ratpack JVM_MX Meetup February 2016
Ratpack JVM_MX Meetup February 2016
 
SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring BootSOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
SOA Latam Workshop: Comparison Dropwizard, ratpack & Spring Boot
 
SOA Latam 2015
SOA Latam 2015SOA Latam 2015
SOA Latam 2015
 
SGCE 2015 REST APIs
SGCE 2015 REST APIsSGCE 2015 REST APIs
SGCE 2015 REST APIs
 
javerosmx-2015-marzo-groovy-java8-comparison
javerosmx-2015-marzo-groovy-java8-comparisonjaverosmx-2015-marzo-groovy-java8-comparison
javerosmx-2015-marzo-groovy-java8-comparison
 

Último

Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
AMADO SALVADOR
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Festibity
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
NicandroMartinez2
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
leia ereni
 
Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
JuanaNT7
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
AMADO SALVADOR
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
AbrahamCastillo42
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
YashiraPaye
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
julio05042006
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
KukiiSanchez
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
giampierdiaz5
 
Tecnología 5G Presentación.pdf trabajo .
Tecnología 5G Presentación.pdf trabajo .Tecnología 5G Presentación.pdf trabajo .
Tecnología 5G Presentación.pdf trabajo .
asrielgamer3421
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
codesiret
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
Manuel Diaz
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
bendezuperezjimena
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
doctorsoluciones34
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
cecypozos703
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
maralache30
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Festibity
 
Projecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdf
Projecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdfProjecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdf
Projecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdf
Festibity
 

Último (20)

Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaCatalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador Valencia
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
 
Refrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y ForzadoRefrigeradores Samsung Modo Test y Forzado
Refrigeradores Samsung Modo Test y Forzado
 
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIAMONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
MONOGRAFIA memoria RAM.docx trabajo DE TECNOLOGIA
 
Gabinete, puertos y dispositivos que se conectan al case
Gabinete,  puertos y  dispositivos que se conectan al caseGabinete,  puertos y  dispositivos que se conectan al case
Gabinete, puertos y dispositivos que se conectan al case
 
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
Catalogo general tarifas 2024 Vaillant. Amado Salvador Distribuidor Oficial e...
 
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)
 
Inteligencia Artificial
Inteligencia ArtificialInteligencia Artificial
Inteligencia Artificial
 
herramientas de sitio web 3.0 2024
herramientas de sitio web 3.0  2024herramientas de sitio web 3.0  2024
herramientas de sitio web 3.0 2024
 
TIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololoTIC en educacion.rtf.docxlolololololololo
TIC en educacion.rtf.docxlolololololololo
 
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdfPresentación Seguridad Digital Profesional Azul Oscuro (1).pdf
Presentación Seguridad Digital Profesional Azul Oscuro (1).pdf
 
Tecnología 5G Presentación.pdf trabajo .
Tecnología 5G Presentación.pdf trabajo .Tecnología 5G Presentación.pdf trabajo .
Tecnología 5G Presentación.pdf trabajo .
 
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)
 
Programming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdfProgramming & Artificial Intelligence ebook.pdf
Programming & Artificial Intelligence ebook.pdf
 
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
TODO SOBRE LA INFORMÁTICA, HISTORIA, ¿QUE ES?, IMPORTANCIA Y CARACTERISTICAS....
 
Manual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputoManual de soporte y mantenimiento de equipo de cómputo
Manual de soporte y mantenimiento de equipo de cómputo
 
El uso de las TIC por Cecilia Pozos S..pptx
El uso de las TIC  por Cecilia Pozos S..pptxEl uso de las TIC  por Cecilia Pozos S..pptx
El uso de las TIC por Cecilia Pozos S..pptx
 
HERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptxHERRAMIENTAS WEB--------------------.pptx
HERRAMIENTAS WEB--------------------.pptx
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
 
Projecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdf
Projecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdfProjecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdf
Projecte Iniciativa TIC 2024 SOPRA STERIA. inCV.pdf
 

meetup digital ocean kubernetes

  • 1. Kubernetes en DO Domingo Suarez Torres domix domingo.suarez@gmail.com
  • 2. Intro a Kubernetes • Kubernetes es "un software Open Source para automatizar el despliegue, escalado y administración de aplicaciones en contenedores", • Conectar los contenedores a través de múltiples hosts, escalarlos cuando sea necesario, implementar aplicaciones sin tiempo de inactividad y “service Discovery” entre otros, son desafíos realmente difíciles. • Kubernetes aborda esos desafíos desde el principio con un conjunto de primitivos y una poderosa API. • Un aspecto clave de Kubernetes es que se basa en 15 años de experiencia en Google. • La infraestructura de Google comenzó a alcanzar gran escala antes de que las máquinas virtuales se volvieran omnipresentes en el centro de datos y los contenedores proporcionaran una solución de grano fino para agrupar los clústeres de manera eficiente. • La eficiencia en el uso de clusters y la administración de aplicaciones distribuidas ha estado en el centro de los desafíos de Google.
  • 3. Origen • En griego “κυβερνήτης”, significa el timonel o piloto de la nave. • Kubernetes es el piloto de un barco de contenedores. • https://www.youtube.com/watch?v=4ht22ReBjno
  • 4. Alternativas •Docker Swarm es la solución de Docker Inc. Ha sido rediseñado recientemente y está basado en SwarmKit. Está integrado con el Docker Engine. •Apache Mesos es un programador (scheduler) de centro de datos, que puede ejecutar contenedores mediante el uso de diversos frameworks. Marathon es el framework que le permite orquestar contenedores. •Nomad de HashiCorp, los creadores de Vagrant y Consul, es otra solución para administrar aplicaciones en contenedores. Nomad programa (schedule) tareas definidas en trabajos. Tiene un controlador Docker que le permite definir un contenedor en ejecución como una tarea. •Rancher es un sistema agnóstico de orquestador de contenedores, que proporciona un panel único con interfaz para administrar aplicaciones. Es compatible con Mesos, Swarm, Kubernetes, así como su sistema nativo, Cattle.
  • 5. Google y Kubernetes •Lo que principalmente distingue a Kubernetes de otros es su herencia. Kubernetes está inspirado en Borg, el sistema interno utilizado por Google para administrar sus aplicaciones (por ejemplo, Gmail, Apps, GCE). •Con Google vertiendo las valiosas lecciones que aprendieron al escribir y operar Borg durante más de 15 años en Kubernetes, esto hace que Kubernetes sea una elección segura cuando se tiene que decidir qué sistema usar para administrar los contenedores. •Cuando usamos Gmail, Google Docs, GCE o cualquier otro servicio de Google, se está utilizando una aplicación en contenedor administrada por Borg en todo el mundo •Borg fue un secreto de Google durante mucho tiempo, pero ya no. •Borg es el sistema de orquestación para administrar todas las aplicaciones de Google a escala. •Borg finalmente fue descrito públicamente en 2015. •Para obtener más información acerca de las ideas detrás de Kubernetes, se puede leer este documento https://research.google.com/pubs/pub43438.html
  • 6. Componentes de Kubernetes • El siguiente tweet de Julia Evans explica de forma sencilla los distintos componentes de Kubernetes • https://twitter.com/b0rk/status/872822361199972352
  • 7.
  • 8. Componentes •Está formado por un administrador central (también conocido como master) y algunos nodos worker. •El administrador ejecuta un API server, un scheduler, un controller y también un sistema de almacenamiento para mantener el estado del clúster. •Kubernetes expone una API (a través del API server): puede comunicarse con la API usando un cliente local llamado kubectl. •El scheduler ve las solicitudes de contenedores en ejecución que llegan a la API y encuentra un nodo adecuado para ejecutar ese contenedor. •Cada nodo en el clúster ejecuta dos procesos: un kubelet y un proxy de servicio. El kubelet recibe solicitudes para ejecutar los contenedores y los vigila en el nodo local. El proxy crea y administra reglas de red para exponer el contenedor en la red.
  • 9. Caracteristicas • Está formado de un administrador y un conjunto de nodos. • Tiene un scheduler para colocar contenedores en un clúster. • Tiene un API server y una capa de persistencia con etcd. • Tiene un controller para conciliar estados. • Se implementa en máquinas virtuales o máquinas bare metal, en nubes públicas o on-premise. • Está escrito en Go Lang.
  • 10. Desarrollo de Kubernetes • Google lo donó a la Cloud Native Computing Foundation (CNCF) en Julio de 2015. • La CNCF esta formada por muchas empresas. • La CNCF posee los derechos reservados del desarrollo y marcas registradas. • Para contribuir con código, se debe firmar un acuerdo con la CNCF
  • 11. Componentes de la arquitectura • Master (Control plane) • etcd cluster • API server • scheduler • controller manager • Worker (minion) • kubelet • proxy (kube-proxy) • Container engine • Network overlay (Opcional)
  • 13. Nodos master •El API server expone una interfaz REST a todos los recursos de Kubernetes y es altamente configurable. •La principal responsabilidad del scheduler es colocar los contenedores en el nodo del clúster de acuerdo con diversas políticas, métricas y requisitos de recursos. También se puede configurar mediante indicadores de línea de comando. •El Controller Manager es responsable de conciliar el estado real del clúster con el estado deseado, tal como se especifica a través de la API. Es un bucle de control que realiza acciones basadas en el estado observado del clúster y el estado deseado. El controller manager también es configurable. •El nodo master se puede configurar en una configuración de múltiples masters para alta disponibilidad. Los schedulers y los controller managers pueden elegir un líder, mientras que los API servers pueden ser elegidos por un balanceador de carga.
  • 14. Nodos workers • Ejecutan el kube-proxy y kubelet, así como Container Engine (Docker Engine), pero soporta rkt. • kubelet interactúa con el Container Engine también instalado en todos los nodos y se asegura de que los contenedores que necesitan ejecutarse se estén ejecutando realmente. • El kube-proxy está a cargo de administrar la conectividad de la red a los contenedores.