This document describes the installation and configuration of Elasticsearch, which are recommended to be performed by a consultant. This document contains the following sections:
Return to top
There are two ways to install Elasticsearch. You can perform a standard installation during the installation or update of Exact Synergy Exact Enterprise product update 260 or higher. To install Elasticsearch on multiple servers, you will have to perform the installation and configuration manually.
Standard installation
When installing or updating Exact Synergy Enterprise product update 260 or higher, a message will be displayed for you to indicate whether you want to install Elasticsearch. By installing Elasticsearch, the default single-node Elasticsearch is installed on the web server where the update or installation is performed. For security reasons, the installed Elasticsearch mode can only connect to the web server locally. When Exact Synergy Enterprise is running on a web server farm, it is recommended to set up Elasticsearch with multiple nodes for better performance. For more information on the manual set up of Elasticsearch clustering, see https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html.
Note: If you are already using Elasticsearch for searching with the All option (see How-to: Installing and configuring Search All feature), it is not necessary to reinstall Elasticsearch for searching the feeds. In this case, the message is not displayed during the update or installation and you can continue to index the existing feeds.
Manual installation
Note: It is recommended to install Elasticsearch on a separate server.
a.Via command prompt
Note: If the message “JAVA_HOME environment variable must be set!” is displayed, you will have to first set the environment. For more information, see How-to: Setting JAVA_HOME environment variable.
b.Via Windows service
Note: If you are performing the ElasticSearch service via the command prompt, you need to run the “bin\elasticsearch.bat” command again after the installation. Whereas, if you are performing the service via the Windows service, you will need to restart the Windows service to ensure the ingest attachment is used.
For more information, see Exact search tool help file.
After Elasticsearch is installed, new feeds (posts and comments in the timeline) are automatically indexed and can be searched using the Feeds option, available in the search box at the top menu of your Exact Synergy Enterprise. To ensure that the existing feeds can also be found, you have to index them once.
The following steps describe the process of indexing.
Note: It may take some time to create the indexed data.
ESE has a complex security model and it is recommended to limit the access to the Elasticsearch servers. The connection from ESE to Elasticsearch makes use of the Elasticsearch REST API on port 9200. Elasticsearch can function also as a cluster (for more information, see the Disaster recovery section). In this case, port 9300 is used for communication between the Elasticsearch nodes.
Two methods can be used to limit access to the Elasticsearch:
Note: Port 9300 should be opened for communication between the Elasticsearch nodes.
Verify that the Elasticsearch server is only accessible from the ESE server. You can do this by contacting the Elasticsearch server from the Internet browser and see if you get a response back. On the internet browser, go to http://<Elasticsearch>:9200 and if the firewall is still open, you will receive the following message:
{"name" : "MYC1DSYN4137","cluster_name" : "elasticsearch","cluster_uuid" : "fdGmx0tkQpu3F_wTznaNew","version" : {"number" : "7.17.0","build_flavor" : "default","build_type" : "zip","build_hash" : "bee86328705acaa9a6daede7140defd4d9ec56bd","build_date" : "2022-01-28T08:36:04.875279988Z","build_snapshot" : false,"lucene_version" : "8.11.1","minimum_wire_compa6tibility_version" : "6.8.0","minimum_index_compatibility_version" : "6.0.0-beta1"},"tagline" : "You Know, for Search"}
This message indicates that the Elasticsearch server is still accessible and you will have to take steps to restrict the access.
In case of a disaster where the Elasticsearch database is corrupted or an Elasticsearch node is no longer available, there are two possible scenarios to perform a disaster recovery:
Note: In case of a disaster, using an Elasticsearch cluster with two nodes does not add any value as this is the same as using just one node.