5.1 Author-instance clustering for Correspondence ManagementWhen the Correspondence Management solution is deployed, the
Author instance runs on the same server as LiveCycle ES3. However,
setting up the LiveCycle cluster doesn't automatically configure
the Correspondence Management Author-instance cluster. You must
set up this cluster manually.
Author-instance clustering has no dependency on LiveCycle clustering.
The LiveCycle cluster acts as a backend system for Author instance
clustering when LiveCycle is integrated with the Correspondence
Management solution (see 5.3 Integrate LiveCycle with Correspondence Management Solution. The shared nothing mode
of clustering is supported for Correspondence Management.
Follow these steps to configure clustering for Correspondence
Management: Decide which instance will be the master instance.
Note the host name and port number of this instance. For example,
if you are running the master instance on machine node1/port 8080,
its address is node1:8080.
Every instance other than the master instance is a slave
instance. The CRX console for any instance is located at http://<slave-address>/crx/index.jsp.
For
example, if you are running a slave instance on machine node2:port 8080, you
can log in to its CRX console at http://node2:8080/crx/index.jsp.
After logging in to the console of a slave instance, click Repository Configuration.
On the Repository Configuration page, in the Tools
list, click Cluster.
On the Cluster Configuration page, enter the Web address
of the master instance in the Master URL field. Enter this
information in the following format: http://<master-address>/crx/config/cluster.jsp
For
example, if the master and slave instances are running on node1 and node2 respectively,
enter: http://node1:8080/crx/config/cluster.jsp
Enter the CRX user name and password and then click Join.
Admin access is a prerequisite for setting up a cluster.
Joining the cluster may take a few minutes. Once it is confirmed
that the joining request was successful, repeat the joining procedure
on each of the other slave instances. Note: You may need to restart
the slave instance to avoid stale sessions.
Important: All Author instances in the cluster should
be time synchronized. You can use an NTP (Network Time Protocol)
server to ensure time synchronization.
Important: If
you are setting up clustering on your Correspondence Management solution,
you need to ensure that there are no spaces in your CRX repository
path.
5.1.1 WebSphere-specific requirementsSome additional configuration is necessary for using the
Dispatcher with the WebSphere application server. The following
properties need to be set to true for the Web container: com.ibm.ws.webcontainer.extractHostHeaderPort
trusthostheaderport
Set these properties as follows: In the LiveCycle Administration
Console, click Servers > Server Types > WebSphere application servers > [server_name] > Web Container Settings > Web container.
Under Additional Properties, click Custom Properties.
On the Custom Properties page, click New.
On the settings page, enter the name of the custom property
that you want to configure in the Name field and the value
that you want to set it to in the Value field.
Click Apply or OK.
Click Save on the console task bar to save your configuration
changes.
Repeat steps 1-6 for each server in the cluster.
Restart the cluster.
Note: Ensure that the default_host aliases
list has the same port numbers as the Web server running atop the
WebSphere cluster.
5.2 Configure the Publish instanceYou must run separate Author and Publish instances for
Correspondence Management Solution. However, you can configure the
two instances on the same or on different machines.
Note: Before configuring the Publish instance, ensure that your
Author instance is configured and deployed. You can verify by successfully
logging in to the solution template for Correspondence management
Solution. See 4.3 Access solution template for more information.
Create an appserver profile for the Publish instance
on the same or on a different machine.
On the Author instance, navigate to the [LiveCycle root]/configurationManager/export/
directory.
Copy the adobe-livecycle-publish-[appServer].ear file
and deploy it to the appserver profile created in step 1.
Copy the [LiveCycle root]/configurationManager/export/crx-quickstart directory
to the file server for the Publish instance.
Start the Publish server with -Dcom.adobe.livecycle.crx.home=<location for crx-quickstart> parameter,
where <location for crx-quickstart> is
the location where you copied the crx-quickstart directory for the
Publish instance.
Note: If Author and Publish instances are on the same machine, ensure
that you start the Publish instance using a different port.
Now that the Publish instance is up and running, you need to
configure the two instances to communicate with each other.
Important: If you are setting up clustering on your
Correspondence Management solution, you need to ensure that there
are no spaces in your CRX repository path.
5.2.1 Configure the Author Instance5.2.1.1 Configure Replication AgentsOn the Author instance, you need to configure replication
agents for each Publish instance. These agents replicate content
from the Author instances to all the Publish instances.
Log in to Tools UI at http://<authorHost>:<authorPort>/lc/miscadmin
Select Replication, then Agents on author in
the left panel.
On the right panel, you see various agents
configured for the Author instance.
On the right panel, Select New.... and click New Page.
The Create Page dialog
displays.
Set the Title and Name, then select Replication Agent.
Click Create to create new agent.
Double-click the new agent item to open the configuration
panel.
Click Edit - the Agent Settings dialog displays.
In the Settings tab:
Enter a Description.
Check Enabled.
Select Serialization Type as Default.
Set the Retry Delay to 60000.
Set the Log Level as Info.
In the Transport tab:
Click OK to save the settings.
On the agent configuration panel, click Test Connection.
Successful
connection ensures that the configuration is done correctly.
Repeat steps 1-10 on the Author instance for a creating
replication agent for each Publish instance.
Note: In case, you have only one Publish instance you can use the
default agent named as Publish. You need to edit it for specifying
Publish URI in the Transport tab as mentioned in the step
b(i). In this case, you do not need to create a replication agent.
Note: In case, you have multiple Publish instances, you need to
create a replication agent for each Publish instance as mentioned
in Steps 1-10. For each such replication agent, Title and Name should
be significant, so the identification of the corresponding Publish
instance can be simpler. Each such replication agent has a different URI
in the Transport tab pointing to a particular Publish instance.
If you are not using the default agent, disable it, so unnecessary
replication attempt can be avoided.
Note: For Author clusters, these steps need to be performed on one
Author instance (preferably a master instance).
5.2.1.2 Define Publish instance URL for ActivationManagerImplGo to http://<authorHost>:<authorPort>/lc/system/console/configMgr.
Find and click the Edit icon next to the com.adobe.livecycle.content.activate.impl.ActivationManagerImpl setting.
In the ActivationManager Publish URL field, specify the URL
for the corresponding Publish instance.
Click Save.
5.2.1.3 Configure reverse replication queueGo to http://<authorHost>:<authorPort>/lc/etc/replication/agents.author/publish_reverse.html.
Click Edit. The Agent Settings dialog opens.
Click the Transport tab and specify the URL to the
corresponding Publish server in the URI field.
Click OK.
5.2.2 Configure the Publish Instance5.2.2.1 Define Author instance URLGo to http://<publishHost>:<publishPort>/lc/system/console/configMgr.
Find and click the Edit icon next to the com.adobe.livecycle.content.activate.impl.VersionRestoreManagerImpl setting.
In the VersionRestoreManager Author URL field, specify the
URL for the corresponding Author instance.
Click Save.
5.3 Integrate LiveCycle with Correspondence Management SolutionImportant: Perform these steps only in case
of a non-turnkey deployment. Further, perform these steps on one
Author instance (preferably the master instance) for Author clusters.
For Publish clusters, perform these steps on all Publish instances.
Go to http://[host]:[port]/lc/system/console/configMgr
and log in using admin/admin as username/password.
Search for and open Adobe LiveCycle Client SDK Configuration.
In Server URL field, ensure that http://[ host]:[ port]
is specified. Important: Ensure that the document server
is listening on the specified host and port combination. The following
three scenarios are possible in the case of a LiveCycle server cluster:
All LiveCycle server instances are running on localhost and
the same port. In this case use localhost:[port].
All LiveCycle server instances are running on localhost but
on different ports. In this case, use a load balancer host name
and port combination—[loadbalancer_host]:[loadbalancer_port].
All LiveCycle server instances are running on a particular
host name (not localhost) and different/same ports. In this
case, use a load balancer host name and port—[loadbalancer_host]:[loadbalancer_port].
If you need to use a load balancer URL to access the LiveCycle server cluster (as mentioned above), ensure that the required communication ports between Author instances and the load balancer are open.
Specify LiveCycle administrator credentials in the Username
as Password fields.
In the Experience Server URL field, specify http://[ host]:[ port]/lc. Ensure that the Experience Server is listening
on the specified host and port combination. The host/port logic
discussed in the note for step 2 also applies to the Experience
Server.
In the System user for accessing Experience Server field,
ensure that crxuserfordsc is specified.
In the System user for accessing Document Server field, specify dscuserforcrx.
Ensure that all the checkboxes are selected.
Click Configure. When the configuration is complete,
a message is displayed on the screen.
Important: When
you create the users in steps 5 and 6, you have the
following choices:
You can create different users
for each Publish and Author instance.
If you specify the same
user on different Publish and Author instances, an error is encountered
when a Publish or Author instance with overridden trust settings
connects to the Experience Server.
When you specify a user
for an instance (Author or Publish), say Instance01, the trust settings
is defined between Instance01 and the Experience Server. However,
if you specify the same user on another instance (Author or Publish),
say Instance02, the newly specified user overrides the trust settings
of the user defined on Instance01. Now, an error is encountered
if Instance01 connects to the Experience Server.
Alternatively, you can create the same user on all Author
and Publish instances. However, ensure that when you specify the
user on instance, you deselect the following checkboxes:
This
ensures that each user does not override the trust settings of user defined
on other instances.
5.4 Install sample usersYou can install sample users with predefined user permissions
to further explore the solution template, which you can customize
to build your own solution.
Go to http://<authorHost>:<authorPort>/crx.
The content repository console opens.
Click Package Share and log in using your Adobe ID
and password.
Type samples-correspondencemanagement-pkg in the search field
and press Return.
Click Download next to the samples-correspondencemanagement-pkg-<version>
package, where <version> is the latest version in the
search results.
Accept the license agreement and click OK when prompted
to download the package.
When the download is complete, click Downloaded next
to the package to open Package Manager.
In Package Manager, click Install next to the downloaded
package.
Click Install on the confirmation dialog to install
the sample users.
(Optional) Repeat steps 1 through 8 on the
Publish instance if you require sample users on the Publish instance.
For more information about the sample users and guidelines to
implement a solution using the solution template, see Correspondence Management Solution Guide. Note: For
Author clusters, these steps need to be performed on one Author
instance (preferably a master instance).
5.5 Configure IPv6 implementationNote: Perform these steps only if Correspondence Management
Solution is running on a machine that uses an IPv6 address.
To map the IPv6 address to a hostname on the server and client
machines:
Navigate to the C:\Windows\System32\drivers\etc directory.
Open the hosts file in a text editor.
Add a mapping for the IPv6 address to a host name. For example:
2001:1890:110b:712b:d1d:9c99:37ef:7281 <ipv6_hostname>
Save and close the file.
Ensure that you use the mapped host name instead of the IPv6
address to access Correspondence Management Solution.
5.6 Install Japanese fonts for Adobe ReaderIf your Correspondence Management assets use Japanese fonts,
you must install the Japanese Language Support Package for Adobe
Reader. Otherwise, your letters and forms will not render and function
properly. For installing language packs, visit the downloads page
for Adobe Reader.
5.7 Uninstall Correspondence Management SolutionNavigate to the [LiveCycle root]\Uninstall_Correspondence
Management Solution directory.
Run the Uninstall Correspondence Management Solution Installation
application or script, as applicable.
Follow the instructions to complete the uninstallation procedure.
Note: After uninstalling Correspondence Management Solution, you
can run only LiveCycle by re-running the Configuration Manager.
However, in case of turnkey deployments, before running Configuration
Manager, you must restore the adobe-jboss-core.ear.orig file by
renaming it to adobe-jboss-core.ear.
Note: Uninstaller does not remove the content repository data. If
you do not need it anymore, you can manually delete the [LiveCycle
root]/configurationManager/export/crx-quickstart/ directory.
5.8 Load balancing the Author cluster/Publish farm using DispatcherYou can load balance all incoming requests to Author/Publish
instances using Dispatcher, Adobe's caching and load balancing tool
for CRX. Dispatcher is delivered as a plug in that you can use with
any Web server; for example, Apache, IIS, iPlanet, and so on. Refer
to this technical article for more details.
The following Dispatcher-provided functionality is important
from a Correspondence Management perspective: Load balancing
Sticky sessions
Session management
If an Apache instance is already in use for the LiveCycle cluster,
you may use the same Apache installation by running separate instances
on different ports using another configuration file (httpd.conf).
Both Author and Publish instances can be handled using the same
Dispatcher configuration. You must set up both Author and Publish
farms in this scenario.
Alternatively, you can set up separate Dispatcher instances for
Author and Publish instances. To configure this scenario, make the
following changes to the Dispatcher configuration file, dispatcher.any: - Client headers
- Add a custom header AEP-APP-ROOT for Correspondence Management:
/clientheaders
{
"referer"
"user-agent"
.............
............
..........
"AEP-APP-ROOT"
}
- Renders
- Author or Publish instances in a farm are represented by
renders. The load is balanced amongst these renders.
/renders
{
/node01
{
#hostname or IP of the render
/hostname "node1.com"
#Port of the render
/port "8080"
/timeout "0"
}
/node02
{
#hostname or IP of the render
/hostname "node2.com"
#Port of the render
/port "8080"
/timeout "0"
}
}
- Filters
- Using filters, you can specify which requests are accepted
by the Dispatcher module. All other requests are sent back to the
server, where they are offered to other modules running on the Web
server.
/filter
{
#deny everything and allow specific entries
/001 {/type deny /glob "*"}
/002 {/type allow /glob "* /admin/*"} # allow servlet engine admin
/003 {/type allow /glob "* /crx/*"} # allow content repository
/004 {/type allow /glob "* /system/*"} # allow OSGi console
/0023 { /type "allow" /glob "* /content*" } # disable this rule to allow mapped content only
}
- Sticky connections
- Set sticky connections on "/", because Correspondence Management
solution content is placed under various directory structures leading
to different paths from “/”.
/stickyConnectionsFor "/"
- Session management
- The login-token cookie is used for Correspondence Management
session management. Make the following configuration in the session
management section:
/header "Cookie: login-token"
|
|
|