MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José...

20
MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

Transcript of MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José...

Page 1: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

MODERNIZANDO APLICACIONES LEGACY CON OCP

José Manuel FardelloArquitecto de tecnologíaUniversistat Oberta de Catalunya

Page 2: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya
Page 3: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

LA UNIVERSIDAD EN CIFRAS

UOC, 24 años de educación online

Fundada en 1994, la universidad actualmente ofrece: 27 grados 30 másters propios 44 másters universitarios doctorados, seminarios, cursos, ciclos formativos, etc

En cifras

54.312 estudiantes3 centros de investigación

45 grupos de investigación406 profesorado propio y personal

investigador3.536 profesorado colaborador y tutores

Estudiantes en 90 países

Page 4: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

PLAN ESTRATÉGICO 2016-2021

En 2016 la UOC comienza un plan de modernización en muchas líneas de trabajo, para afrontar la velocidad de cambio requerida por el ecosistema tecnológico.

API managementGestión de la identidadMigración al cloudNuevos sistemas de gestión académicaNuevos sistemas de soporte

Page 5: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

PLAN ESTRATÉGICO

Plan estratégico 2016-2021

En 2016 la UOC comienza un plan de modernización en muchas líneas de trabajo: API MNGT Gestión académica (SIS)

GI Cloud 2(sas, pass)

G. obsolescencia

2016 2017 2018

OCP

Cloud 1 (sas)

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 6: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

GESTIONAR EL LEGACY¿Por qué migrar el legacy?

Para 2017 se habían incrementado los procedimientos, los sistemas, la cantidad de instancias de middleware por equipo..●  Cambios en los proveedores de operaciones●  Incremento de la complejidad en sistemas.●  Incremento de procedimientos●  Duplicidad de servicios●  Incompatibilidad de tecnologías●  En 2017 el SLA se vio afectado por procedimientos obsoletos y la complejidad de los

sistemas. ●  La gestión de servicios en maquinas virtuales dificulta el gobierno●  El harware sube de specs, y fuerza una la convergencia de múltiples instancias.

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 7: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

CVEs Y LA NECESIDAD DE SUBIR LA VERSIÓN DE JAVA

El problema clave

Ciertos sistemas internos, “legacy” de la UOC, basados mayormente en Tomcat/struts/Oracle, afectados por varias vulnerabilidades, necesitan, por una cadena de dependencias del framework, subir la versión de tomcat y java.Estos sistemas están a la espera de ser reemplazados por nuevos proyectos en desarrollo pero aún se espera de ellos varios años extra de vida.

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 8: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

CVEs y la necesidad de subir la versión de Java

Más problemas:

Por diseño estas apps, requieren bibliotecas y configuraciones muy específicas, el acceso a datos por ejemplo se controla desde otra app, que debe ser desplegada, esto hace especialmente complejo generar una imagen s2i.

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 9: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

02 CVEs y la necesidad de subir la versión de Java

MÁS PROBLEMAS:

El acceso a datos está segmentado, las bases de datos solo exponen sus “listeners” en interfaces no rutadas.Por diseño se debe limitar el acceso a estas aplicaciones desde determinadas redes.Muchas apps tienen código PLSQL y dependencias entre esquemas de bbdd, dificultando una migración de rdbms.

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 10: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

Migration Path: OCP

Page 11: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

MIGRATION PATHS

Tomcat 5/6/7, jboss 7 OpenJDK8 / S2i / spring / posgresql

Recode / data migration Alto nivel de integración, CI, seguridad, 12f compliant.

Tomcat 5/6/7, jboss 7 JWS / s2i wildfly s2i

custom S21 images, middleware recoderehost/replatform

Alto nivel de integración, pero fragmenta el middleware, > gestión de imágenes s2i.

Tomcat 5/6/7, jboss 7 JWS / wildfly binary rehost/replatform Alto nivel de integración, traslada la complejidad a la pipeline.

Tomcat 5/6/7, jboss 7 JWS / wildfly custom Docker+ configmaps

custom docker + configmaps imagesrehost/replatform

Alto nivel de integración, cada proyecto incluye instrucciones de build específicas.

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 12: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

ESQUEMA DE ARQUITECTURA

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Sistema de publicación explícita

Se ha diseñado el sistema de manera que, conjuntamente con la normativa de desarrollo , todas las llamadas a APIs deban ser explícitamente habilitadas. Las llamadas a APIs legacy están limitadas por firewalling, mientras se re-codifican los clientes para incluir nuevas medidas de seguridad.

Page 13: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

ESQUEMA DE ARQUITECTURA

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

VLANs extendidas a varios CPDs, solo los nodos “legacy” tienen acceso a vlans backend.El balanceador deniega llamadas a APIs, solo se permiten en condiciones de seguridad.Existen VIPs legacy en el balanceador para el legacy “por firewall”

Page 14: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

MIGRACIÓN

FROM openshift/t8uoc

RUN curl http://artifactory.url/<XXXYY>/app.war \

-o /deployments/app.war

2 Dockerfile

$ oc new-project testapp $ oc new-app git@<scm.url>:project/app.git --name=testapp$ oc expose service testapp

1 Recompilar (Java 8)

Page 15: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

MIGRACIÓN

FROM openshift/t8uoc

RUN curl http://artifactory.url

Configmaps$oc create configmap ibdconnector-config \ --from-file=iBDconnector $ oc volume dc/testapp --add -t configmap -m \ /home/campus/configHome/iBDConnector \ --configmap-name=ibdconnector-config NFS/PV Configmap

EdiciónUbicuidadAPI

Requiere montarloEdición manual

Page 16: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

SOLVENTANDO PROBLEMAS DE REDES

ACCESO A REDES BACKEND

Legacy Node1

Legacy Node1

Legacy Node1

oc edit namespace newproject

annotations:

openshift.io/node-selector: “region=secondary"

openshift.io/description: ""

openshift.io/display-name: ""

openshift.io/node-selector: “"

Page 17: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

LIMITANDO EL ACCESO A REDES

IP WHITELIST

$oc annotate route <name>metadata:

annotations:

haproxy.router.openshift.io/ip_whitelist: 180.5.61.153 192.168.1.0/24 10.0.0.0/8

Legacy Node1

Legacy Node1

Legacy Node1

Page 18: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

CONCLUSIONES

Page 19: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

CONCLUSIONES

Se han solventado errores al actualizar java+middleware.Se ha mejorado la aplicación de parchesHemos mejorado la eficiencia del middleware (-XX:+ExitOnOutOfMemoryError), < concurrencia, y DC.Se han simplificado y automatizado procedimientos (reducidos en un 90%)Se ha ganado en gobierno de apps (infierno shellscript)Simplificado la recolección de estadísticas Simplificado la recolección de logs

BENEFICIOS DE MIGRAR APPS LEGACY

No se puede mostrar la imagen. Puede que su equipo no tenga suficiente memoria para abrir la imagen o que ésta esté dañada. Reinicie el equipo y, a continuación, abra el archivo de nuevo. Si sigue apareciendo la x roja, puede que tenga que borrar la imagen e insertarla de nuevo.

Page 20: MODERNIZANDO APLICACIONES LEGACY CON OCP€¦ · MODERNIZANDO APLICACIONES LEGACY CON OCP José Manuel Fardello Arquitecto de tecnología Universistat Oberta de Catalunya

MUCHAS GRACIAS

José FardelloArquitecto de tecnologíaUniversistat Oberta de Catalunya