Migration of the Full-text Index
The enaio® version 9.10 integrates Elasticsearch in the version 7.2.1 instead of 6.2.4. Updates require a migration.
A new full-text index must be created from the existing full-text index for Elasticsearch 7.2.1. The new full-text index is created before the update while enaio® 9.0/8.50/8.10 is running. It does not affect running operations and is immediately operational after the migration.
To do so, Elasticsearch 7.2.1 will be installed on a separate computer with its own full-text index.
A migration tool then creates the new index from the existing index. Thereafter, the update will be carried out by the enaio® including the microservices and Elasticsearch 7.2.1 will be integrated with a new index in enaio® version 9.10.
The new full-text index does not become larger than the existing one when migrating from 9.0 to 9.10; for migrations from the previous version, the new full-text index can become significantly larger.
Time estimates are not only dependent on the number of objects and the hardware, but also on the object types. After initial experience, we expect up to two hours for one million objects.
Migrating from 9.0 to 9.10
Elasticsearch 7.2.1 must be installed for migration on a separate computer. Enough space must be available for the extensive full-text index. This should be on a logical drive with high performance and fast access.
The installation directory and the HTTP port as well as the index directory are specified during the installation. The service requires an administrative account.
When Elasticsearch 7.2.1 is launched, the file built-in.usr in the \config installation directory is created with a password for user 'elastic' via the batch file elasticsearch-set-initial-passwords.bat from the \bin installation directory. The password is required for the migration tool and for configuring the microservices.
In addition, the connection data for the existing Elasticsearch installation is entered in the configuration file elasticsearch.yml from the \ config installation directory: reindex.remote.whitelist: <es6host>:<httpport>. Elasticsearch must be relaunched afterwards.
Migration tool
The migration tool is located in an archive in the following directory:
\Win32\Disk1\Microservices\prepareFulltextIndexUpdate\
It is unpacked on the computer with the new full-text index of Elasticsearch 7.2.1 and contains the following files:
- application-prod.yml
Configuration file in which the IP and HTTP port of the Elasticsearch installations need to be entered and the password for user 'elastic': target.elasticsearch.pwd: password
Optionally, the number of shards and replicas can be specified. Parameters with default values:
enaioblue.number_of_shards=4
enaioblue.number_of_replicas=0 - migration-9.10.0.jar
Executable JAVA file that is started from the batch file.
- prepareFulltextIndexUpdate.bat
Batch file into which the path to the JDK of Elasticsearch 7.2.1 needs to be entered before starting.
For example: D:\Elasticsearch7.2.1\jdk\bin\java
Access from this IP to Elasticsearch 6.2.4 must be allowed before starting the migration tool from the batch file:
-
via the configuration file elasticsearch.yml from the \config\ directory of Elasticsearch 6.2.4, add the IP of the migration tool to the parameter intrafind.security.subnet and restart Elasticsearch 6.2.4.
Then the Elasticsearch 7.2.1 service can be started and the batch file can be executed. The migration logs into the subdirectory \log\.
The migration tool should be started several times. This migrates the data that has been newly created in the meantime.
Integration in enaio® version 9.10
After the update to enaio® version 9.10, Elasticsearch 6.2.4 will continue to be integrated with the old full-text index via the 'index' and 'search' microservices.
Before starting the microservices, the configuration file application-es.yml is used to enter the IP and port of Elasticsearch 7.2.1 and the password for user 'elastic': elasticsearch.pwd: password.
Migrating from 8.50 to 9.10
The migration from 8.50 to 9.10 is similar to the migration from 9.0 to 9.10 with the following differences:
- the entry reindex.remote.whitelist in the configuration file elasticsearch.yml is not needed.
- The configuration file elasticsearch.yml is used to add the IP of the migration tool to the intrafind.security.subnet parameter from the \config directory of Elasticsearch 6.2.4.
Migrating from 8.10 to 9.10
The migration from 8.10 to 9.10 has the following differences:
- the entry reindex.remote.whitelist in the configuration file elasticsearch.yml is not needed.
- The configuration file osfts.properties is used to add the IP of the migration tool to the security.allowedhosts parameter from the \configuration directory of the Elasticsearch installation.
- The microservices 'index' and 'search' are reinstalled and configured. The configuration file application-es.yml for them is used to enter the IP and port of Elasticsearch 7.2.1 and the password for user 'elastic': elasticsearch.pwd: password.
Checking the Migration
The update to enaio® version 9.10 cannot be done until migration is complete. Migration status can be viewed using the logs in the \log directory of the migration tool and the following URLs:
- http://<es7host>:<httpport>/_cat/indices?v
Shows the indexing progress.
- http://<es7host>:<httpport>/systeminfo/_search
Shows the status of the actions performed by the migration.