There are a lot of discussions on various forums/threads regarding the Content Server High Availability Environment. But I have not come across any documentation providing the precise steps to implement it. This is an attempt to list the steps that I have been using for the implementation. It’s basically an integration of bits and pieces from various sources combined along with my experience in order to put a clear picture. These steps may not be exactly as suggested and supported by EMC.
The procedure listed below is specific to the Content Server Linux Oracle 6.5 SP2 version.
Prerequisites:
- As it’s a HA environment, the content files should be present in a File Store that is shared across the Content Servers.
- The Installation Owner and the Installation Path should be same on each Content Server.
- Availability of a Database Server and its connectivity through each Content Server Host using Oracle Client.
- Update the /etc/hosts file of the Content Server Hosts so that they can resolve their IP addresses and hostnames.
Once the above prerequisites are satisfied, the below steps can be used to establish the HA environment.
- Install the Primary Content Server as per the standard procedure mentioned in Installation Guide.
- Install the docbroker on the Secondary CS host.
- Create a Secondary Server Config object using Documentum Administrator.
- Copy server.ini, aek.key, dbpasswd.txt, dm_start_docbase and dm_shutdown_docbase from Primary CS Host to Secondary CS Host.
- Update the server.ini on both the Hosts so that the docbrokers project to each other.
server.ini on the Primary CS:[DOCBROKER_PROJECTION_TARGET] host = <primary docbroker> port = 1489 [DOCBROKER_PROJECTION_TARGET_1] host = <secondary docbroker> port = 1489
server.ini on the Secondary CS:
[DOCBROKER_PROJECTION_TARGET] host = <secondary docbroker> port = 1489 [DOCBROKER_PROJECTION_TARGET_1] host = <primary docbroker> port = 1489
- Update the dm_shutdown_docbase as follows:
- The line preceding to “shutdown,c,T,T” should be updated as follows:
- Original:
./iapi <docbase> -U$DM_DMADMIN_USER -P -e << EOF
- Updated:
./iapi <docbase>.<secondary server config object name> -U$DM_DMADMIN_USER -P -e << EOF
- Original:
- Update the dfc.properties of the Web Application as well as both the Content Server Hosts so that they point to both the docbrokers.
- Create an ACS Config object using the below command:
dmbasic -f dm_acs_install.ebs -e Install -- <docbase name> <installation owner> <password> <new acs config name> <secondary server config name> <JMS Port> <JMS protocol> <output log location>
Start the Primary CS and now both the CS should be in HA.


Hi Uttkarsh,
Thanks for this article. I was looking for something like this to start off on basics of a HA setup. If you can help, just needed a few clarifications.
1. Create a Secondary Server Config object using Documentum Administrator.
Where can I find specific documentation for this one?
2. Copy server.ini, aek.key, dbpasswd.txt, dm_start_docbase and dm_shutdown_docbase from Primary CS Host to Secondary CS Host.
The server.ini, dbpasswd.txt are present under the folder, for ex: /opt/documentum/dba/config/.
But here we are not configuring the secondary server to serve the repository. So the directory stricture as such wont be created. So where to copy these files..?
Thanks for your help.
Guru
Hi Guru,
Here are the answers to your questions.
1. I am really not aware of any documentation on this but I don’t think you would need that. Just check the properties of Primary Server Config and most of the properties would have same or similar (object_name, hostname, URLs) value in Secondary Server Config as well. Make sure that you use the same Installation Path as in Primary CS. Additional Server Config object can be created in DA in a similar way as you create a new document.
2. By the time you reach to this step you have already installed the docbroker. The installer would have created $DOCUMENTUM/dba. You can create the remaining of your own. Make sure you create them from Installation Owner’s account.
Hope that answers your queries.
All the best.
-Uttkarsh
Thanks for the prompt response Uttkarsh.
One thing, we are not specifically configuring ( which we do by running the configuration program. Here I am referring to the option “Configure Content-File Server for use with an existing repository” ) the secondary server to serve the existing repository(being served by the primary).
We are only creating the server config object and copying the config files to the sec server. Did you mean that it will have the same effect?
I was wondering how the sec server will come to know about the repository that it needs to serve.
Believe things will be more clear once I try it out, still trying to setup a suitable environment for it…:)
Thanks again for your help.
Guru
Hi Guru,
You may probably like to go through Single Repository Multiple Content Servers.
I would like to believe that the CFS configuration would produce the same effect as creating the secondary server config object and copying those files PROVIDED the File Store is on a common storage like NAS and you don’t define a separate File Store on Secondary CS. But I cannot say that for sure as I have not read any documentation on that; nor have I tried it myself. Probably you can try it out and help me know whether that works.
Let me know if you have any other questions or comments.
-Uttkarsh
Thanks Uttkarsh.
Sorry to bother you again…now I got a bit confused..:)
yes I had gone through your post “Single Repository Multiple Content Servers”
You mean to say that in CFS setup, a local distributed file store gets created on the secondary server while in the HA…its the same shared FS that will be used by both?
Guru
Yes, that’s precisely what MY understanding is. But you shall validate it of your own.
Do let me know your findings and YOUR understanding when you are done with what you are trying to do.
Cheers
Uttkarsh