Why use Elasticsearch?

Elasticsearch will help you to maximize the speed of full-text search in tickets, contacts and knowledgebase articles. Fulltext search in big Mysql database can overpower your DB for few minutes. With Elasticsearch, you will get the same results in milliseconds.

How to install Elasticsearch

Please install Elasticsearch version 7.16.1 or higher but lower than version 8. This applies to current LiveAgent version, older LiveAgent versions worked with Elasticsearch 6.x.

1. Install Elasticsearch service on your server. Each operating system has different installation steps and these are described in the official Elasticsearch knowledgebase. Please ask your server admin to do the installation.

2. Default configuration values work fine for low traffic websites and a low number of indexed tickets. For higher loads, let's try to use additional settings in elasticsearch.yml.

Please understand, that the actual configuration depends on your hardware and might be different than what we recommend here. This is our recommended configuration for Elasticsearch 7.16:

# Auto-created indices needed by LiveAgent 
action.auto_create_index: ".watches,.triggered_watches,.watcher-history-*,+la_perf_pagevisit_v*,-*"

# Prevent swapping on Linux systems
# https://www.elastic.co/guide/en/elasticsearch/reference/master/setup-configuration-memory.html#bootstrap-memory_lock
bootstrap.memory_lock: true

# The max size of the field data cache % of node heap space
indices.fielddata.cache.size:  10%

# The field data circuit breaker allows Elasticsearch to estimate the amount of
# memory a field will require to be loaded into memory
indices.breaker.fielddata.limit: 40%

# The request circuit breaker allows Elasticsearch to prevent per-request data
# structures (for example, memory used for calculating aggregations during a request)
# from exceeding a certain amount of memory.
indices.breaker.request.limit: 20%

Don't forget to restart Elasticsearch service once you modified your config.


3. Once your Elasticsearch service is running, open LiveAgent configuration and activate Elasticsearch settings (visible for downloadable licenses only). By default the Elastic Server binds to localhost and uses port 9200, so if you haven't changed this then just click the "Enable elasticsearch" button.


4. Click the 'reindex all' link and confirm your choice by clicking yes in the dialog which shows up. Tickets, customers and knowledgebase articles are indexed on the background and the time until everything is indexed depends on your database size. It can range from a few minutes to few hours. Search might not work correctly until everything is indexed.

If you refresh the "Elastic Search" screen after a while by clicking   and you see the number of indexed entries, that means, the indexing has been finished.