Prerequisites (apply to each node)
Make sure the computer meets the system requirements.
Ensure you have the license file (license.lic), as it will be required during the installation process. If you do not have it, please contact your Zephyr Account Manager or contact Zephyr Sales at sales@getzephyr.com.
Download the installation file of Zephyr Enterprise for Windows.
Download a JDBC driver and place it on each node where Zephyr will be installed.
Download and install Java JDK 8u101 or later. After you install it, set the PATH and JAVA_HOME environment variables. To do that:
PATH variable:
Navigate to Start > Control Panel > System.
Click Advanced > Environment Variables.
Add the path to the bin folder to the PATH variable in the System variables section. A typical path looks like the following: C:\Program Files\Java\JDK_1.8.0_<version>\bin
JAVA_HOME variable:
Navigate to Start > Control Panel > System.
Click Advanced > Environment Variables.
Find the JAVA_HOME variable in the System variables section. If you cannot find it, add it to the System variables.
Add the path to the JDK root folder to the JAVA_HOME variable. A typical path looks like this: C:\Program Files\Java\JDK_1.8.0_<version>
Zephyr installation steps:
1. Install Zephyr Enterprise on the first node (the installation steps on the first node differ from the steps you perform on the other nodes):
Installation steps on the first node
1. Double-click the installation file and select Install in the Welcome screen:
2. View the requirements, if needed, then click Next:
3. Read the license agreement and accept its terms:
4. Specify the location where you want to install Zephyr. Make sure the disk has enough free space:
5. Choose Data Center deployment, as you are installing Zephyr on a cluster node:
6. Add the license file you received from Zephyr Sales:
7. Select the Standard installation type to use predefined ports, or Custom to use some other ports:
8. In the subsequent window, select the type of the external database you set up earlier, specify the username and password you use to connect to it, the database URL, and the database driver file:
9. Click Test Connection to check that Zephyr can connect to the database:
10. In the next window, Specify the host name or the IP address and port used by Elasticsearch. If you have several Elasticsearch nodes, separate their addresses with commas:
11. In the subsequent window, configure shortcuts and click Next:
12. Wait for the installer to finish the product installation:
13. After you install Zephyr, stop the node.
2. Install Zephyr Enterprise on another node:
zephyr_6.6_xxx_setup_iRev_xxx.exe -VzSkipStartupData=true
3. Once the installation is complete, stop the node.
You can use any number of nodes. If you want to add more nodes, repeat steps 2-3, at that, keep in mind that the nodes can be in different regions, but all of them must be in the same time zone.
4. After you install Zephyr Enterprise on all the nodes, you need to modify the following files on each node:
Zephyr\tomcat\conf\server.xml
In the file, find the following line:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
and replace it with the following:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"channelSendOptions="8">
<Manager className="org.apache.catalina.ha.session.DeltaManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Membership className="org.apache.catalina.tribes.membership.McastService"
address="228.0.0.22"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="auto"
port="4000"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
</Sender>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
filter=""/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>
zephyr/tomcat/webapps/flex/WEB-INF/template/hazelcast.xml.tmpl
Find the line –
<member>127.0.0.1:5701</member>
– and add the IPs of all the nodes instead of 127.0.0.1. For example:
<member>172.17.18.141:5701</member>
<member>172.17.18.157:5701</member>
<member>172.17.18.223:5701</member>
<member>172.17.18.201:5701</member>
Find the line –
interface>127.0.0.1</interface>
– and replace it with an IP address that has an asterisk instead of the last component. For example:
<interface>172.17.18.*</interface>
zephyr/tomcat/webapps/flex/WEB-INF/classes/hazelcast-hibernate.xml
In this file, find the line –
<member>127.0.0.1:5702</member>
– and add the IP addresses of all the nodes instead of 127.0.0.1. For example:
<member>172.17.18.141:5702</member>
<member>172.17.18.157:5702</member>
<member>172.17.18.223:5702</member>
<member>172.17.18.201:5702</member>
Find the line –
<interface>127.0.0.1</interface>
– and replace it with an IP address that has an asterisk instead of the last component. For example:
<interface>172.17.18.*</interface>
zephyr/tomcat/webapps/flex/html5/index.html
Find the line –
<input type="hidden" id="notificationConType" value="websocket" />
– and replace websocket with sse:
<input type="hidden" id="notificationConType" value="sse" />
zephyr/tomcat/conf/web.xml
In the file, before the web-app tag, add the tag <distributable />:
5. On all the nodes, open the folder
zephyr/tomcat/webapps/flex/WEB-INF/template, copy the file cluster.properties.tmpl, paste it to the folder zephyr/tomcat/webapps/flex/WEB-INF/classes and change the file name to cluster.properties.
6. Make the following changes in the
cluster.properties file:
#unique identifier for the cluster node
cluster.aws.enable=false
HAZELCAST_PASSWORD=huser
HAZELCAST_USERNAME=hpass
cluster.key=node1 (this should be a unique name of the node)
cluster.node.1.key=node1
cluster.node.1.url=172.17.18.141 (the IP address of node 1)
cluster.node.count=4
cluster.node.2.key=node2
cluster.node.2.url= 172.17.18.157(the IP address of node 2)
cluster.node.3.key=node3
cluster.node.3.url=172.17.18.223 (the IP address of node 3)
cluster.node.4.key=node4
cluster.node.4.url=172.17.18.201 (the IP address of node 4)
Example
cluster.key=node2 (this should be a unique name of the node)
cluster.node.1.key=node1
cluster.node.1.url=172.17.18.141 (the IP address of node 1)
cluster.node.count=4
cluster.node.2.key=node2
cluster.node.2.url= 172.17.18.157(the IP address of node 2)
cluster.node.3.key=node3
cluster.node.3.url=172.17.18.223 (the IP address of node 3)
cluster.node.4.key=node4
cluster.node.4.url=172.17.18.201 (the IP address of node 4)
7. Start Zephyr on the first node. After Zephyr is launched, the HAZELCAST_USERNAME and HAZELCAST_PASSWORD values will be generated in the zephyr/tomcat/webapps/flex/WEB-INF/classes/cluster.properties file.
8. Copy the HAZELCAST_USERNAME and HAZELCAST_PASSWORD values and paste them to the zephyr/tomcat/webapps/flex/WEB-INF/classes/cluster.properties file on the other nodes.
9. Stop the first node.
Now you can set up a shared folder. To learn how to do that, click Next Step below.
< Prev Step Next Step >
See Also
Set Up Zephyr Data Center
Troubleshooting