Este documento describe la evolución de Zemsania desde 2003 hasta 2016, pasando de ser una empresa de ingeniería de software y sistemas en Barcelona y Madrid a tener 20 oficinas en España e internacionales y 4 divisiones de negocio. También resume la oferta de servicios cloud de Zemsania, incluyendo IaaS, PaaS y herramientas DevOps como Docker, Kubernetes y Terraform.
3. 3
EVOLUCIÓN ZEMSANIA
Expansión Iberia:
•A Coruña
•Bilbao
•Sevilla
•Valencia
•Zaragoza
2003
2005 2006
2007
2008
2011
2012
2013
2014
2015
Inicio Zemsania IT en
Barcelona y Madrid:
•Ingeniería de Software
•Sistemas y Netoworking
•Soluciones de Negocio
Nueva
División
Telecom.
Zemsania TIC
Centro de Soporte
técnico y Software Factory
Service Managed TIC
Nuevas Oficinas Iberia:
•Oviedo
•Vigo
•Málaga
•Baleares
•Lisboa
Expansión Internacional:
•Brasil
•México
•Colombia
•USA
Nuevas Oficinas Internacional:
•Perú
•UK
Spin-off División
Automatización y Control
Comsa Emte OASYS.
Incorporación de 70 ingenieros
en Industria e Ingeniería Tech
Incorporación nuevas
soluciones tecnológicas:
NEURONODAL, MIIMETIQ y
socio tecnológico CHAKRAY
Nueva División
Digital Business
Transformation
(Cloud & Smart)
2016
Año del inicio de la nueva
oferta de Servicios y
Soluciones y productos en
Transformación Digital:
- Open Data
- Cloud
- IoT
4. 4
ALIANZA ITA
International Tech Alliance lo compone un conjunto de empresas con una amplia experiencia en el Sector tecnológico (IT, Telco, OT)
con el objetivo de configurar una oferta global para dar respuesta a la Transformación Digital en las empresas tanto a niveltecnológico
como en la nueva economía digital.
5. 5
Introducción
5
Los Usuarios no pagan por tu tecnología ni por tu infraestructura,
sino por el valor que les aportas
El nuevo paradigma Cloud está cambiando la
forma en la que entendemos el desarrollo de
software. Simplifica notablemente el manejo de
la infraestructura para que puedas centrarte
exclusivamente en tu negocio.
El 100% del crecimiento tecnológico en 2020,
será producido por la tercera plataforma
6. INTRODUCCIÓN
El IaaS Cloud da una vuelta de
tuerca a la instalación de
arquitecturas y reduce el tiempo de
setup, provisioning y puesta en
marcha de semanas a horas o
minutos.
IaaS
Un modelo donde se ofrece un
servicio de infraestructura de
recursos IT:
- Capacidad de proceso (CPU)
- Almacenamiento
- Servicios asociados (DNS, load-
balancers, backup, escalabilidad,
etc)
El cliente únicamente paga por uso.
7. CASO EJEMPLO
Poniendo de lado la
tecnología, podemos ver
casos de ejemplo en la vida
real:
Pizza casera
VS
Pizza de restaurant
En la pizza casera, se
realiza todo el proceso de
compra, preparación y
cocción mientras que en la
pizza de restaurant solo es
necesario esperar por la
pizza, ya creada por el
restaurant (proveedor)
8. 8
Introducción
Cuánto tiempo necesitas para subir una sóla de línea de
código a producción?
Meses Días Segundos
Metodología
Waterfall Scrum para desarrolladores Scrum en todo el proyecto Scrum corporativo
Operaciones
Equipo externo Persona dedicada, fuera del
equipo
Integrado en el equipo Operaciones en Cloud
QA
Equipo externo Persona dedicada, fuera del
equipo
Integrado en el equipo Test A/B automático.
Analítica
Entorno
Hardware propio
Desarrollo vs sistmas
Máquinas virtuales Aprovisionamiento
automático IaaS
Auto-scalable, docker en
PaaS. Entorno Cloud
Despliegue
Manual, CVS, SVN, Shell
scripts
Git, Maven, Jenkins, sonar Continuous delivery,
Gradle, Go
Continuous deployment.
Kubernetes, Ansible con
logging y monitorización
central
Arquitectura
Monolítica, Soap Librerias compartidas, XML
Rest
Api Rest (json) Microservicios
Documentación Offline Online Colaborativa Integrado en el proyecto
Semanas
9. 9
Evolución del hosting a Cloud
Incremento de productividad y disponibilidad
Reducción costes y Time to market
On-premise
Datacenters
Virtualización
Iaas
Paas
1980’s
1990’s
2010
2000’s
2014
Cloud 1.0
Resources
Cloud 2.0
Apps
Hay que centrarse en lo que más valor aporta,
reduciendo costes
Hostings internos y datacenters ( 1980-2000 )
IaaS & DevOps ( 2000 - 2014 )
PaaS & DevOps ( 2014 - actualidad )
- Muchos bugs y time to market alto. Se tenía que tener en cuenta el montaje y cableado de máquinas.
- En los 90 aparecen los DataCenter, despreocupándonos de la luz, refrigeración, etc...pero todavía con
servidores dedicados
- Desarrolladores independientes de sistemas y de producción
Código Control de
versiones
Build, test y
release
Configuración y
automatización
Iaas Monitorización
Configuración y Entrega continua ( cada día / hora )
- Paas facilita las tareas de automatización del ciclo de vida, configuración, despliegue y escalado de las
aplicaciones
- Reducimos time to market
10. 10
Características del Cloud
5- Time To Market menor
1- Auto-escalable y elástica
2- Permite centrarse en el negocio
3- Ahorro de costes
4- Facilita la innovación
● Conservadora: Asegura los picos de tráfico
● Ahorradora: Servidores para soportar un volumen de carga normal, pero tendrá problemas con picos
● Cloud elástico: Añade más máquinas de forma automática si se necesita
● Facilidad para desarrollar: Disponibilidad de APIs y componentes preconfigurados
● Simplifica la operativa: La administración y monitorización de máquinas se realiza con dashboards
● El negocio es lo más importante: Facilita la configuración de servidores, balanceadores, etc...
● Pago por servicio o uso: Ahorras conceptos como la red, almacenamiento, energía, refrigeración, etc...
● Componentes preconfigurados: Por ejemplo una base de datos master-slave ya instalada y autoescalable
● Ahorro de la inversión inicial: Permite experimentar sin invertir en hardware
● Obsolescencia tecnológica: Las máquinas serán siempre de última generación. No hay que renovar.
● Entrega continua: Ventaja competitiva
● Tests automáticos: Permite generar releases testeadas y en producción en un más corto espacio de tiempo
11. TIPOS DE CLOUD IaaS
Conjunto de instancias con configuración flexible y escalable en un entorno de infraestructura compartida
Entorno donde el cliente final no comparte infraestructura ni recursos con otro cliente. Útil en casos de
clientes con tratamiento sensible de datos. El despliegue se realiza a medida.
Entorno que utiliza recursos de los dos tipos de cloud. Es la solución más utilizada y que mejor rendimiento
ofrece para albergar dos entornos distintos
● Mejora la operación IT interna
● Mejoras modestas en costes
● Escalabilidad y flexibilidad limitadas
● Riesgo a la obsolescencia
● Gestión limitada a los picos de demanda
● Proyectos a medida
● Mayor control y personalización
● Mayor escala, costes más bajos
● Difícil integración con sistemas Legacy
● Incertidumbres sobre calidad y seguridad
● Mayor nivel de autogestión
● Modular y escalable
● Máximo partido a todas las ventajas Cloud
● Mix de los anteriores
● Incertidumbres sobre calidad
● Incertidumbres sobre seguridad
● Adecuado en escenarios poco críticos
● Proyectos a medida
HÍBRIDO
PRIVADO
PÚBLICO
12. ENTORNOS APLICABLES A IaaS
• Cualquier entorno web que sus recursos sean limitados debido a una
infraestructura tradicional.
• Servicio web que requiere demanda extra en unas fechas concretas, pero que no
lleve con ello una gran inversión.
• Entorno de escritorios en cloud. Despliegue de equipos de cliente en un tiempo
reducido.
• Almacenamiento empresarial con copias de seguridad.
• Rápida implementación de una gran infraestructura.
• Entornos BigData en los que se procesa gran volumen de información.
Mapa de Datacenters
13. AWS vs Google vs Microsoft
Año de lanzamiento 2006 2011 2010
Disponibilidad
11 Datacenters / 37 CDN
9 regiones / 27 zonas
4 Datacenters / 16 CDN
4 regiones / 13 zonas
20 Datacenters / 32 CDN
20 regiones
Instancias: familias 5 familias 4 familias 2 familias
Instancias: tipos 28 tipos 15 tipos 18 tipos
Balanceador de carga ElasticLB – DNS – Auto-scaling Solución combinada
Gestión de tráfico – Solución
combinada
Storage EBS 1Gb - 1Tb Disco persistente 1Gb+ Drive 16Mb – 1Tb
Storage archivo Glacier - -
Backup
Snapshots. Se paga por el
incremento de espacio
Se almacenan 3 copias en la
mismo región geográfica
Snapshots. Se paga por el
incremento de espacio
Se almacenan en todas las
plataformas alrededor del mundo
Snapshots. Se paga por el
incremento de espacio
Se guardan 3 copias, pero se
pueden replicar hasta 6 zonas
Conexión Pública - Internet
Pública – Internet
Red de fibra óptica regional
Pública - Internet
Tipo Por hora Por minuto (min. 10 min) Por minuto
Modelos
On-demand – Instancias
Reservadas - Spot
On-demand – Sustained-use
(descuento por uso)
On-demand
14. 14
DevOps conecta el desarrollo, QA y operaciones, de tal forma que el ciclo
de vida típico del desarrollo de software se automatiza para industrializar
el proceso. Es una estrategia, no una implementación.
Cambio cultural
No son sólo herramientas, sino una
sincronización entre personas,
procesos y herramientas, siendo la
persona el elemento crítico de la
ecuación
➔ Foco en el negocio
➔ Entregas incrementales
➔ Refuerza a los miembros del equipo
➔ Fomenta las comunicaciones entre
➔ Fomenta el equipo de compañeros
➔ Mejora continua
➔ Se preocupa por la calidad de servicio
➔ Agile
Intereses
Qué es DevOps?
15. 15
Soluciones Cloud - Cloud privado
OpenShift 3
OpenShift es una solución PaaS (Platform-as-a-Service) privada. Permite
construir, desplegar y ejecutar aplicaciones en contenedores. Open source,
disponible bajo licencia de Apache 2.0 licence y lanzada en 2 versiones:
Origin (community) y Enterprise
IaaS ( Openstack )
Host ( Atomic / CoreOs)
Orquestación (kubernetes )
Contenedores (Docker)
PaaS (OpenShift)
- Despliegue completo de aplicaciones
- Capacidad de construir y desplegar imágenes
Docker desde el código fuente
- Tiene ciclo de vida ( CI / staging / production)
- Orientado al usuario y administradores
Características
16. 16
Soluciones Cloud
IaaS ( Cloud Público / Privado)
Host 1 ( CoreOs)
Orquestración - Kubernetes Cluster
Docker
Automatización ( Terraform + Ansible )
Host n ( CoreOs)
PaaS
El despliegue automático de la infraestructura, podrá realizarse en cloud
público o bien On-Premise
17. 17
Herramientas DevOps
Docker containers wrap up a piece of software in a complete filesystem that contains everything it needs to run:
code, runtime, system tools, system libraries – anything you can install on a server. This guarantees that it will
always run the same, regardless of the environment it is running in.
Automatización
Contenedores
Ansible es una herramienta open-source desarrollada en python y comercialmente ofrecida por AnsibleWorks que
la definen como un motor de orquestación muy simple que automatiza las tareas necesarias en el campo de las TI.
Sus características son:
Clientes sin agentes (Overhead muy bajo)
Método de autenticación por ssh (preferiblemente con claves) en paralelo
No necesita usuario root (permite la utilización de sudo)
Permite utilizar comandos básicos
Para configurar tareas complejas utiliza lenguaje YAML (Playbooks)
Terraform es una herramienta para construir, cambiar y versionar la infraestructura de forma segura y
eficiente. Terraform puede gestionar los proveedores de servicios más populares, como AWS de Amazon, así
como soluciones privadas implantadas en local.
18. 18
Orquestación de servicios
Sistema Open-source para gestionar aplicaciones dentro de contenedores en múltiples hosts en un cluster. Su
intención está en desplegar aplicaciones dockenizadas o bien microservicios de un modo sencillo pero muy
potente.
Kubelet - Minion
ContainerContainer
Pod
ContainerContainer
Pod
ContainerContainer
Pod
Kubelet - Minion
ContainerContainer
Pod
ContainerContainer
Pod
ContainerContainer
Pod
Kubelet - Minion
ContainerContainer
Pod
ContainerContainer
Pod
ContainerContainer
Pod
Kubernetes Master
Etcd
Scheduler
Nodes
API
Pods
Replication
Controllers
Services