Installing Elasticsearch

yuuvis® RAD 7.x »

Elasticsearch is integrated in yuuvis® RAD for searching.

It includes a linguistic plugin for search optimization as a default in exactly one of the following languages: English, French, German, Spanish, or Italian. This language must be specified.

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. Modify the application-es.yml configuration file located in the \config directory of yuuvis® RAD service-manager.
  8. Enter the address and port of Elasticsearch:

    spring.elasticsearch.rest.uris: '<elasticsearch-IP>:<Port>'

  9. 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 the REST API is required when changes are made:

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

    • CSV separator 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.

    • 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 from the \config directory of yuuvis® RAD service-manager:

      osfts.autocomplete.enabled: false

      The autocomplete index can be created again using the REST API:

      • 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 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 from the \config directory of yuuvis® RAD service-manager:

        osfts.cleanup.bulkSize: 1000

    • 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 from 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 can be specified for the Linguistic plugin. You specify the desired language via the index-prod.yml configuration file located in the \config directory of yuuvis® RAD service-manager.

      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 here to unlock multiple and additional languages.

  10. Start the Elasticsearch service.
  11. Configure Elasticsearch authentication:
    • Run the elasticsearch-set-initial-passwords.bat batch file from the \bin Elasticsearch directory with administrative rights.
    • Open built-in.usr from the \config Elasticsearch directory.
    • Copy the password of the user named 'elastic'.
    • Paste the password into application-es.yml located in the \config directory of yuuvis® RAD service-manager as the password of the user 'elastic': elasticsearch.password: password
    • Save the file and restart the 'indexservice' and 'searchservice' services if necessary.

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.