texas.gov cloud migration · libraries nopcommerce, grails, spring app server weblogic, tomcat,...

19

Upload: others

Post on 25-May-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB
Page 2: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Cloud Migration• Heidi Langdon, DIR• Vinkesh Mehta, Deloitte

Page 3: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov• Houses access to hundreds of government services online so you can:

• Renew your driver license• Order a new birth certificate• Find a job with the state• Update the name on your voter registration card• Get a permit to sell Fireworks to the public• Purchase an amusement ride compliance sticker for your

Ferris wheel• & more!Without leaving the comfort of your home.

Page 4: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

The FoundationThe first Texas.gov application was developed in 2001

Page 5: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

The SprawlTexas.gov has grown to include 6 websites and 44“applications”.

Page 6: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Starting place - Fragmented Architecture, 7+ different stacks/frameworks1. RAP FRAMEWORK – 11 INSTANCES

Language Java

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Java

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Java

App Server WebLogic

ESB Oracle SOA

Database Oracle

OS Solaris

2. FEEPAY GRAILS FRAMEWORK –1 INSTANCE

Language Grails

App Server

WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Grails

App Server

WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Grails

App Server

Tomcat

ESB Oracle SOA

Database Mongo/ Oracle

OS Linux

3. FEEPAY LITE FRAMEWORK – 14 INSTANCES

Language Grails

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Grails

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Grails

App Server Tomcat

ESB Oracle SOA

Database Mongo/ Oracle

OS Linux

4. FEEPAY .NET FRAMEWORK – 2 INSTANCES

Language .NET

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language .NET

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language .NET

App Server IIS

ESB Oracle SOA

Database Oracle

OS Windows

5. ORIGINAL FRAMEWORK –10 INSTANCES

Language Java

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Java

App Server WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Java

App Server WebLogic

ESB Oracle SOA

Database Oracle

OS Solaris

6. PROFILE FRAMEWORK – 7 INSTANCES

Language Java

App Server

WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Java

App Server

WebLogic

ESB Oracle SOA

Database Oracle/ Mongo

OS Solaris

Language Java

App Server

WebLogic

ESB Oracle SOA

Database Oracle

OS Solaris

7. CUSTOM JAVA – 46 INSTANCES

Language C#, Groovy, JavaScript, Java, BPEL, PL/SQL

Libraries NopCommerce, Grails, Spring

App Server

WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server

ESB Oracle SOA

Database Azure MS SQL, Oracle, MongoDB

OS Windows, Solaris, Linux

C U R R E N T S T A T E A N D C H A L L E N G E S

Language C#, Groovy, JavaScript, Java, BPEL, PL/SQL

Libraries NopCommerce, Grails, Spring

App Server

WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server

ESB Oracle SOA

Database Azure MS SQL, Oracle, MongoDB

OS Windows, Solaris, Linux

Language C#, Groovy, JavaScript, Java, BPEL, PL/SQL

Libraries NopCommerce, Grails, Spring

App Server

WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server

ESB Oracle SOA

Database Azure MS SQL, Oracle, MongoDB

OS Windows, Solaris, Linux

Page 7: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Is it time to move?• Excess Cost

• Currently incurring server charges for instances 24/7/365, even if they are not actively in use

• Slow Scalability• Requires proactive monitoring, request

submission and manual allocation of additional CPU/storage

• Disaster Recovery• Backups must be run and stored ($$)

just in case• Manual intervention required to re-

route traffic to alternate data center

Page 8: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Is the grass really greener?The “cloud” promises:• Cost

• Infrastructure as code, spin up and down as needed

• Scalability • Monitoring with pre-determined thresholds for auto provisioning

• Disaster Recovery• Opportunity to employ real time failover

Page 9: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Where do we begin?• Moving a small house

via straight, well paved roads, in a sparsely populated area is relatively “easy”.• Transporting a multi-

level structure, via narrow windy streets, is a totally different exercise.

Page 10: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

How do we get there?• Before you move, you need to plan your exact

route and drive it once or twice to uncover hidden hazards.

Page 11: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Modernization - Guiding Principles

