Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥

Introducción a Kubernetes y metodología de desp...

Introducción a Kubernetes y metodología de despliegue con Python

Meetup Python Bogotá: https://bit.ly/pybog-agosto-20

Avatar for Python Bogotá

Python Bogotá

August 26, 2020
Tweet

Other Decks in Technology

Transcript

  1. Monolíticas Orientado a Servicios Microservicios • No diseñadas para la

    Cloud • Altamente Acopladas • Baja estandarización • Enfoque en Servicios, en un modelo de capas • Componentes Modulares con bajo acoplamiento (SOA) • Los componentes pueden escalar separadamente • Uso de patrones o componentes estándares que permiten cierta automatización • Módulos auto-contenidos, altamente independientes • Cada modulo funciona como una unidad • Altamente portables, independiente de la plataforma • Despliegan en un modelo Cloud • Alta capacidad de Escalamiento Customization; higher costs; slower time to value Standardization; lower costs; faster time to value Evolución Arquitectura
  2. 4 { } { } NoSQL { } { }

    NoSQL API Composition SoR Core Business Operations Empowering Digital teams Systems of Engagement Business logic Mobile Partners SaaS Offerings API Economy IoT XaaS On-Premise Cloud affinity SoR Enterprise Connectivity Events Data Synchronisation Hybrid Integration SoR API & Event Gateway API & Security Gateway SoR API Composition Events Data Sync. “Digital” connectivity SaaS SoR(s) Buenas Prácticas de la Nube para los desarrolladores (desarrollo ágil y tradicional) Arquitectura Cloud Hibrida
  3. ¿Cuál utilizo? ¿Cuándo? Se resume en: Portability Speed Performance &

    Control – Productividad – Libertad – Control – Consistencia 5 Contenedores
  4. Slide Title Goes Here IBM Cloud Kubernetes Service | ©2018

    IBM Corporation Arquitectura Kubernetes API UI CLI Kubernetes Master Worker Node 1 Worker Node 2 Worker Node 3 Worker Node n Registry • Etcd • API Server • Controller Manager Server • Scheduler Server
  5. Slide Title Goes Here IBM Cloud Kubernetes Service | ©2018

    IBM Corporation Capacidades de Kubernetes Intelligent Scheduling Self-healing Horizontal scaling Service discovery & load balancing Automated rollouts and rollbacks Secret and configuration management
  6. 15 Crear nuestra App Web de Python Crear el archivo

    Dockerfile Construir una Imagen Correr y Probar el Docker Correr el Docker en kubernetes • Local • IBM Cloud Desplegar una Python App en Kubernetes
  7. 18 • La Configuración de Docker necesaria • Lista de

    comandos para preparar e iniciar el contenedor • Instrucciones para crear una imagen Crear el Dockerfile 2.
  8. 19 Dockerfile - Ejemplo Obtenemos la imagen base de Python

    de esta versión Creamos un directorio llamado app Establecemos el directorio de trabajo en este nuevo directorio Copiamos el contenido del directorio local en esta nueva carpeta Instalamos las dependencias que se definen en el archivo requeriments.txt Indicamos el puerto en el que se ejecuta la aplicación y el archivo de inicio
  9. 20 Crear la imagen con el siguiente comando: docker build

    –f Dockerfile -t <image_name>:<tag> . docker image ls Verificar su creación con el siguiente comando: Crear la Imagen basada en el Dockerfile 3.
  10. 21 Correr el docker y verificar su funcionamiento en modo

    local con el siguiente comando: docker run –p 5000:5000 app Correr el Docker 4.
  11. 22 • Verificamos la instalación de kubectl con el siguiente

    comando: Kubectl version • Verificar que estamos usando el contexto de Docker para escritorio con el siguiente comando: Kubectl config use-context docker-for-desktop - Local- Kubernets for Desktop “deployment.yaml” • Enviar el archivo YAML a Kubernetes: kubectl apply -f deployment.yaml • Creamos el archivo de configuración: Correr la App en Kubernetes 5.
  12. 23 • Crear un cluster en Kubernetes Service • Enviar

    la imagen a IBM Cloud Registry • Creamos los archivos de configuración: -IBM Cloud- Kubernetes Service “deployment.yaml” • Desplegamos la App en Kubernetes “service.yaml” Correr la App en Kubernetes 5. • Entramos a nuestra cuenta en cloud.ibm.com
  13. 25 Desplegar tu aplicación web Holla Mundo Python con Kubernets

    for Desktop https://kubernetes.io/blog/2019/07/23/get-started-with-kubernetes-using-python/
  14. 26 Guía de IBM Developers para desplegar tu aplicación web

    de Python con Kubernetes Service https://developer.ibm.com/tutorials/scalable-python-app-with-kubernetes/
  15. 27 Simplificar la administración de clusters Extiende tu aplicaciones con

    los servicios de IBM Cloud Seguridad & aislamiento Diseña tu propio cluster Experiencia nativa con código abierto Herramientas operacionales integradas Capacidades de IKS IBM Cloud Kubernetes Service | ©2019 IBM Corporation
  16. Slide Title Goes Here IBM Cloud Kubernetes Service | ©2019

    IBM Corporation Casos de Uso Crear nuevas apps cloud-native Modernización de aplicaciones legado hacia la nube Abrir los data centers para trabajar con servicios cloud