Installing Elasticsearch

yuuvis® RAD 8.x »

Elasticsearch is integrated in yuuvis® RAD for searching.

It includes a linguistic plugin for search optimization in exactly one of the following languages: English, French, German, Spanish, or Italian. This language is specified during installation of yuuvis® RAD service-manager. It can be changed. The language can be changed.

Ensure that the System Requirements are fulfilled before installation.

To install Elasticsearch, follow these steps:

  1. Copy the \elasticsearch\ installation directory to the file system of the computer on which you want to install Elasticsearch.

  2. Run elasticsearch_setup.exe from the installation directory.
  3. The installation wizard will start. Follow the steps described by the installation wizard.

  4. Specify the following parameters:

  5. HTTP port Elasticsearch port. Default: 9200
    Index directory

    Index directory for Elasticsearch.

    The index directory should be created on a fast and large data medium, if possible, and not in the installation directory.

    Maximum RAM Maximum working memory for the service (in MB)
  6. Change the service parameters before you start the service:

    Launch elasticsearch-service-x64w.exe from the \bin\ directory.

    Service parameters:

    Log On > Account

    Account for login to the service

    Elasticsearch requires an administrative account.

    Logging > Level Optional: Logging level for service logging
    Logging > Path Optional: Path for service logs
    Logging > Stdout Optional: Redirect the standard output to a file
    Logging > Stderror Optional: Redirect the standard error output to a file
  7. Other optional changes:

    • Modify index directory
    • The index directory can be modified in the elasticsearch.yml configuration file located in the \config\ Elasticsearch directory. Parameter: path.data

    • Windows Service Control
    • Configure recovery in the event of service errors via the Windows Service Control feature: Select Restart service for all errors.

    • Logging
    • The Elasticsearch log directory can be modified in the elasticsearch.yml configuration file located in the \config\ Elasticsearch directory. Parameter: path.logs

    • Search: AND/OR
    • For the full text search, several terms are linked by the Boolean AND if the user does not specify an operator. The default operator can be modified in the search-prod.yml configuration file located in the \config\ directory of yuuvis® RAD service-manager. Parameter: osfts.default-operator: OR

    • Search: Fuzzy search
    • The fuzzy search can be enabled in the search-prod.yml configuration file located in the \config\ directory of yuuvis® RAD service-manager.

      Parameter: osfts.fuzzy-search: true

      In a fuzzy search, combinations of terms are only found if the combination is present in the metadata or content.

    • No. of shards
    • Default: one shard per index.

      The number of shards can be specified in the index-prod.yml configuration file located in the \config\ directory of yuuvis® RAD service-manager. Parameter: osfts.number-of-shards

      Reindexing via yuuvis® RAD services-admin is required when changes are made:

      • Call the URL: http://<service-admin-IP>:7291/swagger-ui.html#!/api-controller/reindex
      • Click Try it out!.
      • Reindexing starts immediately.

    • CSV for exporting hit lists
    • The separator for columns in exported CSV files can be entered in the search-prod.yml configuration file located in the \config\ directory of yuuvis® RAD service-manager. Parameter: csv.delimiter: ';'. Default: semicolon.

      CSV files are always output with UTF-8 encoding. Without BOM is the default. The csv.writeBOM: true parameter is used to output the file with BOM. For a correct display of umlauts and special characters, the output with a BOM should be set in Excel, for example.

    • Autocomplete

    • The maximum number of suggestions for fields with the relevant property can be specified in the index-prod.yml configuration file located in the \config\ directory of yuuvis® RAD service-manager. Parameter: osfts.autocomplete.suggestions-size: 500. Default: 500.

      Auto-completion can be disabled by entering the following entry in the application-es.yml configuration file located in the \config\ directory of yuuvis® RAD service-manager:

      osfts.autocomplete.enabled: false

      The autocomplete index can be created again using yuuvis® RAD services-admin:

      • Call the URL: http://<service-admin-IP>:7291/swagger-ui.html#!/api-controller/completeAutocompleteIndexUsingPOST
      • Optional: Enter the time period
      • Click Try it out!
      • Indexing starts promptly.

    • Index cleanup
    • The full-text index can be cleaned up via yuuvis® RAD services-admin after deleting large numbers of documents.

      • Call the URL: http://<service-admin-IP>:7291/swagger-ui.html#!/api-controller/cleanUpUsingPOST
      • Optional: Enter the object type
      • Click Try it out!
      • Cleanup starts promptly.

        The cleanup is done in batches. The batch size can be configured via the index-prod.yml file located in the \config\ directory of yuuvis® RAD service-manager:

        osfts.cleanup.bulkSize: 1000

    • Tables

      Tables with more than 20,000 rows lead to errors when reindexing. Reindexing may also be necessary for Elasticsearch updates.

      This limit is set via the osfts.tableRowSize parameter of the index-prod.yml file located in the \config\ directory of yuuvis® RAD service-manager. The value must not be increased.

    • Troubleshooting
    • If errors occur during indexing, three new attempts, or retries, are initiated at intervals of one hour.

      This setting can be changed by modifying the configuration in the index-prod.yml file located in the \config\ directory of yuuvis® RAD service-manager:

      routing:
        errorHandling:
          retry: 3
          periodInMinutes: 60
          startPolicy: "0 0/1 * ? * * *" 

      Parameters:

      retry Number of attempts
      periodInMinutes Interval between attempts
      startPolicy Schedule for attempts in CRON notation

    • Linguistic plugin
    • A language for the Linguistic plugin is specified during the installation of yuuvis® RAD service-manager. The index-prod.yml configuration file located in the \config directory of yuuvis® RAD service-manager can be used to activate another language:

      osfts:
        languages: 'de'

      Enter the abbreviation of the desired language: English (en), French (fr), German (de), Spanish (es), or Italian (it). Licenses can be acquired from OPTIMAL SYSTEMS and integrated to unlock multiple and additional languages here.

    • Structure tree/structure service
    • Complex configurations of the structure tree via the 'structureservice' service can lead to errors.

      If necessary, add the following entry to the elasticsearch.yml configuration file located in the \config\ Elasticsearch directory:

      indices.query.bool.max_nested_depth: 100

  8. Start the Elasticsearch service.
  9. Configure Elasticsearch authentication:
    • Run the elasticsearch-set-initial-passwords.bat batch file located in the \bin\ Elasticsearch directory with administrative rights.
    • Open built-in.usr located in the \config\ Elasticsearch directory.
    • Copy the password of the user named 'elastic'.
    • Provide the password when installing yuuvis® RAD service-manager.

Reindexing

Full-text operations are available for reindexing. By default, the full-text operation 'Technical update' is set up to repeat every five minutes.

Clusters

When installing Elasticsearch clusters, please note the following:

  • Do not start any further installations until the configuration files have been modified.
  • Before launching the service, enter all Elasticsearch addresses in the elasticsearch.yml configuration files of each Elasticsearch installation:
    • discovery.seed_hosts: ["host1", "host2"]
  • Before launching the service, enter unique names for nodes in the elasticsearch.yml configuration files of each Elasticsearch installation: node.name: nodename1
  • Before launching the service, enter all the nodes in the elasticsearch.yml configuration files of each Elasticsearch installation:
    • cluster.initial_master_nodes: ["node-1", "node-2"]
  • Generate the password using the elasticsearch-set-initial-passwords.bat batch file while the service is running only for the first Elasticsearch installation.
  • Start the first Elasticsearch installation and then each of the other installations.

For more information on configuring clusters, refer to the corresponding documentation from Elasticsearch.

Uninstalling

Use the uninstall program to uninstall Elasticsearch from the installation directory.

Updates

For information on updating components, see Release Information.