This article covers recommended practices for maintenance strategies for IBM Lotus Connections. Specifically, this article discusses maintenance strategies and available backup utilities. The first section outlines things to consider when building your server maintenance plan. Next, it discusses the content stores and files that should be backed up periodically. Finally, it describes at a high level the utilities available for administering Lotus Connections.
The content of this article is intended for I/T specialists and is helpful when planning and maintaining a Lotus Connections deployment.
Server maintenance strategies
Lotus Connections depends upon various components such as databases, IBM WebSphere Application Server, and LDAP servers for user information and authentication. To protect yourself against data loss, you should answer a few questions when developing your backup and recovery strategy:
- What is your tolerance level for data loss?
- How much time can you spend recovering the database and application configuration?
- How much time will pass between backup operations?
- How much storage space can be allocated for backup copies and archived logs?
- For the database, are table space level backups sufficient, or are full database backups necessary?
- Should you configure a standby system through high-availability disaster recovery?
- Most importantly, will the backup be recoverable? Of course, all backups are recoverable, but does this backup complete successfully each time? Is there a documented process in place? It's critical to test your backup and recovery plan and to correct missing or faulty procedures.
The answers to these questions help you develop your backup strategies for IBM DB2 or Oracle databases, WebSphere Application Server, and LDAP directories.
System backup and recovery â whole box
Inevitably, you may need to restore the entire system due to hardware failure or a catastrophic event. At a minimum, you should have content stores, database backups, and LDAP backups. If you donât have a backup of the WebSphere Application Server deployment, you need to re-install Lotus Connections using the same Lotus Connections content stores, and then connect it to the database and LDAP backups. This approach limits the costs of recovery.
To be prepared for such a scenario, we recommend that you create system images and data partitions of all Lotus Connections machines after you successfully set up the environment. This allows you to redeploy the whole system very quickly on similar machines. For a WebSphere machine (Lotus Connections server machine and WebSphere Application Server network deployment box), you may choose a utility, such as PowerQuest DeployCenter (formerly Drive Image Pro) or Symantec Ghost Corporate Edition to open source tool Partimage.
Backing up and restoring Lotus Connections databases
As you know, each Lotus Connections feature has its own database. The typical database names are listed in table 1.
Table 1. Database names for the Lotus Connections features
|OPNACT||Lotus Connections Activities database|
|BLOGS||Lotus Connections Blogs database|
|SNCOMM||Lotus Connections Communities database|
|DOGEAR||Lotus Connections Dogear database|
|PEOPLEDB||Lotus Connections Profiles database|
We strongly recommended that you regularly back up these databases. Backup alone doesnât provide data recovery between the latest backup copy and a server crash, so you should consider high-availability solutions. For example, you may want to back up the Blogs, Activities, and Dogear databases more regularly than others. DB2 provides a mechanism to automatically schedule backups and to keep transaction logs that can be used to restore to the exact point of the crash.
Use more than one method to back up your database, and test all backup and recovery scenarios carefully. Also, remember to back up all required database software libraries, parameter files, and password files. As the database administrator, you should also consider an automatic backup solution. Refer to your database's product documentation for details.
The simplest form of the DB2 backup or restore command requires only the alias name of the database. You do not need to shut down the database to perform backup. Use this code:
db2 backup db <LotusConnectionDBName>
db2 restore db <LotusConnectionDBName>
Backup images are created at the target location specified when you invoke the backup utility. The location can be:
- IBM Tivoli Storage Manager server (recommended)
- A directory (for backups to disk or diskette)
- A device (for backups to tape)
- Another vendor's server
In situations where certain backup and restore combinations are not allowed, you can move tables between DB2 databases using other methods:
- db2move command
- Export utility followed by the import or the load utilities
If you have configured your Lotus Connections deployment to use Oracle databases, you can use any of the following methods for backups:
- Export/import. Perform logical database backups as they extract data and logical definitions from the database to a file.
- Cold or offline backups. Shut the database down and back up all data and all log and control files.
- Hot or online backups. Perform a backup while the database is online and available for read/write.
- RMAN backups. Use the RMAN utility to back up the database while the database is offline or online.
Maintaining the LDAP directory
Administrators need to maintain the LDAP schema extensions for Lotus Connections Profiles and back up directory user information regularly. You may use the ldapsearch utility to export user information into a file (which is ldifde for Microsoft Active Directory and idsldapsearch for IBM Tivoli Directory Server).
For example, to export Active Directory users, use:
ldifde âs <host> -a <bind-id> <pw> -d <search-base> -f filename
To export IBM Tivoli Directory Server users, use:
idsldapsearch âh <host> -D <bind-dn> -w <pw> -b <base-dn>
<filter> > filename.ldif
If you have extended LDAP schema, you must maintain the changes and back up the entire directory prior to and after the change. At the least, you need to export the LDAP schema to a file using the ldapsearch command. Refer to your LDAP product manual for alternative solutions.
Configuring WebSphere Application Server
WebSphere Application Server represents its administrative configurations as XML files. You should back up configuration files regularly. You should restore the configuration only if the configuration files that you backed up are at the same level of the release, including fixes, as the release to which you are restoring. Therefore, you need to back up the WebSphere Application Server configuration files prior to an upgrade and after a successful upgrade.
The command syntax is as follows:
backupConfig [backup_file] [options]
restoreConfig <backup_file> [options]
With options, you can specify âpassword when security is enabled or ânostop to tell the command not to stop WebSphere Application Server.
Web server and WebSphere plug-in configuration files
The WebSphere Application Server backup utility doesn't back up the IBM HTTP or Plugins configuration settings. You should maintain and back up the files listed in table 2 on a regular basis:
Table 2. Files to be backed up and directories for Web server
Maintaining Lotus Connections applications
So far we've discussed backing up configuration files and data that reside on the LDAP directory and the database. This section outlines Lotus Connections-specific data that should also be part of your server maintenance plan. More specifically, you should consider tracking the application changes, backing up directories for data store and indexes, recording customizations, archiving logs and traces, and controlling inappropriate contents.
Version control and bookkeeping
As the Lotus Connections administrator, you need to know the build level for various reasons, such as preparing product upgrades or obtaining service support. To find out the build number, do one of the following:
- Activities. Go to the Activities page and find the build from the My Activities view.
- Blogs. Find the build at the lower left corner of the Blogs page.
- Communities. Find the build at the lower left corner of the About Communities page.
- Dogear. Find the build at the lower left corner of the About Dogear page.
- Profiles. Locate the build at the bottom of the About Profiles page.
Lotus Connections contents data stores
During the Lotus Connections installation, you set up a few directories for Lotus Connections content stores. Make sure you allocate sufficient disk space for them and make regular backups. Here is a listing of the default location for these files:
The Communities and Profiles features do not have a local content store directory. Lotus Connections Blogs, Dogear, Communities, and Profiles require an index file directory, but you do not need to back them up because each feature creates a backup if one does not exist.
Lotus Connections utilities and customization
You may administer Lotus Connections through the WebSphere Application Server console or through administrative commands. The utilities are deployed in <WAS>/profiles/<profile>/bin directory. Your regular database and WebSphere backup should pick up the customization through the Lotus Connections administrative utility.
Additionally, you may customize Lotus Connections pages with your branding, such as a logo for a Blog theme or a business card layout for Profiles. After you customize your pages, consider backing up the entire WebSphere Application Server directory. For instance, if you make changes to or upgrade the Lotus Connections administrative utility, regular WebSphere backup does not save the change. Another instance, Profiles business card customization, may require you to back up the installed application. Regular backup of the entire WebSphere Application Server is recommended.
Also, if you use Lotus Connections Profiles, you should back up the tdisol directory, or at least the following files as a minimum:
- Any custom tables that you created, such as emptype.csv
Content control and policing
It is important to control contents with Lotus Connections software. You do so with administrative commands; refer to the Lotus Connections Information Center for more details. This section provides examples of how to update and delete contents from your Lotus Connections implementation.
For example, as an administrator, you notice that a user bookmarks an inappropriate URL. You can use the following task to remove the Dogear bookmark from the Lotus Connections feature for a single-server environment:
The Lotus Connections Information Center has detailed coverage of this topic including examples for a Lotus Connections cluster installation.
Currently, Lotus Connections Activities and Blogs do not have the utility. The remaining sections of this article describe the services available for the Communities, Dogear, and Profiles features.
Content control and policing: Communities services
Communities deploy the script communitiesAdmin.py under the WebSphere Application Server bin directory â administrative services â that use the AdminConfig object available in WebSphere Application Server Admin (wsadmin) to interact with the Communities server. The administrative component is called CommunitiesService. Table 3 addresses the services available.
Table 3. Services to control Communities content
|UpdateCommunityName (name1, name2)||Allows you to update an existing Community's name, where name1 is the existing Community name and name2 is the new name.|
|UpdateCommunityDescription (name, newDescription)||Allows you to update (overwrite) the description field in an existing Community. Any existing description is overwritten by the new text you enter into this command.|
|RemoveReferencesByUri (name, referenceURIs)||Allows you to remove all references to one or more existing bookmarks (URI) from a specified Community.|
|RemoveTagsFromCommunity (name, tagNames)||Allows you to remove tags from an existing community. This is a two-step process. First, before you run the command, you must create a comma-separated list of tags to be removed from a community. This list of tags is saved to a variable, and the variable is used as input for the RemoveTagsFromCommunity command.|
Content control and policing: Dogear services
Dogear deploys the script dogearAdmin.py under the WebSphere Application Server bin directory â administrative services â when you need to delete offensive or unwanted links from the database. The administrative component is called LinkService. You can delete links in two ways: by using the UID (deleteLinkByUID) or by using the email address of the person who created the link (deleteLinkByPersonURL). You may also delete contents in batches. Table 4 lists the services available.
Table 4. Services to remove Dogear content
|deleteLinkByUID ('[UID]')||Deletes a single bookmark matching the UID specified, where [UID] is the UID of the bookmark.|
|deleteLinkByUIDBatch ('[fileName]')||Deletes a list of bookmarks matching the UIDs specified, where [fileName] is the name of a text file containing the UIDs to be deleted. You must create this text file and save it in a local directory (local to the server where you are running the wsadmin processor).|
|deleteLinkByPersonURL ('[email]', '[href]')||Deletes a single bookmark matching the email and URL specified, where [email] is the address of the person who created the bookmark and [href] is the URL of the bookmark you want to delete. It is important to input the exact href including the protocol.|
|deleteLinkByPersonURLBatch ('[fileName]')||Deletes multiple bookmarks matching specified email addresses and URLs, where [fileName] is the file name containing the addresses and URL to be deleted. You must create this text file and save it in a local directory (local to the server where you are running the wsadmin processor).|
Content control and policing: Profiles services
Profiles deploy the script profileAdmin.py under the WebSphere Application Server bin directory â administrative services â which provides ProfileService services to allow you to remove offensive or unwanted content from the Profiles database as shown in table 5.
Table 5. Services to remove inappropriate content in Profiles
|updateExperience ("[email]","[content]")||Replaces the existing experience text associated with a user email address with alternate text enclosed by quotes.|
|updateDescription ("[email]","[content]")||Replaces the existing description text associated with a user email address with alternate description text enclosed by quotes.|
|deletePhoto ("[email]")||Deletes image files associated with a user email address. This command can be used only if the user has uploaded a photo into his Profile document. This command will remove that photo.|
Logging and tracing files
Lotus Connections writes messages to the SystemOut.log and SystemError.log file. You may want to periodically review these files and purge them so that they don't take unnecessary space on the file system. The SystemOut.log and SystemError.log are stored in the following directory:
- Windows: C:\IBM\WebSphere\AppServer\profiles\<profile_name>\logs\<server_name>
- Linux: /opt/IBM/WebSphere/AppServer/profiles/<profile_name>/logs/<server_name>
This article covered maintenance, backup, and recovery practices for Lotus Connections. As a whole, it also covered components that make up the system, such as WebSphere Application Server, databases, and LDAP directories. You should be equipped with the utilities and methods of maintenance administration.
- Read the developerWorks article, "Deploying IBM Lotus Connections: Planning and architecture considerations."
- Read the developerWorks article, "Deploying IBM Lotus Connections: Post-installation tuning."
- Read the developerWorks article, "Deploying IBM Lotus Connections: Troubleshooting."
- Read the developerWorks article, "Deploying IBM Lotus Connections: Branding and customization."
- Read the developerWorks article, "Deploying IBM Lotus Connections: Integrating with other systems."
- Read the developerWorks article, "Deploying IBM Lotus Connections: Application programming interface."
- Read the developerWorks article, "IBM Lotus Connections: Enhancing productivity with social computing."
- Visit the developerWorks Lotus Connections page.
- Read the Lotus Connections V1.0 Reviewer's Guide.
- Consult the Lotus Connections Information Center for details on the installation, configuration, and administration of Lotus Connections.
- Consult the WebSphere Application Server V6.1 Information Center for details on the installation, configuration, clustering, and administration of WebSphere Application Server, IBM HTTP Server, and WebSphere Edge components.
- Consult the DB2 V9.1 Data Recovery and High Availability Guide and Reference.
- Read "Backing up and recovering the application serving environment: WebSphere Application Server."
- Read the IBM Redbooks publication, DB2 UDB V7.1 Performance Tuning Guide.
- Read the IBM Redbooks publication, Database Performance Tuning on AIX.
Dig deeper into IBM collaboration and social software on developerWorks
Experiment with new directions in software development.
Read and subscribe for the best and latest technical info to help you deal with your development challenges.
Software development in the cloud. Register today and get free private projects through 2014.
Evaluate IBM software and solutions, and transform challenges into opportunities.