ShowTable of Contents
Introduction and business requirement
IBM® Lotus® Notes® databases that reside on clustered IBM Lotus Domino® servers need to be monitored for consistency with respect to database size and document counts. Also, Domino administrators should be provided with data to help them plan for the high availability of critical databases and ensure that server performance is at optimum level.
Lotus Notes/Domino has a built-in cluster analysis utility that can be invoked from the Administration client, but this utility doesn't provide detailed analysis at the database level and is not of much help in identifying problems.
Catalog.nsf is an another source from which we can obtain database statistics, but the data is not easily understood and users may choose to not include the databases in the catalog, leading to non-availability of data for certain databases.
Based on the above requirements, we have developed an LN-based tool for cluster monitoring that can track the databases in the cluster and display relevant reports to Domino administrators.
Using the tool, Domino administrators can track databases across servers in a cluster and receive a list of the databases that includes details such as on which severs the databases exist, and whether or not (1) cluster replication is enabled, (2) the database size is within acceptable limits from the average database size, and (3) the document count is within acceptable limits from the average document count for each database.
The data is collected on a daily basis and is presented in graphical format, helping administrators to identify the issues at a database level and to take the necessary corrective/preventive actions, and to track the changes for each database in a timely manner.
Figure 1 shows the Cluster Reporting tool architecture.
Figure 1. Architectural diagram
Let's discuss the tool's features in more detail:
Figure 2. Multiple views to display the database documents
- Data collection on all databases from each server of the cluster at the server level on a daily basis.
- Data collection performed at the same time on all the servers, even though the servers may exist across multiple time zones, through time normalization in GMT/UTC.
- Consolidation of data for each database on any one server identified by the administrator.
- Multiple views to represent the data in a meaningful manner (see figure 2).
Figure 3. Views to display database documents and template documents
- Different views to display the databases and templates (see figure 3).
In addition, the tool captures and displays:
Figure 4. Icons to display the database existence on each server
- Information related to whether a database exists on each server. If the database exists on a server, the Status column for that server displays a green check mark icon; if it does not, a red “X” icon is displayed (see figure 4).
Figure 5. Snapshot of data collected for each database
- Information for each database on a server including database size, document count, and cluster replication status (see figure 5).
Figure 6. Icons to display the cluster replication status
- The cluster replication status for all the databases on each server. If the cluster replication is enabled, then the Cluster Replication column displays a “thumbs-up” icon; if cluster replication is disabled, it displays a “thumbs-down” icon (see figure 6).
Also, the tool does the following:
- Compares the database size across replicas with the average database size and indicates any variations from the allowable limit configured in the tool (see figure 7):
Figure 7. Icons to display the database size variations
- If the database size on a server is equal to the average database size, then the Database Size column displays the green check-mark icon.
- If the variation in database size on a server is higher than the permissible limit (as defined in the lookup records), it displays the “up-arrow” icon.
- If the variation in database size on a server is lower than the permissible limit (as defined in the lookup records), it displays the “down-arrow” icon.
- Compares the document count across replicas with the average document count and indicates any variations from the allowable limit configured in the tool (see figure 8):
Figure 8. Icons to display the document count variations
- If the document count on a server is equal to the average document count, then the Document Count column displays the green check-mark icon.
- If the variation in document count on a server is higher than the permissible limit (as defined in the lookup records), it displays the up-arrow icon.
- If the variation in document count on a server is lower than the permissible limit (as defined in the lookup records), it displays the down-arrow icon.
Deploying the tool in a clustered environment
First, download the cluster reporting tool .ntf file from http://planetlotus.org/9cc28c
, and then follow these steps to deploy it:
1. Create the Cluster Reporting tool replica on all servers of the cluster.
2. Update the “ClusterName” lookup record in the Lookup Documents view with the name of the cluster, per your Domino directory or the name of your choice (see figure 9).
Figure 9. Lookup record for the Cluster name
3. Update the Total Servers lookup record with the number of servers in the cluster (see figure 10).
Figure 10. Lookup record for total number of Servers in the cluster
4. Update the ReportExecutionTimeinGMT lookup record with the GMT time at which the agent should collect the data. The time is specified in HH:MM:SS 24-hr format (see figure 11).
Figure 11. Lookup record for data collection agent time in GMT
5. Update the Allowed Variation in Database Size and Allowed Variation in Document Count lookup records with the allowed percentage variations for the database size and document count for each replica of the databases with the average values (see figure 12).
Figure 12. Lookup records for database size and document count variations
6. Schedule the DatabaseReport agent every 15 minutes and set the run as “Any Server”. We want this agent to run on all the servers of the cluster so that it can collect the data for each database. The agent runs every 15 minutes, but it collects the data only once a day, per the the lookup record configured in step 4.
NOTE: It's required to collect the data at the same time for accuracy in the scenario in which servers are located in different time zones. This agent should be signed with an ID having “Full Administrator” rights on all the cluster servers.
7. Schedule the ConsolidatedClusterReport agent on any one server in the cluster one hour after the DatabaseReport agent would run on that server. This time lag is required to ensure that the replication is complete and all the data is available on all the servers.
8. Schedule the DeleteProcessed agent on any one server of the cluster one hour prior to the execution of the DatabaseReport agent on that server. This will delete all the previous day's data, and the time lag will ensure that the deletions are replicated to all servers of the cluster.
Clustering Domino servers is the best way to provide high availability of the critical databases used by any organization, and these clustered servers must be monitored for efficiency and optimum usage. Our Domino cluster reporting tool helps in monitoring databases on a cluster for efficiency and provides vital information to the Domino administrators to help them detect and resolve database-level issues.
About the author
Md Irshad A Danawala is a Lotus Notes Client and Web Application developer with roughly six years of experience in designing and developing client and Web-based applications. He is based out of IBM's Pune, India, facility and can be reached at firstname.lastname@example.org.