Configuring the Data Server

The data server configuration is specified in data-server-cluster element in the appian-topology.xml file, located in both the <APPIAN_HOME>/ae/data-server/conf/ and <APPIAN_HOME>/ae/conf directories:

1
2
3
4
5
6
<topology>
    ...
    <data-server-cluster>
        <data-server host="machine1.example.com" port="5400" rts-count="2"/>
    </data-server-cluster>
</topology>

For a high availability configuration, specify three instances of data server on different machines:

1
2
3
4
5
6
7
8
<topology>
    ...
    <data-server-cluster>
        <data-server host="machine1.example.com" port="5400" rts-count="2"/>
        <data-server host="machine2.example.com" port="5400" rts-count="2"/>
        <data-server host="machine3.example.com" port="5400" rts-count="2"/>
    </data-server-cluster>
</topology>

If data-server-cluster configuration is not specified in appian-topology.xml, it will run on the first node of Kafka listed in the kafkaCluster configuration. The appian-topology.xml file must be copied from <APPIAN_HOME>/conf/ into <APPIAN_HOME>/data-server/conf/ before starting the data server. Copies of the topology file in each location must always be in sync, irrespective of the configurations specified.

Host

Set the host attribute in the data-server element to the name of the machine hosting the data server. If no value is provided for the host attribute, it will default to localhost. Note that support for running with host="localhost" was deprecated in 19.1. If the host is not specified, the following warning is printed in watchdog.log:

WARN com.appian.data.TopologyFactory - DataServer host is empty, defaulting to 'localhost'. This behavior is deprecated and will be removed in the future, and this topology will be considered invalid. You should not leave the host blank.

Port

The port attribute can be defined on both the data-server-cluster and the data-server elements. If defined on both, the data-server element takes precedence. If not supplied, the default port number is 5400.

In order for the data server to function properly, make sure that you open all of the required ports. See Port Usage for more information.

Real-time store count

The rts-count attribute determines the number of real-time stores in the data server. Multiple real-time stores provide horizontal read scalability. Appian supports running exactly 2 instances of the real-time store only. When configuring the attribute value, set it to rts-count="2".

Changing the Topology

When you want to add or remove data server nodes, change the host name, or change the port, you'll need to make configuration changes to the data-server-cluster parameter by taking the following steps:

  1. Stop the data server on all the servers by executing <APPIAN_HOME>/data-server/bin/stop.sh on Linux or <APPIAN_HOME>\data-server\bin\stop.bat on Windows.
  2. Delete the <APPIAN_HOME>/ae/data-server/node/election directory from all the servers. This directory contains runtime data that needs to be deleted when certain topology changes are made.
  3. Make the required topology change on all the servers.
  4. Start the data server on all the servers in any order by executing <APPIAN_HOME>/data-server/bin/start.sh on Linux or <APPIAN_HOME>\data-server\bin\start.bat on Windows.
Open in Github

On This Page

FEEDBACK