CLUSTERING ARCHITECTURES IN GIS/SI Jason Miller System Integration Architects 11/06/2008.

Post on 28-Mar-2015

216 views 2 download

Tags:

Transcript of CLUSTERING ARCHITECTURES IN GIS/SI Jason Miller System Integration Architects 11/06/2008.

CLUSTERING ARCHITECTURES IN GIS/SIJason Miller

System Integration Architects

11/06/2008

SLIDE DECK CONTENTS

What is Clustering

What is GIS/SI Clustering

Benefits of Clustering

Components of GIS/SI Clustering

GIS/SI Server Architectures

Examples of Server Architectures (Tier1 to Tier 5)

Considerations

Best Practices

What is Clustering?

Application Clustering

Application clustering (sometimes called software clustering) is a method of turning multiple computer servers into a cluster (a group of servers that acts like a single system).

What is Clustering?

Hardware Clustering

The other clustering method, hardware clustering, requires that specialized hardware be installed in a single server that controls the cluster.

Which works for you?

Because servers can easily be added or removed from the cluster as needs dictate, an application cluster is more scalable than its hardware-based counterpart.

Furthermore, because it doesn't require specialized hardware, an application cluster tends to be easier and cheaper to configure

GIS/SI Application Clustering

A clustered installation of Gentran Integration Suite (GIS) connects one database to more than one installation of GIS.

Benefits of Clustering

Clustered environments can improve the three essentials for every system: Reliability, Availability and Scalability - often called RAS.

Reliability

Improved Reliability means that systems handle payments, invoices and orders on time with fewer failures that can be addressed quickly if they do occur.

Reliability refers to the performance of Gentran Integration Suite.

Availability

Increased Availability reduces any scheduled and unscheduled downtime. Availability and reliability are often confused.

Availability refers to being able to use Gentran Integration Suite.

Sometimes referred to as HA (High Availability)

Scalability

Greater Scalability optimizes GIS technical and operational processes to handle future changes in volume.

Clustering the database, file system, and application servers can provide significant scalability while improving availability and reliability.

GIS/SI Clustering Architecture Components

GIS/SI Clustering ArchitectureFor every node of GIS installed: Operations Controller

Provide local and remote interfaces to the server. Report on Status of the Server Provides heartbeat Can assume Token node (Central Operations Controller of

the Cluster). Responsible for listening across all queues. The

Operations Controller uses JNDI (Java Naming Directory Interface) technology to communicate directly with other Operations Controllers in the cluster.

GIS/SI Clustering Architecture ASI (Application Server Independent) or

“noapp” Server Hosts the Services Controller and other

Sterling Integrator / Gentran Integration Suite Application components

Clustering Server ConfigurationsActive- Active This is the preferred clustering

configuration. Active-Active application level failover setup specifies that all nodes assigned to the cluster are in an “Active-Active” state. All nodes are available and working all the time, sharing the workload equally (in theory).

Clustering Server ConfigurationsActive-Passive Active-Passive setup includes a second

GIS/hardware node that’s configured exactly like the first and if the first instance fails, the second instance is ready to take over.

Clustering Server ConfigurationsHybrid An Active-Active cluster is backed up by

a passive node that can replace either of the active nodes in the event of hardware failure.

Clustering Server Architectures Vertical

Increase resources on same machine e.g., adding additional instances (nodes) of GIS to an existing machine (server)

HorizontalAdding multiple machines (servers) to the

GIS architecture

Benefits of Vertical

More CPUs allows more concurrent threads to run simultaneously, effectively increasing concurrent throughput.

Faster CPUs adds additional horsepower, which increases execution time per Business Process.

More RAM improves the overall performance. Memory is critical when caching objects and parameters at run time. The number of threads a node can support is related to its processing power and its memory

Benefits of Horizontal

Extreme scalability when coupled with parallel database technology.

Able to add nodes to a running cluster without causing any kind of outage.

Increased system redundancy. More options for partitioning the

adapter/input/output workload. Cost savings if the existing nodes are already fully

