Enable external elasticsearch server

Add this lines to nuxeo.conf. 

#elasticsearch nodes addresses
elasticsearch.addressList=localhost:9300
# Remote elasticsearch cluster name to join.
elasticsearch.clusterName=elasticsearch
# Name of the Elasticsearch index for the default document repository
elasticsearch.indexName=nuxeo
# Number of replicas (not for embedded mode)
elasticsearch.indexNumberOfReplicas=1

Change localhost to address(es) of the elasicsearch servers.

Enable  elasticsearch for casebrowser fulltext search

add pi_query_search to the list of overrided pageproviders.

Values listed in elasticsearch.override.pageproviders will give new alias names to  ElasticSearchNxqlPageProvider and this provider will be returned by PageProviderService if one of the alias names will be provided in it.

pi_query_search is our custom page provider name  which is used only in PiDocumentPaginatedQuery when it is called with elasticsearch=true flag. Now PiDocumentPaginatedQuery is called with elasticsearch=true flag only for fulltext searches (yellow search box and search window). In all other cases PiDocumentPaginatedQuery with elasticsearch=false or original DocumentPaginatedQuery is called.

PiDocumentPaginatedQuery with elasticsearch=false and DocumentPaginatedQuery works in absolutely same way.

default_search is a default value of elasticsearch.override.pageproviders so we have to leave it in the list when uncommenting

 
elasticsearch.override.pageproviders=default_search,pi_query_search