Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

17
97960 – “Free” Loadbalancing of JD Edwards EnterpriseOne Jonathan Steel EnterpriseOne / SOA Technical Architect

description

This was my presentation for Collaborate 2012 - introducing Zen LoadBalancer - an open-source, free to distribute load balancer with built in clustering capability that provides an easy load-balancing solution for Oracle EnterpriseOne customers.

Transcript of Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Page 1: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

97960 – “Free” Loadbalancing of JD Edwards EnterpriseOne

Jonathan Steel

EnterpriseOne / SOA Technical Architect

Page 2: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Agenda

• Introduction

• Introduce concepts of load balancing

• Introduce an alternative to commercial hardware load balance solutions

• Provide information on setting up a load balancer for JDE Services

• Demonstration activities of an actual Load Balanced Farm

• Questions ?!

Page 3: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

• EnterpriseOne Technical Specialist and Project Manager• 5 years at JD Edwards

• Created Technical Section of “OneMethodology” – the replacement to REP• Introduced Citrix to OneWorld• Managed the Scalability Group – a part of WWATG• Performed the first customer upgrades

• 12 years as Independent Consultant• Assisted with more than 50 implementations and upgrades• Lots of “best practices” whitepapers

• www.erpsourcing.com• Frequent contributor to “JDEList” as “altquark” !!

Who is Jon Steel

Page 4: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Why do you need a load balancer ?

• Server Load Balancing scales “horizontally” to accommodate higher volume work by distributing client requests amongst several servers.

• Having Fault Resilience means alternative server can take over when a sever crashes or needs maintenance

• Spreading the application across more than one machine allows for maintenance to occur without affecting the application to the end users

Page 5: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Load Balancing vs Clustering• Clustering is the use of multiple computers to provide a single service.

Intra-transactional failover

Requires shared resources to monitor transactions

Difficult to set up / maintain

• Load balancing is a technique to spread load between alike computers for service availability

Session failover

No requirement for shared resources

Easy to set up / maintain

• A Cluster is an Object, Load Balancing is a method

Page 6: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

History of Load Balancing within JDE

• ReplicationWorkgroup Servers were originally used to offload static data

• CitrixCitrix provided true load-balancing of ICA clients

• Arrowpoint & Cisco Content Services switchArrowpoint created a network switch that balanced a Virtual IP. This was bought by Cisco and became the Cisco Content Services Switch – the first “hardware” load balancer – but required learning a “language” to modify

• F5 Big IPF5 came out with the “Big IP” – a network appliance that was based on Open Source OS with a simpler web front end. Still the predominant player today

Page 7: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

What Services can Fail ?• Interfaces

Ensure availability of Interfaces and Transactional Integrity

• WebSimple enough – but requires persistence “inside the session”

• CallObjectKernel Services require persistence between users

• BatchEnsure critical batch queues keep processing

• DatabaseUsually performed by the RDBMS using Clustering

Page 8: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Typical JDE Network

DatabaseCallObject/Batch

Users

JDE

BSSV

JDE

HTM

L

SOA

Citrix

/R

DP

CL

L

LC

L• Clustered

Anything that has “batches” of mission critical transactions should be clustered

• Load BalancedUser sessions should be load balanced rather than clustered to reduce cost of High Availability

ExternalTransactions

C

L

Page 9: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Why look for an Open Source replacement ?

• Clustering is expensive !

• The F5 device, while is an excellent device, is expensive

• Hardware based firewalls can also be expensive

• Smaller companies with lower budgets can still provide load balancing through available Open Source solutions

Page 10: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Setting up a Zen LoadBalancer

• Download ISO from www.zenloadbalancer.com

• Install to a machine with the following specifications :

1Gb RAM, 1Gb/s NIC, 20Gb HD

After install log into machine using web brower on port 444 –

user ID : admin, password : admin

Don’t forget to change the admin password !!!

Page 11: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Create LoadBalanced Farm

• Click on “Manage” / “Farms”

• Click on the button

• Provide a farm description name and what port to use externally (virtual port)

• Edit the Farm Global Parameters

Choose the Load Balance Algorithm

• Add “real IP Servers” – point to the physical server and the physical port

Page 12: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

LoadBalance Algorithm

• Choose the correct load balancing algorithm required for the service

• Round RobinPersistence Client-time ensures sessions return to the original real server after originally being provided a session. Equal sharing doesn’t have persistence.

• HashThe farm will create a hash string for each IP Client and send each connection from that hash to the same real server

• WeightLoosely balance connections based on the weight value

• PriorityBalance all connections to the same highest priority server

Page 13: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Farmguardian

• Use Farmguardian to monitor backend services• By default, Zen checks the tcp backend port status – but often this is not enough

• Using Farmguardian provides a more advanced monitoring state for certain services. When a problem is detected, the real server is automatically disabled and will be marked as blacklisted.

• Four programs are provided

check_http

check_ldap

check_smtp

check_tcp

Example for checking OHS for Weblogic :

check_http –l {host} –p {port} –w 10 –c 15 –t 15 –s ‘<!DOCTYPE’

This can be confirmed from the command prompt (/usr/local/zenloadbalancer/app/libexec)

Page 14: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

A word about Batch Queues

• Currently, Batch Processes CAN be load balanced• Create EnterpriseOne Datasource for Virtual IP

• UBE’s are submitted to “Virtual” IP – physical server will then take over and run UBE

• Single Threaded Queue Loadbalancing• MORE than one SINGLE threaded Queue means the queue is multi-threaded !

• Map Single Threaded Jobs to specific Servers’ Single Threaded Queue (not load balanced)

• For shops that require True Queue Loadbalancing across multiple application servers – development of a “Load Balancing Daemon” is required

• The LBD monitors “fake” queues for Waiting jobs, and compares against an internal table and existing running jobs to identify what to do with the job

• Future JDE Functionality• Rumor is that Oracle WAS going to provide “Virtual Queues” in Tools Release 9.1 – but this has been delayed for

a future release – watch this space !!!!

Page 15: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

What about SOA?

• Oracle SOA Suite should be clustered, not load-balanced• Batches (large numbers of Transactions) are mission critical

• Oracle SOA Suite is designed to run on a true clustered Weblogic Server

• BSSV Servers CAN be load-balanced• Provide failover at the Web Service Level

• BSSV Servers should be a separate servers from SOA Suite

JDE

BSSV

SOA

LC

Page 16: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

Questions ?Jonathan SteelEnterpriseOne Technical SpecialisterpSOURCING LLC1781 Bayside Boulevard, Jacksonville, FL(904) 382 5701http://www.erpsourcing.com

Page 17: Collaborate 2012 session : Free Loadbalancing Of JD Edwards EnterpriseOne

INFOCUS is a new, replacing Quest Regional events, offering in-depth education for the most popular JD Edwards EnterpriseOne modules.

The JD Edwards INFOCUS call for presentations is open now! We are looking for deep-dive sessions into JD Edwards EnterpriseOne. For more information visit QuestDirect.org/INFOCUS

November 7-9, 2012Omni Interlocken Resort

Broomfield, Colorado USA