14
From Red Hat to WSO2 How to move from a disparete Red Hat middleware environment to a fully integrated open source WSO2 platform

Wso2 whitepaper from-redhat-to-wso2

Embed Size (px)

Citation preview

From Red Hat to WSO2

How to move from a disparete Red Hat middleware environment to a fully integrated open source WSO2 platform

2

Inhoudsopgave

1 A SOUND FOUNDATION FOR YOUR CONNECTED BUSINESS ..................................................... 3

1.1 HOW DO YOU BUILD A CONNECTED BUSINESS? ................................................................... 3

1.2 HOW DO YOU BUILD AN INTEGRATED BUSINESS? ................................................................ 3

1.3 HOW DO YOU BUILD AN ACCESSIBLE BUSINESS? .................................................................. 4

1.4 HOW DO YOU BUILD A COLLABORATIVE BUSINESS? ............................................................. 4

1.5 HOW DO YOU BUILD AN ADAPTIVE BUSINESS? .................................................................... 5

2 RED HAT TO WSO2 ................................................................................................................. 6

3 MIGRATING FROM RED HAT MIDDLEWARE TO A WSO2 INTEGRATED PLATFORM .................... 7

3.1 MIGRATING RED HAT ENTERPRISE APPLICATION PLATFORM (JEE SERVER) TO WSO2 ............ 7

3.2 MIGRATION OF EXISTING JEE ASSETS ................................................................................... 7

3.2.1 WEB APPLICATIONS ......................................................................................................... 7

3.2.2 SOAP WEB SERVICES ........................................................................................................ 7

3.2.3 RESTFUL WEB SERVICES .................................................................................................... 7

3.2.4 JEE CONNECTOR ............................................................................................................... 8

3.2.5 DATABASE ACCESS ........................................................................................................... 8

3.2.6 MESSAGING ..................................................................................................................... 8

4 MIGRATE JBOSS ESB ............................................................................................................... 8

5 MIGRATE JBOSS FUSE ............................................................................................................. 8

6 MIGRATE JBOSS DATA VIRTUALISATION ................................................................................. 9

7 MIGRATE A-MQ ..................................................................................................................... 9

8 MIGRATE BRMS ..................................................................................................................... 9

9 MIGRATE BPM SUITE ............................................................................................................ 10

10 MIGRATE JBOSS PORTAL .................................................................................................... 10

11 MIGRATE JBOSS JON .......................................................................................................... 10

12 YENLO HELPS YOU TO BECOME A CONNECTED BUSINESS .................................................... 11

12.1 MIGRATION PLAN ........................................................................................................... 11

12.2 CHANGES REQUIRED TO TRANSFORM TO A CONNECTED BUSINESS .................................. 12

13 SUMMARY ...................................................................................................................... 13

14 REFERENCES....................................................................................................................... 13

3

1 A Sound foundation for your connected business Enterprises today, representing every industry, need to step away from their traditional ways of engaging with their customers and suppliers to ensure a richer experience for these parties when they interact with a system via integration. Through connected business, the value proposition of an enterprise increases the focus of that business in their area of expertise, and allows them to outsource all other tasks through connected services; this enables enterprises to improve their relationship with customers and partners. It makes the enterprise more agile and drives new revenue opportunities. The concept of a connected business is to make the user’s experience more productive and effective.

To be a Connected Business you need an environment that is

x Integrated: accelerates interactions inside and outside the organization

x Accessible: reduces interaction friction and cost

x Collaborative: increases engagement and enhances productivity

x Adaptive: senses business activity and automatically adapts

1.1 How do you build a Connected Business? To build a Connected Business many organizations are adopting new IT delivery models based on:

x API-centric, event-driven, and Service-Oriented Architecture x Mobile access and user engagement platforms x DevOps practices and Cloud-Native platforms x Big Data analytics and business activity monitoring

1.2 How do you build an Integrated Business? By integrating business data, processes, rules, services and capabilities between internal and external IT assets, IT teams create an environment accelerating business interactions inside, outside, and across organizational boundaries.

1. Deliver self-service applications enabling customers to connect and view available products, inventory, and transaction status.

