Post on 28-Mar-2015
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!!!!