Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Workload migration to CaaS - DevOps 360

manelcab
November 26, 2018

Workload migration to CaaS - DevOps 360

Cómo afrontar una migración de servicios a plataforma kubernetes, elección de la mejor estratégia, selección de candidatos, integración con servicios existentes y cambio cultural.

manelcab

November 26, 2018
Tweet

Other Decks in Technology

Transcript

  1. DevOps 360° • Why? • Estrategia • Roadmap • Selección

    • DeepDive • Análisis y diseño • Despliegue • Foundations • Governance and teams • Puntos de partida Agenda 2
  2. DevOps 360° • Escalabilidad • Fiabilidad • Seguridad Automatización •

    Creación estándares, Best practices, .. • Crear experiencias, referencias Foundation Why? Traditional Workloads • Flexibilidad • Velocidad • Costes (recursos, operativos,…) • Infrastructure as a code 4
  3. DevOps 360° • Rehosting (lift-and-shift): No cloud optimizations • Replataforming

    (lift-tinker-and-shift): several optimizations but no changing the core architecture of the application • Repurchasing: Moving to a different product. • Refactoring / Re-architecting : Application is architected and developed, typically using cloud-native features. • Retire  • Retain 6 Strategies for Migrating Applications to the Cloud – Stephen Orban Estrategia 5
  4. DevOps 360° Clasificación & selección en función de la estrategia:

    • Rehosting • Replataforming • Repurchasing • Refactoring • Retire • Retain Selección Cloud ready Cloud native Complejidad & coste 7
  5. DevOps 360° Criterios Recursos CPU RAM I/O Selección Stack Unix/Win

    WS/AS/DB PHP/Java Función Producto Específica Mix Estado Stateless Stateful TTY Batch/ETL Transf. Puente Dependencias Autocontenido N-dependencias Equipos Made-in-house Dev Tercero Multiple Roadmap Migración Substitución Baja Características Criticidad 24x7 SLA/SLOs Actividad Delta Periódico Variable · · · 8
  6. DevOps 360° • Primeros pasos  Cargas de reducido volumen

    & simples. • Avanzar rápidamente, objetivos alcanzables,  Crear referencias Menor complejidad • Simples • Autocontenidas • Stateless • Baja criticidad • Pocos equipos Mayor complejidad • TTY • Batch, ETL,.. • Multifuncional • Mix de productos • N-dependencias Selección 9
  7. DevOps 360° Fuentes origen • Documentación existente • CMDB (si

    existe, desactualizada, info parcial) • Diferentes formatos y estándares • Mapas de relaciones estáticos, obsoletos,… • Herramientas  información dispersa, duplicidad, … • Equipos relacionados • Sysadmin, Developers, Responsables, Cliente, … • Discovery tools • Agente, Agentless, network tools, .. Comunicación equipos • Exposición de objetivos • Definición de roadmap • Identificación de acciones y cambios necesarios • Escuchar y analizar Infraestructura Aplicación Red DeepDive 11
  8. DevOps 360° Información obtenida • Stack software • Productos (WS,

    AS, BDs, …) • Librerías/extensiones • Network • Segmento de red • Endpoints • IN & OUT • Loadbalancers • Sesión • Proxy • Seguridad • Certs, keys, repositorios, .. • Características • Upload • Mail • Logs • Licencias • … Ficha características y configs • Stack Software • Networking • App + dependencias DoD • Confirmación candidato • Consideraciones Librerías/extensiones Openssl CURL PDO JSON MBString PHP_zip Tokenizer PHP_XML XML PHP_GD2 Ctype PDO_OCI SOAP LDAP DeepDive 12
  9. DevOps 360° Ejemplo: • Workload simple • Apache + PHP

    + Mysql • Issues: • Crontab root • Crontab usuarios no root • Tareas/acciones addicionales • Update modelo datos • Exportaciones • Generación reports • … • Sistema propio de alerting para actividad, funcionamiento,… • Logs  upgrade versión para poder enviar al stdout!! • Transferencias • Entrantes & salientes. • Ejecuciones remotas ( ssh, ...), automatizadas o no! • … DeepDive 13
  10. DevOps 360° • Componentes • Deployment, PV, secret, config maps,..

    • Persistencia sesión, réplica datos, … • Network • Endpoints ( 443, 9200,…) • Cambios de IP afecta a Firewall, Proxy? ... • Utilización proxy?, App/Imagen  HTTP_PROXY • Relaciones • Cambios para usuarios ( acceso, autentización, …) • Cambios en otros sistemas ( consumers, ...) • Movimiento de componentes para liberación recursos • Core (Ojo!) • AD, BBDD, Proxy, Mail, DNS, Firewall, … • Integración • Standard • Mantenimiento ( 100% automatizado?) • Troubleshooting/ Trazabilidad Análisis y diseño 15
  11. DevOps 360° Referencias • Seguridad • Certificados, credenciales  Vault,

    secrets,… • Logs • Configuraciones stdout/stderr • Log exporter  ELK • Network • Consumers  Se requieren cambios? • Providers • Monit ( Metrics & Alerting) • Prometheus • Grafana • InfluxDB • Kapacitor • Integración sistemas actuales • Data Backup • Export, snapshots? Foundations Toolchain Aplicar y mejorar Análisis y diseño 16
  12. DevOps 360° Apps hooks Mínimos para replatforming • Health •

    Events (Metrics) • Logs • Support (Run books) Análisis y diseño 17
  13. DevOps 360° • Build • Validación • Test funcionales App

    • Consumers • Pruebas operativas • Monit • B&R • Promotion • Migration Plan • Equipos involucrados • Network  LoadBalancers, Cnames, … • Data import • Steps • Activación Blue/Green, Canary,.. • Rollback steps • Gobernance & Teams • Skills, Toolchain, procesos IPC,... • Day+1 • Monitorizar, analizar, mejorar,… Despliegue 19
  14. DevOps 360° Base • Arquitecturas de referencia • Documentación estándares

    de diseño • Descripción y detalle componentes • Afinidad de sesión, ingesta, autenticación, logs, health tests,… Next: • Bots • Runbooks • Evolución toolchain • Autodescubrimiento • Mejoras Monitoring • Network (SDN,…) • Loadbalancers, DNS, Proxy, FW ... • Seguridad • Mapas de relaciones dinámicos Foundations 20
  15. DevOps 360° • Gobierno • Definir, compartir y clarificar modelo

    • Roles y equipos involucrados • Comunicación • Estado migración, procesos, … • Metodología • Procesos actualizados (IPC, …) • Teams • Desde el principio • Formación • Onboarding, Hands on, Toolchain, … • Actividades (Build, analisis, diagnostico,…) • Cultura & evangelización • Learn & share Governance & teams 21
  16. DevOps 360° 1. Gobierno 2. Equipo 3. Automatización/toolchain A continuación

    evolucionar … - Ampliación estándares - Try & error - Nuevos servicios - Cloud native apps - Tools - Migration factory - ... Puntos de partida 22