2. Publish APIs exposing data/process and enabling connection 3. Deliver automated notifications based on business activity (triggered by messages,

transaction execution, and data state changes) Building an Integrated business is similar to a process called "refactoring." Take your existing business data, processes, rules, services and bring them into an environment where they can be re-used easily to solve business problems.

4

1.3 How do you build an Accessible Business? Scaling customers and revenue growth requires reaching out into new markets and across diverse channels. As customers and prospects gain increased access to your support services, product marketing, and sales associates, your business has an opportunity to increase sales and customer retention. Effective IT teams create an accessible, connected business environment that reduces interaction friction, and decreases interaction cost. Offer your customers self-service to compare products, review price and availability, place orders, check order status, and contact support through any means they find convenient. Consider the following roadmap items when moving towards an accessible business environment:

1. Publish APIs 2. Offer developer portals and developer self-service 3. Create mobile applications 4. Web applications, SaaS applications, business process automation, iPaaS or other portals 5. Foster a customer community and increase brand awareness by integrating with social

forums and interfacing with product advocates

1.4 How do you build a Collaborative Business? Increase engagement and enhance productivity by improving the collaboration experience. Connected business participants can more effectively collaborate by having the forums to share and to see transparently the opportunities and pitfalls. You need to have the ability to create your own:

1. Social Collaborative Enterprise Store to provide visibility of services and Applications, Mobile applications

2. Static reports and dynamic analytic dashboards 3. Email based on Activity Stream feeds 4. Tenant focused resources

Innovative, next-generation platforms decrease the IT effort required to build a more collaborative, connected business. IT teams are partnering with their core business counterparts to map activities, define key business events, and establish business-oriented workspaces that incorporate business activity streams.

5

1.5 How do you build an Adaptive Business? An adaptive business senses business activity and automatically adapts supply chain orders, modifies inventory distribution, tunes product placement, and adjusts marketing messages. By proactively adapting business interactions and executions based on market signals, organizations can create a just-in-time, agile business environment that seizes business opportunities. Consider the following roadmap items when moving towards an adaptive business environment:

1. Capture business activity (identified by messages, transaction execution, and data state changes) and store data points for future analytics

2. Deliver automated notifications to stakeholders and systems based on business activity, stakeholder accountability, and authority.

3. Automatically adapt business process execution based on events and current conditions 4. Break the Connection of API Lifecycle from Service Lifecycle to create more agility

WSO2 is in the forefront delivering the solutions that enable the Connected Business, which are built on its award-winning, 100% open source cloud and enterprise middleware platforms. It is the only company that can give you

x Security solutions to provide authentication and fine grained entitlement inside and outside the company especially for outside organizations interacting with your company

x Enterprise Service Bus to connect all your internal legacy services and data sources into new managed APIs and services and legacy partners

x API Management to provide visibility and metrics of usage of APIs inside and outside your organization

x Business Activity Monitoring to give you the information on the operation and social data to give you the information you need to discover opportunities and issues

x WSO2 Complex Event Processor to give you actionable events x Mobile integration to make developing and deploying mobile easy and safe x Cloud Native, fully multi-tenant software to deploy and scale cheap and fast x Ecosystem PaaS to enable rapid iterations and development of new applications quickly to

meet new opportunities x Enterprise store to enable social interactions among developers, improve re-use and extend

your value chain beyond your internal organization, help you manage the new IT world of many applications and APIs.

Innovative, next-generation platforms decrease the IT effort required to build a more collaborative, connected business. IT teams are partnering with their core business counterparts to map activities, define key business events, and establish business-oriented workspaces that incorporate business activity streams. Relevant technology products include user engagement micro-sites, agile DevOps Platform as a Service, and business activity monitoring solutions.

6

2 Red Hat to WSO2 This whitepaper will help your company to become a true connected business and explains what needs to be done if you specifically migrate from a Red Hat JBoss environment to a fully integrated WSO2 platform. To migrate your current architecture to a new architecture is no easy task, we have, based on our extensive knowledge, written down the prerequisites for a successful migration.

7

