Novell Cluster Services Primer for GroupWise Administrators
Novell Cool Solutions: Feature
By Tay Kratzer
Digg This -
Posted: 5 Mar 2004
|Many organizations upgraded their server hardware in 1999 in conjunction with Y2K concerns. Now their server technology is showing it's age and it's time to look to new hardware and server technologies. Server technologies that support clustering are becoming more and more attractive. As such Novell Clustering Services on the NetWare platform has seen a huge upsurge. The need for 7x24x365 access to GroupWise is one of the most compelling reasons to implement Novell Cluster Services. Many GroupWise Administrators will need at least a basic understanding of how Novell Cluster Services works, whether or not they will administer the cluster.||
This article will provide you with a 'lite' view of clustering. I consider this information to be the minimum knowledge a GroupWise administrator should have about clustering.
Those administrators looking for a complete guide on implementing or improving their GroupWise implementation on Novell Cluster Services should read "Success with Clustering GroupWise".
For those of you attending Brainshare 2004 "TUT340 Clustering Novell GroupWise" is devoted to clustering GroupWise.
Novell's Advanced Technical Training group has a course on Novell Clustering Services.
|The Cluster Object|
What is a cluster? Simply put it's a bunch of servers gathered round a SAN (Storage Area Network, aka. tons of hard drives and space) with excellent communication and sharing skills. In ConsoleOne a cluster object looks like three red globes connected to one another with pipes. Figure 1 shows a cluster object called "Demo" in ConsoleOne:
Figure 1 - The Cluster object in ConsoleOne
|The Cluster Node Object|
A cluster node is a server that is participating in the cluster. Any cluster node (a server) can host any NSS (Novell Storage Services) pool and its subsequent volume at any given time. A cluster node object in ConsoleOne looks like a server object with a red globe next to it. Figure 2 shows a cluster node object in ConsoleOne.
Figure 2 - The Cluster Node object in ConsoleOne
|The Cluster Resource Object|
A cluster resource object is an NSS Pool, for sake of conversation, with some other attributes that make it a "cluster resource" and effectively a "virtual" server. Novell Clustering Services makes each cluster resource appear as an NCP (NetWare Core Protocol) server. Therefore each volume on the cluster resource becomes a server with its own IP address. Each NSS Pool should have only 1 NSS volume and together they are considered 1 cluster resource. A cluster resource object looks like a volume object with a small red globe next to it. Figure 3 shows a cluster node object in ConsoleOne.
Figure 3 - The Cluster Resource object in ConsoleOne
These cluster resources can travel between cluster node servers as needed. If one cluster node is down (failed) then the clustered resource hosted by that node can "failover" to another node, and if that node fails, then the resource can fail to the next, and so on, until you are out of nodes. During this failover activity, end users are completely unaware of the failures, because their services are available to them.
The cluster is managed through ConsoleOne or NetWare Remote Manager. In the case of ConsoleOne you need the latest NCS (Novell Cluster Services) Snapins. To determine if you have these Snapins, do the following:
- Load ConsoleOne
- Select Help|About Snapins
- Look for a Snapin called "Novell Cluster Services"
If for some reason you do not have these Snapins, or the latest version of these Snapins (version 1.7 when this article was written), you can obtain these Snapins by doing the following:
- Go to http://download.novell.com
- From the "Choose a Product" selection select "Novell Cluster Services"
- Submit the search, and find the ConsoleOne Snapin listed. For example when this article was written the download choice was titled: "1.7 Snap-in for ConsoleOne"
- Install the Snapins according to the installation instructions that accompany the download
There are two views for managing clustering in ConsoleOne. They are: Cluster State View and Console View. Both can be accessed by right clicking on the cluster object, selecting View and then choosing either Cluster State View or Console View.
The Console View allows you to manage all the current cluster resources configurations. You can also add cluster resources in the Console View. Consider the Console View as the configuration view.
Figure 4: The Cluster ConsoleView in ConsoleOne
You can modify or change cluster resources through the Console View by right clicking on the resource and selecting Properties. You can change the cluster resource IP Address. What? you ask, a cluster resource has its own IP Address? Yes it does. Essentially, a cluster resource "appears" to be a server. This is known as a "virtual server". That is the magic of clustering. Each volume is known by eDirectory as a server (or rather virtual server), therefore it must have its own IP Address. This makes clustering GroupWise easy because agents for GroupWise 6.0x and above are fully IP enabled. Figure 5 shows the Cluster Resource object's IP Address property page in ConsoleOne.
Figure 5: A Cluster Resource IP Address property page
Other items that are available in the Properties of a cluster resource object are Cluster Load/Unload Scripts, Policies and Nodes.
|Cluster Load/Unload Scripts|
The cluster load/unload scripts are like login scripts for cluster resources. Ok, not quite the same but you get the idea. When a cluster resource is loaded, it reads and runs the information in the load script, and when it unloads, it reads and runs the unload script. Within the cluster load script are all the commands to activate the NSS pool that holds the cluster resource. For example clustering statements such as "CVSBIND" and "NUDP". There is also the command to add the secondary IP address. It's this secondary IP address that is considered the "server" IP address and it's this secondary IP address which is assigned to the clustered resource that we use for clustering GroupWise.
Here is an example of a Cluster Load Script for a GroupWise cluster resource. Each line is numbered for ease of reference in this article, but it would not be numbered in an actual load script.
- nss /poolactivate=MAIL2
- mount MAIL2 VOLID=248
- CLUSTER CVSBIND ADD CLUSTER_MAIL2_SERVER 192.168.68.20
- NUDP ADD CLUSTER_MAIL2_SERVER 192.168.68.20
- add secondary ipaddress 192.168.68.20
Line 1 activates the NSS pool which is titled MAIL2
Line 2 mounts the MAIL2 volume and assigns it a volume ID of 248
Line 3 performs the CVSBIND ADD. This is the Cluster Virtual Server statement.
Line 4 performs the NUDP ADD. This enables the service advertising for the resource.
Line 5 adds the secondary IP address and binds it to the NetWare server
Line 6 is the load line for GroupWise.
Here is an example of a Cluster Unload Script for a GroupWise cluster resource. Each line is numbered for ease of reference in this article, but it would not be numbered in an actual unload script.
- del secondary ipaddress 192.168.68.20
- NUDP DEL CLUSTER_MAIL2_SERVER 192.168.68.20
- CLUSTER CVSBIND DEL CLUSTER_MAIL2_SERVER 192.168.68.20
- nss /pooldeactivate=MAIL2 /overridetype=question
Line 1 is the unload command for GroupWise.
Line 2 deletes the secondary IP address binding from the NetWare server
Line 3 performs the NUDP delete to stop service advertisement.
Line 4 performs the CVSBIND delete
Line 5 deactivates the NSS pool and adds a switch to override any questions asked during the process
Each cluster resource can have different policies. These policies state how the cluster resource should act during certain cluster events, such as failover. Figure 6 shows the Cluster Resource object's Policies property page in ConsoleOne.
Figure 6 - A Cluster Resource - Policies property page
The Nodes property page is where you assign nodes (actual servers) to the cluster resources' failover list. You can add as many or as few as you require. The cluster resource and hence GroupWise service will failover to each node in the order they are listed. Figure 7 shows the Cluster Resource object's Nodes property page in ConsoleOne.
Figure 7 - A Cluster Resource - Nodes property page
|Cluster State View|
The Cluster State View (shown in Figure 8 below) is where you monitor the cluster, it's nodes, and the cluster resources. You also load, unload and migrate cluster resources in this view. Assuming you have configured your cluster resource with failover Nodes, you can simply click on the cluster resource in the lower portion of the Cluster State View and in the resulting dialog, select either the Offline or Migrate button. If you select Offline, then the cluster resource unload script will run, GroupWise will unload, and the cluster resource will be offline. It's like dismounting a volume.
In the case of migrating the cluster resource, you click on the resource, and then in the resulting cluster resource manage screen select the cluster node that will be the "Migration Target" then select the Migrate button. At this point, the cluster resource unload script will run, GroupWise will unload, the cluster resource will go offline (actually its unassigned) for a moment, then the cluster load script will run, the cluster resource will be assigned to the new node and GroupWise will load. All of this can happen within 30-60 seconds and the user may never know. It is very important from a GroupWise clustering perspective to know how to online, migrate and offline cluster resources.
Figure 8 - The Cluster State View in ConsoleOne
|NetWare Remote Manager|
NetWare Remote Manager allows you to perform all the same features that exist in Cluster State View, such as online, offline and a migrate of a cluster resource. It also allows you to make configuration changes to the cluster resource, such as IP Address and Nodes. These features are done under the Clustering Menu link in Remote Manager. There are two management selections under the Clustering Menu link: Cluster Config and Cluster Management. Cluster Config, surprise, is where you configure cluster resources. Cluster config is similar to the ConsoleOne Cluster Console View. See Figure 9 below. Cluster Management is where you manage the cluster. It is similar to the ConsoleOne Cluster State view. See Figure 10 below. The nice part about the Remote Manager piece is that it is talking directly to the server(s) without Snapins, which means you get the most accurate information. As we have all experienced, once in a while ConsoleOne Snapins may not be functioning properly.
Figure 9 - Cluster Config in NetWare Remote Manager
Figure 10 - Cluster Management in NetWare Remote Manager
|Mapping a Drive to a Cluster|
Mapping a drive to a cluster resource is very much the same as mapping a drive to a volume on a stand alone server, with just a few exceptions.
- Login to the network where the cluster exists as Admin or equivalent.
- Map a drive to the cluster in the following manner. Right click on the red "N" in the System Tray of your workstation, and choose the option "Novell Map Network Drive".
- Select the "Browse" button. Browse the eDirectory tree until you find the cluster resource you wish to map and select it as shown in Figure 11. In our example, we will map to \\Demo-Tree\Demo\Office\Mail02.
- Select OK, then select Close
- Verify the mapped drive is correct either using Explorer or My Computer as shown in Figure 12.
Figure 11 - Browsing to a NetWare volume
Note: It's important to mention here that mapping to the eDirectory object is preferred to mapping to the server object, especially since the server may not be available, but the cluster resource is available.
Figure 12 - A mapped drive to a cluster
That sums up the basic clustering knowledge needed to understand Novell Clustering Services and how GroupWise is clustered. If you are the one that will be setting up GroupWise on Novell Clustering Services I recommend that you read the "Success with Clustering GroupWise" guide.
|more Kratzer's Hot Docs|
See other articles written by Tay Kratzer at "Kratzer's Hot Docs": http://www.novell.com/coolsolutions/gwmag/trenches/kratzer.html
Novell Cool Solutions (corporate web communities) are produced by WebWise Solutions. www.webwiseone.com