Architectural Simplicity

Modern Open Source Innovation

Modern User Experience

Service Oriented, Layered & Modular

Automated, Scalable Infrastructure

Page 12: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

1. Migrate infrastructure to GovCloud.

2. Migrate OS from Solaris to Linux.

3. Migrate application server from WebLogic to Jboss.

6. Update BPEL services to REST based microservices architecture.

7. Prioritize and modernize applications.

Deloitte Digital to modernize user experience and business process.

4. Migrate database from Oracle to AWS RDS.

5. Modernize batch architecture and operations.

SPRING BOOT MICROSERVICES

REDHAT

DATA CENTER INFRASTRUCTURE

DATABASES

BATCH

SOA

APPLICATIONS

AWS GOV CLOUD

DATABASES

SOA

APPLICATIONS

AWS GOV CLOUD

DATABASES

SPRING BATCH, OPCON,…

SOA

APPLICATIONS

AWS GOV CLOUD

DATABASES

SPRING BATCH, OPCON,…

APPLICATIONS

AWS GOV CLOUD

DATABASES

SPRING BATCH, OPCON,…

SPRING BOOT MICROSERVICES

HTML/REACT JS

WEBLOGIC JBOSS EAP JBOSS EAP JBOSS EAP JBOSS EAP

OS REDHAT REDHAT REDHAT

BATCH

Legacy Modernization StagesT E X A S . G O V M O D E R N I Z A T I O N A P P R A O C H

Page 13: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Architecture

E D G E S E C U R I T Y S E R V I C E S L A Y E R

T E X A S . G O V M I C R O S E R V I C E L A Y E R

DPS Backend Services• Facial Recognition • Update DL Photo• DL Change Address

• DL Renewal

IDology• ID proofing Services

NIC• Payment Services

Texas.gov MobileApps

Texas.gov Responsive Web App

Other Agencies• DMV• BON• TDLR

Apple• Wallet Integration• Push notification

C L O U D S E R V I C E S L A Y E R

Page 14: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Responsive Web Application

React.js

Layout Service Composite UI

WorkFlow Help

Validation Multilingual

Error HandlerService Composite UI

Service Composite UI

HTML 5

CSS 3

C O M P O S E D S I N G L E P A G E A P P L I C A T I O N S

Presentation Layer – Logical Diagram (Responsive Web Application)T E X A S . G O V A R C H I T E C T U R E

Page 15: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Application Services LayersT E X A S . G O V A R C H I T E C T U R E

API GATEWAY IDENTIFY ACCESS MANAGEMENT

TEXAS.GOV MICRO SERVICES

WorkFlow

Audit Reporting

Content

Payment Security

Authentication Lookup Verification

USAS

Summary

Text AnalyticsEmail MonitoringFile Transfer

REST

Spring Boot

ElastiCache Simple Queue Service

Aurora RDSSimple Email Service

Tomcat/JBoss

RedHat Linux

B U S I N E S S M I C R O S E R V I C E S

C O R E M I C R O S E R V I C E S

P R E S E N T A T I O N M I C R O S E R V I C E S

Cloud Services

EDGE SECURITY SERVICES LAYER

CLOUD SERVICES LAYER

JWT/OAuth

Web Application Firewall

Page 16: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Modernization• What worked• Cloud – Software defined Infrastructure as code• Cloud – SaaS services• Reusable UI library• Microservices - Simplified, lightweight Architecture• Open Source based components• CI/CD pipeline

Page 17: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Texas.gov Modernization• Cloud Challenges• Using Infrastructure as code needs skills and time

• 3-6 months initial ramp up to create mature reusable scripts• Cloud – Not all services are currently available in GovCloud

• More are coming everyday• Security

• Cloud has all the tools needed to build robust security but needs skills and time.

Page 18: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Thank you

Page 19: Texas.gov Cloud Migration · Libraries NopCommerce, Grails, Spring App Server WebLogic, Tomcat, IIS, Apache Webserver, Oracle HTTP Server ESB Oracle SOA Azure MS SQL, Oracle, MongoDB

Questions?