Presentation on theme: "Clustering Architectures in GIS/SI"— Presentation transcript:
1Clustering Architectures in GIS/SI Jason MillerSystem Integration Architects11/06/2008
2Slide Deck Contents What is Clustering What is GIS/SI Clustering Benefits of ClusteringComponents of GIS/SI ClusteringGIS/SI Server ArchitecturesExamples of Server Architectures (Tier1 to Tier 5)ConsiderationsBest PracticesSlide Deck Contents
3What 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).
4What is Clustering? Hardware Clustering The other clustering method, hardware clustering, requires that specialized hardware be installed in a single server that controls the cluster.
5Which 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
6GIS/SI Application Clustering A clustered installation of Gentran Integration Suite (GIS) connects one database to more than one installation of GIS.
7Benefits of Clustering Clustered environments can improve the three essentials for every system: Reliability, Availability and Scalability - often called RAS.
8ReliabilityImproved 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.
9AvailabilityIncreased 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)
10ScalabilityGreater 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.
12GIS/SI Clustering Architecture For every node of GIS installed:Operations ControllerProvide local and remote interfaces to the server.Report on Status of the ServerProvides heartbeatCan 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.
13GIS/SI Clustering Architecture ASI (Application Server Independent) or “noapp” ServerHosts the Services Controller and other Sterling Integrator / Gentran Integration Suite Application components
14Clustering Server Configurations Active- ActiveThis 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).
15Clustering Server Configurations Active-PassiveActive-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.
16Clustering Server Configurations HybridAn Active-Active cluster is backed up by a passive node that can replace either of the active nodes in the event of hardware failure.
17Clustering Server Architectures VerticalIncrease 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
18Benefits of VerticalMore 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
19Benefits 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.
20Clustering TiersClustering 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:UptimeResponse TimesProcessing Throughput
26GIS/SI Clustering Considerations Multicast vs. JGroupsMulticast not supported by some network configurations and is a bottleneck when stretching the cluster across a WAN.UDP versus TCPData StorageIf using File System Storage – a common/shared storage location will be necessaryPerimeter ServersTo maintain Cluster standards, at least two Perimeter Server instances will need to be created for each GIS/SI Node in the cluster.
27GIS/SI Clustering Considerations Non-Clusterable AdaptersSome 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)
28GIS Clustering Considerations Examples of Non-Clusterable AdaptersFTP server adapterHTTP server adapterFTP client adapterHTTP client adapterConnect:Direct adapterConnect:Enterprise adapterB2B Communication adapterCLA2 AdapterFile System Adapter
29GIS Clustering Considerations IP Load BalancingIP 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 URLProxy – Particularly for HTTPIP Balancing – Hardware or Software that controls incoming sessions and hands them off to the most available Perimeter/Node
30Clustering Best Practices Network LevelStrive 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 configurationsJGroups does not flood the system with global packets, just the specified network segment.
31Clustering Best Practices Database LevelMaximum utilization requires a robust database work engine with high processor speed and substantial memory.Database persistence vs. File System persistenceKeep persistence level lowFile 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)
32Clustering Best Practices Application LevelNode-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.
33Clustering 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 nodeUse 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 .
34Clustering 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.
35Disaster Recovery Question: What are the common practices for DR for GIS Architectures?Replicate environmentHybrid cluster configurationMain issue – Syncing databases!!!!