Full Text: Elasticsearch
Elasticsearch is installed via elasticsearch_setup.exe from the \Microservices\Elasticsearch-7.2.1 directory in the installation data.
The installation directory, the HTTP port for Elasticsearch (default: 8041), and the index directory for the index data are specified here.
For management and updating, the index directory must not be located below the installation directory and it must provide sufficient space for the large index database.
We recommend having disk space available with a minimum of 25% of the size required for all text documents to be indexed in the system, taking into account the expected data growth.
Recommended optimizations will temporarily require additional disk space in shard size.
The index directory should be on a logical drive with high performance and fast access. Elasticsearch recommends using an SSD hard drive.
However, it should be created on the computer where the full-text server is installed.
Elasticsearch requires an administrator service account.
The sizing of Elasticsearch depends on several factors. For example, what is the expected query load and data volume? Does this result in a higher write load or a higher read load? The hardware must be selected accordingly and configured for the application. For each project, these points need to be revisited to determine how many Elasticsearch nodes are needed, in what configuration, and what the requirements are to ensure system stability.
If you have questions about dimensioning, contact the OPTIMAL SYSTEMS support or consulting team.
The directory for the index data can be subsequently changed using the path.data parameter in the following configuration file:
\config\elasticsearch.ymlFor example: path.data: 'C:\VTX\db'
Full text is configured via the 'index' and 'search' services in enaio® services-admin and in enaio® enterprise-manager.
Services URL: <service-manager-IP>:<Port>
After installation, check if the following entry is present in the configuration file elasticsearch.yml:
script.painless.regex.enabled: true
If not, add this entry.
Authentication
The following steps are necessary after installation:
- Start Elasticsearch.
- Run the elasticsearch-set-initial-passwords.bat batch file from the \bin installation directory.
- Open the built-in.usr file from the \config installation directory.
- Copy the password of the user 'elastic'.
- Insert the password in the application-es.yml file in the \services\service-manager\config directory as the password of the user 'elastic': elasticsearch.pwd: password
- Save the file and if necessary restart the 'index' and 'search' services.
Upgrading to 9.10 from earlier versions of enaio® requires reinstalling Elasticsearch 7.2.1 and migrating of existing index data.
Clusters
Please note the following when installing Elasticsearch clusters:
- Other installations may not be started before the configuration files have been modified.
- Before starting the service, enter all Elasticsearch addresses in the elasticsearch.yml configuration file for each installation:
- discovery.seed_hosts: ["host1", "host2"]
- Before starting the service, enter a unique name for the nodes in the elasticsearch.yml configuration file for each installation: node.name: nodename1
- Before starting the service, enter all nodes in the elasticsearch.yml configuration file for each installation:
- cluster.initial_master_nodes: ["node-1", "node-2"]
- Create the password via the elasticsearch-set-initial-passwords.bat batch file while the service is running exclusively for the first installation.
- Start the first installation and then all further installations.
More information on the configuration of clusters can be found in the Elasticsearch documentation.