Presentation on theme: "CLUSTERING ARCHITECTURES IN GIS/SI Jason Miller System Integration Architects 11/06/2008."— Presentation transcript:
CLUSTERING ARCHITECTURES IN GIS/SI Jason 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 Architecture For 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 Configurations Active- 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 Configurations Active-Passive Active-Passive setup includes a second GIS/hardware node thats configured exactly like the first and if the first instance fails, the second instance is ready to take over.
Clustering Server Configurations Hybrid 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) Horizontal Adding 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) Uptime 2) Response Times 3) 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 Considerations Examples 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 Considerations IP 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 1s 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 dont 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!!!!