3 Migrating from Red Hat Middleware to a WSO2 Integrated Platform

3.1 Migrating Red Hat Enterprise Application Platform (JEE Server) to WSO2 There are several alternatives at hand when planning the migration of JEE Applications from Red Hat Enterprise Application Platform (Red Hat EAP) to WSO2 Integration Platform. WSO2 Application Server is a runtime environment that is not as monolithic as JEE servers and thus able to support several programming models in parallel. As WSO2 Application Servers supports the JEE Web Profile developers could continue utilizing their JEE skills when developing typical web applications. For all projects demanding the latest features and achievements of the Java ecosystem the runtime supporting the Spring Framework is at hand. Developers could in this context benefit from their JEE skills and go beyond JEE’s limitations. Additionally there is a tailored runtime for implementing Web services available (Apache CXF) in which developers could also benefit from their JEE skills and programming model. On the other side WSO2 Application Server can host services written in JavaScript as it supports the Jaggery JavaScript Framework eliminating the impedance mismatches across different layers of the Web application and service development. This environment is ideal for Web centric developers as they could utilize their JavaScript skills on the client and server side.

3.2 Migration of existing JEE assets

3.2.1 Web applications One typical type of JEE applications are web applications, consisting of components rendering end user facing web pages (web apps), components encapsulating business logic (EJB-Light Beans) and components taking care to persist data in databases (EJBs) mostly secured by transactions. For all these JEE Web profile applications there is WSO2 Application Server as drop-in replacement at hand. WSO2 Application Server supports in addition the Spring Framework as application framework. With the Spring Framework having a lot of common with JEE programming model (annotations, dependency injection, transaction support, database access etc.) there is no fundamental gap to bridge between both worlds. Therefor another migration strategy could be to move from JEE towards Spring Framework.

3.2.2 SOAP Web services Another typical type of JEE applications are Web services exposing business functionality as SOAP services. These type of applications have to get slightly adapted to get deployed into WSO2 Application Server and its tailor made runtime for SOAP-Web services preserving the JEE programming model.

3.2.3 RESTful Web services RESTful Web services are a first class citizen within WSO2 Application Server. JEE compliant RESTful Web services can be deployed into WSO2 Application Server with minor changes and the JEE programming model can be maintained.

8

3.2.4 JEE Connector JEE offers a standardized way of accessing 3rd party systems like ERP-Systems through JEE Connectors. These JEE Connectors support standard JEE security mechanisms (JAAS) and transaction support thus being a convenient means of invoking these systems from within JEE servers. From an architectural point of view this kind of integration of 3rd party systems could be done in a true service oriented way by exposing these 3rd party systems as Web services through an enterprise service bus. Because of this WSO2 intentionally does not support JEE connectors and recommends getting 3rd party systems accessible by exposing them as Web services through WSO2 Enterprise Service Bus with all its benefits like multi-protocol support, support of broad spectrum of security protocols and governance, just to name a few. If there is not already an adapter for a specific 3rd party system at hand within WSO2 ESB it will be feasible to implement extension modules for WSO2 ESB to access these external systems.

3.2.5 Database Access Sometimes JEE applications are just a means to get data accessible residing in database management systems. WSO2 Data Services Server offers a convenient and efficient way of exposing database queries as SOAP or REST services omitting Java programming at all and still supporting security and transactional requirements. If there is need for programmatic data manipulation before sending data out to the client application, WSO2 Application Server is the tool of choice utilizing its Java Data Sources support that is well known to JEE developers.

3.2.6 Messaging When it comes to the migration of JEE message based applications (message driven beans) there are several options at hand. Utilizing Spring Framework support in WSO2 Application Server would be a straightforward migration strategy preserving the majority of existing JEE code. Alternatively messages could get dequeued and processed by WSO2 Enterprise Services Bus.

4 Migrate JBoss ESB The migration strategy of JBoss ESB deployments is simple as there are no alternatives than to re-engineer them. Ideally the reengineering process of legacy JBoss ESB artifacts maps them against well-known and understood Enterprise Integration Patterns [1]. Based on these patterns the migration to WSO2 ESB is straightforward as there are well-documented implementation strategies for each of the Enterprise Integration Patterns

