Download - Sun Cluster for Tie To
-
8/2/2019 Sun Cluster for Tie To
1/28
Solaris Cluster
High Availability in Solaris
Tom Dzik
Solaris Cluster Revenue Product Engineering
Sun Microsystems, Czech
-
8/2/2019 Sun Cluster for Tie To
2/28
Presentation Title pg 2
Goals of this presentation
Explain what is Solaris Cluster (SC)To show where SC could be used
Explain concepts and architecture of SC
Show how to make your application HighlyAvailable (HA)
-
8/2/2019 Sun Cluster for Tie To
3/28
Presentation Title pg 3
Definition
Cluster is a collection of looselycoupled computing nodes thatprovides a single client view of
network services or application.
-
8/2/2019 Sun Cluster for Tie To
4/28
Presentation Title pg 4
Solaris Cluster (SC)
Is High Availability solution from SunSupports also scalable services
Runs on Solaris
Open High Availability Cluster (OHAC) runson OpenSolaris and it is opensourced
Most of stock application running on Solaris
could be made HA using SC withoutchanging an application code
-
8/2/2019 Sun Cluster for Tie To
5/28
Presentation Title pg 5
Basic Idea What Administrators Do
Monitor yourapplication
If application fails,
try to restart it.If application failsagain, move diskwith data to anothercomputer and start itagain
Database
-
8/2/2019 Sun Cluster for Tie To
6/28
Presentation Title pg 6
Views of Solaris Cluster
Hardware
Software
Administration model
-
8/2/2019 Sun Cluster for Tie To
7/28
Presentation Title pg 7
Three Views of Solaris Cluster
HardwareSoftware stack
Data services
Services provided by SCAbstraction for administrators
Resource groups, resources, dependencies,
-
8/2/2019 Sun Cluster for Tie To
8/28
Presentation Title pg 8
Hardware
IPMPIPMP
IPMP
-
8/2/2019 Sun Cluster for Tie To
9/28
Presentation Title pg 9
Hardware Components
Cluster nodesComputers with their own local boot disk
Multihost storage (SCSI, FC or SATA)
Not necessary for OHAC (could use iSCSI)I would recommend using Fibre Channel
Cluster interconnect
Either ethernet or InfinibandPublic NIC (it is usually ethernet cards)
Clients
-
8/2/2019 Sun Cluster for Tie To
10/28
Presentation Title pg 10
Multihost Storage
Uses SCSI 2 or SCSI 3 reservationsHelps to protect data integrity in case of failure
Uses multi-initiator SCSI for shared SCSIbus
Since SC 3.2u2 can use SATA disks
Uses software quorum
Storage could be accessed
Through primary node (most of applications)
From more nodes simultaneously if applicationmanages locking (for example Oracle RAC)
-
8/2/2019 Sun Cluster for Tie To
11/28
Presentation Title pg 11
Cluster interconnect
Usually two 1 Gb ethernet cardsRequirement was relaxed recently even 1interconnect could be enough
For OHAC virtual NICs over public interfacecan replace proper interconnects
It is possible to configure IPsec on interconnectin OHAC
JunctionsEthernet switches
Crossed cables
-
8/2/2019 Sun Cluster for Tie To
12/28
Presentation Title pg 12
Public Network Interface Cards
Uses IPMP IP Multi Pathing for failuredetection
Standard Solaris feature used in cluster
TCP connections failing to another adapter arenot disconnected
Ethernet NICs must have unique MAC address
Health could be checked by pinging
Default routerOther routers
ping -s 224.0.0.1
-
8/2/2019 Sun Cluster for Tie To
13/28
Presentation Title pg 13
Software stack
Solaris or OpenSolarisVolume Management (optional)
Solaris Volume Manager
ZFSVeritas VxVM
Solaris Cluster Software
Data service for clustered applicationClustered application
-
8/2/2019 Sun Cluster for Tie To
14/28
Presentation Title pg 14
Data Service
Code which attach application to SCTells SC (namely to Resource GroupManager) how to:
Start applicationStop application
Monitor application
Validate configuration
It is implemented using callbacks
-
8/2/2019 Sun Cluster for Tie To
15/28
Presentation Title pg 15
Data Service
An example is worth a thousand wordshttp://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cm
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
16/28
Presentation Title pg 16
Data Services Management Model
Resource: ha-oracleType: LogicalHostname
Resource:oracledbType: oracle_server
Resource: oraclelsnr
Type: oracle_listener
Resource:hasp-ora-resType: HAStoragePlus
Resource group: oracle-rg Resource group: nfs-rg
Resource: ha-nfsType: LogicalHostname
Resource: nfs-resType: nfs
Resource: nfs-storType: HAStoragePlus
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
17/28
Presentation Title pg 17
Data Services Management Model
Resource groupGroup of resources which are managedtogether
Resource
For example highly available IP address, highlyavailable storage or application
Resource has always type
Resources and Resource groups can havedependencies
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
18/28
Presentation Title pg 18
Resource Types
Described by resource type registration(RTR) file
Consists of:
Implementation of callback methodsA set of properties see rt_reg(4)
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
19/28
Presentation Title pg 19
Under the Hood of SC
Global devicesEach device (even local) could be accessedfrom any node of cluster
Path: /dev/global
Device could be disk, CD-ROM or tape
Global namespace
Each device could be accessed using the
same name on all nodes
Simplifies administration
Path: /dev/did/
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
20/28
Presentation Title pg 20
Device groups
Entity used for managing global devicesFor each disk SC automaticaly generatesdevice group
Device group exists also for each SVM disk setor VxVM disk group
Only 1 node has physical access do devicegroup
Disk group is imported on that nodeOther nodes have access using cluster interconnect
Oracle RAC uses shared disk groups
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
21/28
Presentation Title pg 21
Cluster filesystem - pxfs
Transparent shared filesystem with POSIXsemantics
PxFS proxy filesystem
Act's as proxy send operations to appropriatenode
Usefull mainly with scalable applications
Could be managed by HAStoragePlus
resource type
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
22/28
Presentation Title pg 22
Quorum
2 common problemsSplit brain
Amnesia
SolutionEvery node has 1 vote. Cluster is operational,only if it has majority (more than half) of votes
For 2 node clusters, we need another vote
we give the vote to deviceQuorum device has N-1 votes. N is number ofvotes connected to this device
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
23/28
Presentation Title pg 23
Quorum
Quorum device could beMultihosted (>=2) shared disk supportingSCSI-3 PGR
Dual-hosted (=2) shared disk supporting SCSI-
2 reservations
Quorum server process running on the quorumserver machine doesn't need to be dedicatedmachine
Since SC 3.2u2 software quorum on anysupported multihosted disk
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/ -
8/2/2019 Sun Cluster for Tie To
24/28
Presentation Title pg 24
Quorum Weak Membership In OHAC
http://opensolaris.org/os/project/colorado/DeAnother type of membership
Split-brain is possible
Data loss is possibleUse only in applications, where availabilityis more important then data integrity
http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://src.opensolaris.org/source/xref/ohac/ohacds/usr/src/cmd/ha-services/http://opensolaris.org/os/project/colorado/Design/colorado-weak-membership-design.pdfhttp://opensolaris.org/os/project/colorado/Design/colorado-weak-membership-design.pdf -
8/2/2019 Sun Cluster for Tie To
25/28
Presentation Title pg 25
-
8/2/2019 Sun Cluster for Tie To
26/28
Presentation Title pg 26
-
8/2/2019 Sun Cluster for Tie To
27/28
Presentation Title pg 27
Solaris Cluster
Questions ???
-
8/2/2019 Sun Cluster for Tie To
28/28
Solaris Cluster
High Availability in Solaris