USE IMPROVE EVANGELIZE
Discovering Open High Availability ClusterLalith SureshCampus AmbassadorSun Microsystems, Inc
2
USE IMPROVE EVANGELIZE
Outline
● Why is High Availability Important?● What is “Open High Availability Cluster
(OHAC)”?● How OHAC Provides High Availability● How do you make your application run on
OHAC (cluster agents)● How to Use Open HA Cluster● How to Participate
3
USE IMPROVE EVANGELIZE
Why is High Availability important?
4
USE IMPROVE EVANGELIZE
Disaster can strike any time
Fifty percent of enterprises that lack arecovery plan go out of business within
one year of a significant disasterGartner Group
5
USE IMPROVE EVANGELIZE
Why is HA Important?● Downtime is costly● Failures are inevitable
– Hardware, software, human error, disaster– Automated recovery is the key
● With a single physical system, single points of failure (SPOFs) are catastrophic– Network card fails, CPU misbehaves, disk
drive crashes ...
HA Clusters automate the recovery process from inevitable failures, minimizing downtime and cost
6
USE IMPROVE EVANGELIZE
What is Open High Availability Cluster (OHAC)?
7
USE IMPROVE EVANGELIZE
Open High Availability Cluster (OHAC)
● The open-source code base for SolarisTM Cluster– Based on Solaris Cluster 3.2
● Hosted by the HA Clusters community group on opensolaris.org– http://www.opensolaris.org/os/community/ha-
clusters/ohac/
● Code available under the CDDL
8
USE IMPROVE EVANGELIZE
OHAC imbibes the Open Source philosophy● Share
– Public access to source code
– Community contribution in terms of development and participation
● Open Development– Increase confidence in the cluster code-base
– Enhance the code-base with third-party contributions
● Shorten Feedback Loop– Easier to incorporate feedback
– Find and fix bugs quicker
– Early adoption of new features
9
USE IMPROVE EVANGELIZE
How OHAC Provides High Availability
10
USE IMPROVE EVANGELIZE
Single Points of Failure
Application
Network
Node
Storage Path
Storage
11
USE IMPROVE EVANGELIZE
Platform for High Availability● Should tolerate Single Points of Failure (and some
double failures)● Hardware redundancy with off-the-shelf hardware● Robust software HA infrastructure
– Monitors the health of cluster infrastructure (hosts, shared storage, and network)
– Orchestrates recovery of applications and cluster infrastructure (shared storage and IP networking)
– Integrated tightly with Solaris Operating System
– Robust membership including quorum to prevent partitions
– Disk Fencing ensures data integrity in spite of failures
12
USE IMPROVE EVANGELIZE
OHAC Components Stack
OperatingSystem
Cluster Infrastructure
Agents
Applications
Heartbeats
Membership
13
USE IMPROVE EVANGELIZE
HA Failover Service
● Application failover● Within nodes or
container● Containers failover● Failover IP address
Failover Service
14
USE IMPROVE EVANGELIZE
Failover Service
Server A Server B
HA clusterIP Y.Y.Y.Y
LAN
IP B.B.B.B(Secondary)
IP A.A.A.A(Primary)
Server A(Fault!!)
Server B(SensesFault!!)
Server B(Active)
Failover
15
USE IMPROVE EVANGELIZE
Scalable ServiceSoftware Load
Balancing
Global Network Service Provides Global IP address
with failure protection
Scalable Service
16
USE IMPROVE EVANGELIZE
Apache (Scalable)
Global Network Service Provides Global IP address
with failure protection
MySQL (Failover)
Example: Apache & MySQL
17
USE IMPROVE EVANGELIZE
OHAC Infrastructure Architecture
OperatingSystem
Cluster Infrastructure
Agents
Applications
Heartbeats
Membership
18
USE IMPROVE EVANGELIZE
Heartbeats
Membership
Quorum
Disk FencingResource Group Manager● Resource (application)
dependencies● Inter RG dependencies● RG affinities
HA Failover Service● Application failover
● Within nodes or container
● Containers failover● Failover IP address
Global File Service Failover File Service
Scalable ServiceSoftware Load
Balancing
Global Network Service Provides Global IP address
with failure protection
Mon
itori
ng
OHAC Architecture
19
USE IMPROVE EVANGELIZE
How do you make your application run on OHAC
(cluster agents)
20
USE IMPROVE EVANGELIZE
OHAC Agents (Data Services)
OperatingSystem
Cluster Infrastructure
Agents
Applications
Heartbeats
Membership
21
USE IMPROVE EVANGELIZE
Cluster Agents (Data Services)
● Applications run on cluster unmodified (off-the-shelf)
● Cluster Agents are the “glue” layer between applications and cluster infrastructure– Custom agent for each application
Interacts with cluster core through APIs Provides start, stop, and other commands specific to the
application to be called by the cluster framework Provides monitor daemon specific to the application
● Application cannot break into the high availability business on OHAC without an agent!
22
USE IMPROVE EVANGELIZE
Agents Available IncludeBusiness Logic Tier
● HA Sun Java System App Server PE/SE● HA Sun Java System App Server EE● HA Sun Java System Directory Server*● HA Agfa IMPAX ● HA BEA Weblogic Server● Scalable Broadvision One-To-One*● HA IBM Websphere MQ● HA IBM Websphere MQ Integrator● IBM Lotus Notes+
● HA Oracle Application Server● HA SAP liveCache● HA SAP J2EE Engine● HA SAP Enqueue Server● Scalable SAP● HA Siebel● HA SWIFTAlliance Access ● HA SWIFTAlliance Gateway● HA Sybase Adaptative Server*
Web Tier / Presentation● HA Sun Java System Web Server● HA Sun Java System Messaging Server* ● HA Sun Java System Message Queue● HA Sun Java System Calendar Server*● HA Sun Java System Instant Messaging
Server*● Scalable Sun Java System Web Server● HA Apache Web/Proxy Server● HA Apache Tomcat● Scalable Apache Web/Proxy Server
Database Tier● Oracle Parallel Server*● HA Oracle9i and Oracle 9i RAC*● HA Oracle 10g and Oracle 10gRAC*● HA Oracle E-business Suite● HA Oracle*● HA Sybase*● HA MySQL● HA SAP/MaxDB Database● HA PostgreSQL
* Not yet open-source
Management Infrastructure Tier● HA Sun N1 Grid Engine● HA Sun N1 Service Provisioning System● HA DNS, HA NFS● HA DHCP● IBM Tivoli+● Mainframe Rehosting (MTP)*● HA Samba● HA Solstice Backup*● HA Solaris Container● HA Symantec NetBackup*
Online Agent list:http://opensolaris.org/os/community/ha-clusters/ohac/Documentation/Agents/open-agents/
23
USE IMPROVE EVANGELIZE
How to Use Open HA Cluster
24
USE IMPROVE EVANGELIZE
Solaris Cluster Express
● A complete version of Solaris Cluster software that runs on Solaris Express
● Solaris Cluster Express– Runs on Solaris Community Edition build 97
– Runs on sparc and 32 or 64-bit x86 hardware
– Support available only through community forums
● Where to get it– http://www.opensolaris.org/os/community/ha-clusters/ohac/downloads/
25
USE IMPROVE EVANGELIZE
Build and Run Agents and Geographic Edition
● Install– Solaris Express Developer or Community Edition
– Compiler : Sun Studio 11, Sun Studio 12, or gcc
– Build tools• ON build tools (SUNWonbld)• OHAC build tools (SUNWscbld)
● Download Source Tarballs and Archives● One-line nbuild command● Install packages on Solaris Cluster Express
26
USE IMPROVE EVANGELIZE
How to Participate
27
USE IMPROVE EVANGELIZE
Where to Start
● HA Clusters Community Group Web Page http://www.opensolaris.org/os/community/ha-clusters/
● Open HA Cluster page http://opensolaris.org/os/community/ha-clusters/ohac/
● [email protected] mailing listhttp://mail.opensolaris.org/mailman/listinfo/ha-clusters-discusshttp://opensolaris.org/jive/forum.jspa?forumID=195
● How to Contribute to Open HA Cluster http://opensolaris.org/os/community/ha-clusters/ohac/contribute/
28
USE IMPROVE EVANGELIZE
What You Can Do
● Browse the code with OpenGrok– http://src.opensolaris.org/source/xref/ohac/
● Join the discussions on ha-clusters-discuss● File bugs
– http://www.opensolaris.org/bug/report.jspa
● Fix a bug – http://opensolaris.org/os/bug_reports/oss_bite_size/
● Contribute to an existing project– http://www.opensolaris.org/os/projects/
● Start a new project
29
USE IMPROVE EVANGELIZE
Two new community projects created● HA-Informix
– Cluster Agent for Informix Dynamic Server
– exists since 1st August 2007
– Design Doc, Cheatsheet etc. available
– http://opensolaris.org/os/project/ha-informix/
● HA-xVM– Cluster Agent for Solaris xVM guest domains
– http://opensolaris.org/os/project/ha-xvm/
30
USE IMPROVE EVANGELIZE
Possible Projects● Develop Agents for
– Adabas, BMC Control-M, BMC Patrol Server, BMC Performance Manager, CA Unicenter, Citrix, Connect Direct, EMC Documentum, FileNet, IBM Tivoli Client, IBM Tivoli Server, IBM Tivoli Workload Scheduler, IBM Websphere Application Server, Informatica, Java CAPS, Java DB, JBOSS, Netbackup, Netbackup Client, Open LDAP, Sleepy cat DB, Sun Java System Identity Server, Sun Java System Portal Server, Sybase Replicator agent, TSM Backup client, UC4
● More project suggestions for Open HA Cluster http://opensolaris.org/os/community/ha-clusters/ohac/contribute/agents-suggested-projects/
● Or propose your own project!
31
USE IMPROVE EVANGELIZE
Possible Projects● Develop Agents for
– Adabas, BMC Control-M, BMC Patrol Server, BMC Performance Manager, CA Unicenter, Citrix, Connect Direct, EMC Documentum, FileNet, IBM Tivoli Client, IBM Tivoli Server, IBM Tivoli Workload Scheduler, IBM Websphere Application Server, Informatica, Java CAPS, Java DB, JBOSS, Netbackup, Netbackup Client, Open LDAP, Sleepy cat DB, Sun Java System Identity Server, Sun Java System Portal Server, Sybase Replicator agent, TSM Backup client, UC4
● More project suggestions for Open HA Cluster http://opensolaris.org/os/community/ha-clusters/ohac/contribute/agents-suggested-projects/
● Or propose your own project!
USE IMPROVE EVANGELIZE
Thank you!
“open” artwork and icons by chandan: http://blogs.sun.com/chandan
Top Related