5 Migrate JBoss Fuse Although JBoss Fuse artifacts (e.g. Camel routes) can not be executed natively by WSO2 ESB the migration of them can be considered more a re-writing than a re-engineering as both platforms share fundamentally the same concepts: ESBs exchange messages and route them internally through distinct intermediaries. Metadata is internally exposed in some form of a message context and a vast amount of building blocks to manipulate, transform and enhance messages is in stock. In addition a broad spectrum of means to control the flow of messages is available. Both platforms have well documented implementation strategies for Enterprise Implementation Patterns [2].

9

6 Migrate JBoss Data Virtualization JBoss Data Virtualization provides a unified virtualized view (virtual database) of information federated from multiple disparate sources. It is a data integration solution used to integrate data from sources such as relational databases, text files, web services, and ERP/CRM mainframe systems. Such a virtual database can get accessed like a relational data source (JDBC) or through REST interfaces as Web service. WSO2 Data Services Server is capable of exposing all kinds of data sources (relational databases, spreadsheets, flat files etc.) as Web service (SOAP or REST). WSO2 Data Services Server was designed to provide a developer friendly way of exposing data sources as manageable (security, monitoring, support of different transport protocols) and high-performance Web services. It supports basic federation through nested queries. To migrate from JBoss Data Virtualization to WSO2 Data Services Server one has to identify the specific use cases (queries) of the utilization of JBoss Data Virtualization and implement them as Web services in WSO2 Data Services Server.

7 Migrate A-MQ WSO2 Message Broker could be utilized as a direct replacement of Red Hat A-MQ messaging solution. Both solutions support common messaging related standards like JMS or AMQP. With WSO2 Message Broker being a distributed, highly scalable, fault-tolerant and persistent message broker non-functional requirements will also be met. Even complex networks of WSO2 Message Brokers spanning across data centers could get implemented by combining WSO2 Message Brokers, WSO2 ESBs and WSO2 Cloud Gateways.

8 Migrate BRMS WSO2 Business Rules Server could be an alternative runtime environment for business rules residing in Red Hat JBoss Business Rules Management System (BRMS). As both products support the open-source Drools project as rules engine there is no fundamental concept mismatch to bridge. WSO2 Business Rules Server can expose business rules as Web service and thus get utilized by every software component capable of invoking Web services. Business rules written in Drools domain specific rules language can get governed by WSO2 governance registry and thus benefit of WSO2’s monitoring, management and governance environment. Use cases targeting the complex event processing feature within JBoss BRMS should consider migrating to WSO2 complex event processing (CEP) server. As WSO2 CEP server contains a dedicated high performance CEP engine with a specialized domain specific language for complex event processing queries it should be the tool of choice.

10

9 Migrate BPM Suite Red Hat JBoss Business Process Suite is capable of executing long running business processes expressed as BPMN 2.0 compliant models and it utilizes at its core the Drools engine to navigate through process instances. WSO2 has WSO2 Business Process Server in stock being capable of executing long running business processes expressed as BPEL compliant models. Although WSO2 Business Process Server is right now not able to process BPMN 2.0 compliant models there is no need to bridge a conceptual gap because in general BPMN models could get expressed as BPEL models, too. The migration process comprises the translation of existing BPMN 2.0 process models into BPEL compliant models. Followed by a refactoring of invoked EJB services towards web services and decoupling of the runtime environments. In case of human tasks being part of the processes they could get factored out and decoupled by introducing a WS-HumanTask compliant runtime.

10 Migrate JBoss Portal WSO2 offers a fundamentally different approach of providing tailored user interfaces on a per user base than JEE Portals (Portlet containers). WSO2 User Engagement Server does not enforce a straitjacket specification nor limit itself to one programming model (Java Portlets) to expose dashboards for enterprise users. WSO2 User Engagement Server provides web centric developers with HTML, CSS and JavaScript skills a runtime to host entire web sites, microsites and gadgets. Enterprise users are enabled to build their own dashboards in a graphical way or consume predefined layouts. To migrate JBoss Portal solutions to WSO2 User Engagement Server the reengineering of the existing assets is inevitable, as both environments don’t share a common ground.

