Date post: | 04-Jan-2016 |
Category: |
Documents |
Upload: | jared-doyle |
View: | 219 times |
Download: | 4 times |
www.novell.com
High-Availability Messaging: Clustering Novell GroupWise®
High-Availability Messaging: Clustering Novell GroupWise®
Stephen C. PayneSenior ConsultantProtocom Development [email protected]
Eric WingPartner and Integration SpecialistTenacious Integration [email protected]
Bryon GriffinTechnology SpecialistNovell, [email protected]
Scott McCallumSr. ConsultantNovell, [email protected]
Vision…one NetA world where networks of all types—corporate and public, intranets, extranets, and the Internet—work together as one Net and securely connect employees, customers, suppliers, and partners across organizational boundaries
MissionTo solve complex business and technical challenges with Net business solutions that enable people, processes, and systems to work together and our customers to profit from the opportunities of a networked world
Definition of a Cluster
• A cluster is a combination of hardware and softwarethat enables you to connect two or more servers, which thereafter act as a single system
• A cluster is typically connected to a storage area network (SAN)
• Clusters provide continuous access to cluster resources and services
• When a cluster server fails, the services and resourcesit was providing are distributed to the survivingcluster servers
Storage Area Networks Definition
• A dedicated network connecting servers and storage peripherals
• Consists of servers, external storage devices, adapters, hubs, switches, etc.
• Combines the flexibility, manageability, and saleability of networks with the high-bandwidth and reliability of storage
Novell Cluster Services™ Definition
• A collection of Novell NetWare® servers
Provides improved availability Acts as a single system Provides scalability Provides manageability Utilizes storage area networks
Novell Cluster Services Terminology
• Node• Cluster resource
Load script Unload script Preferred node list Policies
• Cluster-enabled volume• Master node• Slave node
• Failover Novell FAN-OUT-
FAILOVER™
• Failback• Epoch• Quorum membership• Quorum timeout• Protocol information
Heartbeat Masterwatchdog Tolerance Slavewatchdog
Novell Cluster Services Benefits
• All nodes active• Central administration• Transparent client reconnect • Up to 32 nodes• Fully integrated and managed in Novell
eDirectory™
• FAN-OUT FAILOVER• Web- (Novell Remote Manager) and Novell
ConsoleOne®-based administration
Novell Cluster ServicesLimitations
• Manual load balancing• Shared storage recommended—required for
Novell GroupWise® (GW)
• TCP/IP-based only• NetWare 5.x and 6.x• A NetWare cluster cannot span multiple
eDirectory trees
What’s New in GW6 SP1 for Clustering?
• Enhanced support for Virtual Servers (VS) by most GW components
Post Office Agent (POA) can use Universal Naming Convention (UNC) to software distribution directory
Home switches can use UNC path with VS
• GW Notify auto-reconnects• Enhanced backup and restore with GWTSA• Agent installation program includes Novell
Cluster Services option Should add the /cluster and /IP switches manually
What’s Changed Since the Last BrainShare Clustering GW Session?
• Most recommendations still apply
• When using GW6 agents (GWIA, WebAccess), you must load the agent in the same memory space as the MTA
• Load DSAPI in the same address space as MTA for eDirectory user synchronization event to run
GroupWise 6 Installation Notes
• When installing agents, option exists to “Configure Agents for Clustering”
/HOME switch uses legacy volume syntax instead of UNC
AUTOEXEC.NCF file isn’t updated
• Remember to add the /CLUSTER switch to the POA start-up file
GroupWise 6 SP1 Installation Notes
• All agents have been modified to understand virtual servers
• When installing, option exists to “configure agents for clustering”
Uses UNC paths again, since agents now understand the virtual servers
Automatically adds the /CLUSTER switch
Cluster Resources Defined on Our Demonstration System
• PDPO1 Primary domain with
post office 1• PO2
Post office 2• PO3
Post office 3• GWIA
GroupWise Internet Agent and domain
• WEBAGENT WebAccess gateway
and domain
• WEB Novell Enterprise Web
Server• DHCPSRVR
DHCP server• HOME
Use home directory volume
• APPS Apps volume
• PUBLIC Public volume
Novell Cluster Services Components
Resource IP Preferred Failover
PDPO1 10.1.1.100 1 2, 3
PO2 10.1.1.101 2 3, 4
PO3 10.1.1.102 3 4, 1
GWIA 10.1.1.103 4 1, 2
WEBAGENT 10.1.1.104 1 3, 4
WEB 10.1.1.105 2 4, 1
DHCPSRVR 10.1.1.106 3 1, 2
HOME 10.1.1.107 4 2, 3
APPS 10.1.1.108 1 4, 1
PUB 10.1.1.109 2 1, 2
NetWare Cluster ServicesGroupWise
• Design considerations Follow Novell-recommended GroupWise design
guidelines for centrally located system Some cluster-specific considerations
• Name resolution considerations Virtual servers—do not use underscore (“_”) All virtual servers in DNS All virtual servers in HOSTS files on cluster
nodes Best to use short virtual server names
Planning the System Layout
• Port planning
Component
POA C/S
Port
POA MTP
Port
POA HTTP
Port MTA Port Agent Port
MTA HTTP
Port
PDPO1 1671 7301 2811 7101 N/ A 2801
PO2 1672 7302 2812 N/ A N/ A N/ A
PO3 1673 7303 2813 N/ A N/ A N/ A
GWIA N/ A N/ A N/ A 7102 4800 2802
WEBAC55 N/ A N/ A N/ A 7103 7205 2803
Installing GroupWise In the Cluster
• Plan the GroupWise system layout • Create the GroupWise volumes • Create cluster volumes and cluster
resources • Mount volume hosting the primary domain
and first post office• Install GroupWise 6 creating GW System,
primary domain, and first PO
Installing GroupWise In the Cluster (cont.)
• Mount the remaining GroupWise volumes • Create additional domains and post offices • Install GW agents to GroupWise volumes
running an MTA or POA • Create and configure the GWIA gateway• Designate a compatible web server or install
and configure Novell Enterprise Web Server• Create and configure the WebAccess
gateway
Domain Configuration
• Primary domain, routing domain,Resource domains
• Cluster-enabled volume • Locate agents, start-up files, and file
structure on the cluster volume No SYS volume dependencies gives the greatest
flexibility
DOMAIN and First PO Load Script
NSS /POOLACTIVATE= PoolNameMOUNT volume VOLID=xCVSBIND ADD virtual ncp server x.x.x.xNUDP ADD virtual ncp server x.x.x.xADD SECONDARY IPADDRESS x.x.x.xLOAD ADDRESS SPACE=<name> DSAPILOAD ADDRESS SPACE= <name> vol:\SYSTEM\
GWMTA @vol: SYSTEM\STARTUP.MTALOAD ADDRESS SPACE= <name> vol:\SYSTEM\
GWPOA @vol: SYSTEM\STARTUP.POAPROTECTION RESTART <name>
DOMAIN and First PO Unload Script
UNLOAD ADDRESS SPACE =<name> DSAPIUNLOAD ADDRESS SPACE =<name> GWMTAUNLOAD ADDRESS SPACE =<name> GWPOADELAY xUNLOAD KILL ADDRESS SPACE =<name>DEL SECONDARY IPADDRESS x.x.x.xNUDP DEL virtual ncp server x.x.x.xCVSBIND DEL virtual ncp server x.x.x.xNSS /POOLDEACTIVATE=PoolName
/OVERRIDE=QUESTION
Post Office Configuration
• Cluster volume vs. cluster resource • Locate everything on the cluster volume• POA startup file modifications
POA /CLUSTER switch POA /IP switch
• Assign unique ports to each POA within the cluster
• For best performance, use new caching mode
Post Office Resource Load Script
NSS /POOLACTIVATE= PoolNameMOUNT volumeADD SECONDARY IPADDRESS x.x.x.xLOAD ADDRESS SPACE= <name> vol:\SYSTEM\
GWPOA @vol: SYSTEM\STARTUP.POAPROTECTION RESTART <name>
• Cluster-enabled volume is optional—include necessary commands if cluster-enabling the volume
Post Office Resource Unload Script
UNLOAD ADDRESS SPACE =<name> GWPOADELAY xUNLOAD KILL ADDRESS SPACE =<name>NSS /POOLDEACTIVATE=PoolName
/OVERRIDE=QUESTIONDEL SECONDARY IPADDRESS x.x.x.x
Cluster-Enabling GWIADomain Considerations
• Domain volume must be cluster-enabled• Configure the domain and the GWIA as a
single cluster resource (the cluster-enabled volume)
• Configure the domain and the GWIA on the same volume on the SAN
• Install the domain using a UNC path throughthe virtual server or a drive mapped to the cluster-enabled volume
• GWIA must run in the same memory space as the MTA
Cluster-Enabling GWIANetWare Loadable Module™ (NLM™) Considerations
• Each node’s SYS volume Must install the GWIA multiple times or copy
the NLM OR, consider placing the startup files on the
shared volume to minimize administration
• On the shared volume with the domain Don’t forget where the NLMs are when you
patch
Cluster-Enabling GWIAInstalling the GWIA
• Install through the UNC path with thevirtual server
• Modify the startup files /home=Volume:\path /dhome=Volume:\path
• Confirm the EXEPATH.CFG file (for snap-ins) UNC path using virtual server
Cluster-Enabling GWIAProtected Memory
• Domain MTA—use protected memory if any chance two MTAs will be on the same node
• GWIA—does not need protected memory unless multiple GWIAs in the cluster
GW6 GWIA must be in the same address space as its MTA
• Commands LOAD ADDRESS SPACE=
LOAD ADDRESS SPACE=NAME VOLUME:\SYSTEM\GWMTA @VOLUME:\SYSTEM\DOM.MTA
PROTECTION RESTART NAME UNLOAD ADDRESS SPACE= PROTECTION
Cluster-Enabling GWIACluster Resource
• Never have two resource objects for the same logical resource
i.e., one for the volume and one for GroupWise
• Add the GroupWise commands to the cluster-enabled volume cluster resource object
• Copy commands from the template, but do notuse the template for the GWIA
Cluster-Enabling GWIAName Resolution Considerations
• Must resolve virtual server name (IP name resolution)
CVSBIND propagates to SLP and ishighly recommended
DNS if your DNS implementation supports “_” NDS—Do not forget about context HOSTS files NWHOSTS files (administrator workstation)
Cluster-Enabling GWIALoad Script
• Normal cluster-enabled volume commands Add IP address Activate and mount volume NUDP ADD command
• Add CVSBIND command for name resolution• Load GroupWise domain commands using
protected memory• Load GWIA in same memory space as its MTA• Protection restart
Cluster-Enabling GWIAUnload Script
• Unload GWIA using protected memory• Unload GWMTA using protected memory• Add a pause to allow modules to unload• Kill the address space• Normal cluster-enabled volume unload
commands Stop CVSBIND advertisement Dismount and deactivate the volume Stop NUDP response Delete the secondary IP address
Cluster-Enabling GWIAMiscellaneous Considerations
• Configure all domain links to be TCP/IP within the cluster/LAN
• Configure the GWIA post office links TCP/IP• Firewall considerations
Allow services incoming to secondary IP address Allow services outgoing using each servers
primary IP address
GroupWise Domain for WebAccess
• Use a separate cluster-enabled volume
• Create a dedicated domain for WebAccess gateway (GWINTER)
Novell Enterprise Web Server
• Configure a hardware virtual server using web server administrator
Use web browserto point to https:webserver_address:2200
Use TCP/IP address assigned to cluster-enabled volume
TCP/IP port 80(443 for SSL)
Document directoryshould be placed onto cluster-enabled volume
• Assign document directory asa “public directory”
Restrict access ifSSL is being used
• Active/active web server vs. active/passive web server
• Edit SYS:SYSTEM\NSWEB.NCF• Duplicate configuration on
each web server• DO NOT manually start/stop
web server—use cluster-resource to control web server
Installation of WebAccess
• Initial install should include Java servlets and WebAccess agent (GWINTER) All Java servlets located on each node’s SYS: volume Install documents to default
(SYS:\NOVONYX\SUITESPOT\DOCS) directory Copy DOCS directory to hardware virtual server’s document
directory on the shared volume Install servlets only on each node Copy NLMs to each additional node Note: for Novell WebPublisher, cache location should be
changed to cluster-enabled volume STRTWEB.NCF modifications
• Protected memory• Move to cluster-enabled volume
WebAccess Cluster Load Script
NSS /POOLACTIVATE=PoolNameMOUNT GWWEB1 VOLID=xCVSBIND ADD virtual ncp server x.x.x.xNUDP ADD virtual ncp server x.x.x.xADD SECONDARY IPADDRESS x.x.x.xLOAD ADDRESS SPACE=addrspace vol:path\GWMTA
@vol:path\config.mtaDELAY XXvol:path\STRTWEB.NCF [STRTWEB.NCF must call
GWINTER in protected memory in the same space as GWMTA]
PROTECTION RESTART addrspace
WebAccess Cluster Unload Script
UNLOAD ADDRESS SPACE=addrspace GWINTERUNLOAD ADDRESS SPACE=addrspace GWMTADELAY xxUNLOAD KILL ADDRESS SPACE=addrspaceDEL SECONDARY IPADDRESS x.x.x.xNUDP DEL virtual ncp server x.x.x.xCVSBIND DEL virtual ncp server x.x.x.xNSS /POOLDEACTIVATE=PoolName
/OVERRIDE=QUESTION
WebAccess Failover Characteristics
• Time for failover and migration
• End-user experience
Cluster Resources Running on Preferred Nodes
Server1 PDP01
WEBAGENTAPPS
Server2P02WEBPUB
Server3 PO3
DHCPSRVR
Server4 GWIAHOME
Server1 PDP01
WEBAGENTAPPS
Server2P02WEBPUB
Server3 PO3
DHCPSRVR
Server4 GWIAHOME
What Happens When a Node Fails?
Server1 PDP01
WEBAGENTAPPSGWIA
Server2P02WEBPUB
HOME
Server3 PO3
DHCPSRVR
Server4
down
Server4
down
FAN-OUT FAILOVER
GroupWise Target Service Agent (GWTSA) and Clustering
• A GroupWise-specific API• Works with other backup software
(e.g., Veritas BackupExec for NetWare)• Standard GroupWise post office and domain
directory structures/files backed up• Currently only available for NetWare
platform
GWTSA and Clustering (cont.)
• GWTSA must be installed and loaded on each server to be backed up
• GWTSA cannot currently run in protected memory
• Use /HOME switch Add path for every domain on a cluster-enabled
volume that may fail over to a particular server Add path for every post office on a cluster-
enabled volume that may fail over to a particular server
GWTSA and Clustering (cont.)
• GWTSA checks availability of each location• All available domain and post office files are
backed up• If a location becomes unavailable during
backup, backup should be restarted Currently no method to restart backup from a
checkpoint position
• Restore data to a currently mounted location
Need More Info?
• June 2001 AppNotes® (http://developer.novell.com)
• Novell Press Novell’s Guide to Storage Area Networks and Novell Cluster Services by Payne and Wipfel ISBN 0-7645-3581-1
• http://www.novell.com/consulting • http://www.novell.com/documentation/lg/
ncs6p/tswizard/