configured and upgrading would involve replacing them.

Increased performance even using I/O-limited PC-based hardware.

Clustering Tiers

Clustering tiers are based on service level agreement within your organization which translates into how many machines you use in your environment.

SLA can mean a few things:1) Uptime2) Response Times3) Processing Throughput

Tier 1 GIS Architecture

Tier 2 GIS Architecture

Tier 3 GIS Architecture

Tier 4 GIS Architecture

Tier 5 GIS Architecture

GIS/SI Clustering Considerations Multicast vs. JGroups

Multicast not supported by some network configurations and is a bottleneck when stretching the cluster across a WAN.

UDP versus TCP Data Storage

If using File System Storage – a common/shared storage location will be necessary

Perimeter Servers To maintain Cluster standards, at least two

Perimeter Server instances will need to be created for each GIS/SI Node in the cluster.

GIS/SI Clustering Considerations

Non-Clusterable Adapters– Some Adapters/Services cannot apply to all

the nodes in a Cluster. You will need to configure these adapters for each node that applies.

– Common/Similar configurations can be grouped together in Service Groups. These Service Groups can be called from Business Processes instead of individual service configurations.

– An adapter/service configuration will be required for each Perimeter Server instance in the DMZ (GIS/SI nodes X 2)

GIS Clustering ConsiderationsExamples of Non-Clusterable Adapters FTP server adapter HTTP server adapter FTP client adapter HTTP client adapter Connect:Direct adapter Connect:Enterprise adapter B2B Communication adapter CLA2 Adapter File System Adapter

GIS Clustering ConsiderationsIP Load Balancing

– IP Traffic to non-clustered adapters will require the use of an external Load Balancer to split the load incoming traffic between the Perimeter Server (or Local Node) Instances.

– Options include:• DNS – Multiple IPs to one URL• Proxy – Particularly for HTTP• IP Balancing – Hardware or Software that controls

incoming sessions and hands them off to the most available Perimeter/Node

Clustering Best Practices

Network Level Strive for low latency between servers. If your latency is greater than 10 milliseconds – you

may experience issues like nodes not recognizing one another.

If you have multi-homed hosts, be sure to design for low level network paths (multiple PS, etc).

In GIS 4.3 and later use JGroups verses Multicast in cluster configurations JGroups does not flood the system with global packets, just

the specified network segment.

Clustering Best Practices

Database Level Maximum utilization requires a robust database work

engine with high processor speed and substantial memory.

Database persistence vs. File System persistence Keep persistence level low File systems can be faster but nightmare to manage. Databases are easier to manage and easily

replicated in case of DR (Disaster Recovery) testing . 

Stay with what you know (MSSQL, Oracle, DB2)

Clustering Best Practices

Application Level Node-to-Node communication:

If installing multiple nodes on the same machine, go to the install_dir/properties directory of nodes 2 and higher and change the mcast_port property in jgroups_cluster.properties.in to point to the value of node 1’s mcast_port property in jgroups_cluster.properties.

Allow File System adapters in “all” environments while configuring to prevent the FSA from failing.

Clustering Best Practices

Application Level (cont.) Tune and configure:

The location and configuration of adapters. The number of threads allocated for each queue on each node. The number of steps for a business process to execute before being

rescheduled. The location and number of adapters is important because using

adapters that cannot be clustered forces all activity for a particular adapter to go through one node . In other words don’t pin clusterable adapters to a node

Use an effective network load balancing technology in front of HTTP, FTP and other network-oriented adapters to prevent activity concentrating on one IP address.

The number of threads in combination with the execution cycle, places proportionately more workload from specific queues onto specific nodes .

Clustering Best Practices

Application Level (cont) In GIS version 4.3 intelligence exists to move the

BP back to correct nodes for communication.  Pin a Adapter to a node and then put adapters in

a service group and use Service Group in the BP.

Disaster Recovery

Question:What are the common practices for DR for GIS Architectures?

Replicate environment Hybrid cluster configuration

Main issue – Syncing databases!!!!