11 Migrate JBoss JON WSO2 does intentionally not offer a single product for monitoring and management of its installations and deployed business applications. For monitoring and management of WSO2 products there is (will be) a WSO2 Operations Network (WSO2 ON) available. WSO2 ON is the tool of choice to manage WSO2 products like configuring clusters, applying patches and monitoring the health of servers. For monitoring duties of business applications and doing long term analytics there is WSO2 Business Activity Monitor (BAM) and WSO2 Complex Event Processing Server (CEP) at hand. Both products are not limited to the monitoring of WSO2 products and their metrics. They support monitoring of business metrics, too, as they are general purpose monitoring solutions. WSO2 CEP is ideal for real time monitoring and alerting whereas WSO2 BAM is the tool of choice for all kinds of Big Data analytics. WSO2 Governance Registry (GREG) is a general-purpose governance tool to govern all kinds of assets - like WSDL files, web addresses as endpoints for proxies or pointers to JEE web application archives (WARs). GREG is a fundamental building block in WSO2’s solution portfolio to support the management of WSO2 based infrastructures and solutions and can be utilized in many ways. To cover complex application lifecycle management processes WSO2 Application Factory (WSO2 AppFactory) can be used. WSO2 AppFactory provides a holistic view on a broad spectrum of tools supporting the application lifecycle management and is well integrated in the WSO2 product portfolio stack, as it is itself built on top of it.

11

12 Yenlo helps you to become a Connected Business

12.1 Migration plan At Yenlo we gained a lot of experience helping organizations migrate their existing infrastructure to a more agile infrastructure based on open source and open standards. A typical Yenlo migration plan is straightforward and structured around an industry standard process:

1. Assessment Discovery 2. Transition Plan 3. Implementation

Figure 1: A three-phased migration methodology helps ensure that details are covered.

12

12.2 Changes required to transform to a Connected Business To build the connected business architecture and use the WSO2 product stack you should have a proper plan with a clear structure. Yenlo can help you design such a plan based on an industry wide accepted 3-step approach and by leveraging our extensive experience with infrastructure migrations.

Although this document specifically describes a migration from a Red Hat JBoss environment it can also be read as a migration from any other middleware vendor.

A connected business can be achieved by first converting existing business operations into services. The already existing services can still be used by adding a services layer as well as a data services layer. If new services need to be written, a service container can be used as the application server and services can be written using various service technologies.

To be able to connect to internal and external customers you need to create APIs, as this is one fundamental point of a SOA. APIs can be shared across your organization and with your customers but you need to make sure you have a way to monitor and manage the usage.

Once you have this in place you can start creating new products and services for your internal and external customers.

Other aspects to consider are governance, security and usage of your APIs.

Here’s a snapshot of the steps required to becoming a connected business.

x Convert the business functionalities to services; x Turn them into APIs; x Build the community around your APIs; internally/externally; x Create new products and services; x Collect usage data of your services; x Bring governance and security; x Improve incrementally.

Changes are an essential part of a migration to a connected business. Without change you cannot achieve your goal of becoming a connected business. [Full white paper] [3]

13

13 Summary In conclusion, if you want to move from a disparate middleware environment to a fully integrated platform and in the process become a connected business you can’t do that without changes. To minimize impact on your organization it is key to have a solid migration plan and match your current products with technology you are migrating to. Yenlo can help you identify the reference architecture and help you map the correct products to your specific domain. We can help you incrementally build your solution in order to have a successful business solution running in your enterprise.

Once you go through your journey towards a connected business with WSO2 products and support from the Yenlo team, the end result is a solution that’s a cut above the rest. WSO2 has a very powerful technology stack that can address any requirement in your quest to becoming a connected business

14 References Yenlo experts wrote this white paper with specific input from:

x Asanka Abeysinghe (Vice President of Solutions Architecture, WSO2) x Sagara Gunathunga (Senior Technical Lead, WSO2) x Isabelle Mauny (Vice President of Product Management, WSO2)

All Red Hat related information is obtained from their respective website and publicly available documents. [1] http://www.eaipatterns.com [2] http://camel.apache.org/enterprise-integration-patterns.html [3] http://offer.yenlo.com/discover-the-100-open-source-platform

&ŽƌŵŽƌĞŝŶĨŽƌŵĂƟŽŶĂďŽƵƚŽƵƌƐĞƌǀŝĐĞƐǀŝƐŝƚwww.yenlo.com ŽƌƐĞŶĚƵƐĂŶĞŵĂŝů [email protected].

zĞŶůŽŝƐĂŶ/dƐĞƌǀŝĐĞƐƉƌŽǀŝĚĞƌǁŝƚŚĨŽĐƵƐŽŶŵŝĚĚůĞǁĂƌĞĨŽƌƉƌŽĐĞƐƐŝŶƚĞŐƌĂƟŽŶĂŶĚďƵƐŝŶĞƐƐƉƌŽĐĞƐƐŵĂŶĂŐĞŵĞŶƚzĞŶůŽƚĂŬĞƐĐŽŶĐĞƌŶƐĂďŽƵƚ/dĂǁĂLJ dŚĞƌĞĨŽƌĞzĞŶůŽŝƐƐƉĞĐŝĂůŝnjĞĚŝŶenterprise architecture, ƐŽŌǁĂƌĞĚĞǀĞůŽƉŵĞŶƚĂŶĚϮϰϳŵĂŶĂŐĞĚƐĞƌǀŝĐĞƐ. zĞŶůŽŝƐƚŚĞĚĞǀĞůŽƉĞƌŽĨƚŚĞĞďD^ĂĚĂƉƚĞƌĨŽƌƚŚĞt^KϮĞŶƚĞƌƉƌŝƐĞƐĞƌǀŝĐĞďƵƐƚŚĂƚŚĂŶĚůĞƐŵŝůůŝŽŶƐŽĨƚƌĂŶƐĂĐƟŽŶƐďĞƚǁĞĞŶŐŽǀĞƌŶŵĞŶƚĂŐĞŶĐŝĞƐŝŶĂŶĞdžƚƌĞŵĞĨĂƐƚƌĞůŝĂďůĞĂŶĚƐĞĐƵƌĞǁĂLJ zĞŶůŽƵƐĞƐĞƐŝŐŶΘŶŐŝŶĞĞƌŝŶŐDĞƚŚŽĚŽůŽŐLJĨŽƌKƌŐĂŶŝnjĂƟŽŶƐ;DKͿǁŚŝĐŚŝƐĂŶĞŶƚĞƌƉƌŝƐĞŵŽĚĞůŝŶŐŵĞƚŚŽĚŽůŽŐLJĨŽƌƚƌĂŶƐĂĐƟŽŶŵŽĚĞůŝŶŐĂŶĂůLJnjŝŶŐĂŶĚƌĞƉƌĞƐĞŶƟŶŐďƵƐŝŶĞƐƐƉƌŽĐĞƐƐĞƐ

Disclaimer EŽƉĂƌƚŽĨƚŚŝƐĚŽĐƵŵĞŶƚŵĂLJďĞƌĞƉƌŽĚƵĐĞĚĞĚŝƚĞĚĂŶĚŽƌƉƵďůŝƐŚĞĚďLJƉƌŝŶƚƉŚŽƚŽĐŽƉLJ ŵŝĐƌŽĮůŵǁŽƌĚƉƌŽĐĞƐƐŝŶŐ ŽƌďLJĂŶLJŽƚŚĞƌŵĞĂŶƐŶŽƌƐƚŽƌĞĚŝŶĂƐƚŽƌĂŐĞƐLJƐƚĞŵĨŽƌĂŶLJƉƵƌƉŽƐĞǁŝƚŚŽƵƚƚŚĞĞdžƉƌĞƐƐƉĞƌŵŝƐƐŝŽŶŽĨzĞŶůŽs

ŽƉLJƌŝŐŚƚΞϮϬϬϳͲϮϬϭϰůůƌŝŐŚƚƐƌĞƐĞƌǀĞƌĚ