Liferay DXP Elasticsearch Connectors: Technical Data Sheet

Introduction

This article extends the Compatibility Matrix to provide technical information about Liferay's Elasticsearch connectors.

Notes on Liferay Enterprise Search (LES)
The LES connectors are omitted from this article as they are not server connectors: they do not instantiate clients to communicate with Elasticsearch nodes, but rather extend the capabilities of our Elasticsearch connectors.

DXP Patch Levels & Marketplace Versions
The information below always applies to the latest available DXP versions (Fix Pack level or Marketplace version) unless indicated otherwise. The article will be updated as changes are required.
Here are the latest available versions:

  • DXP 7.2 FP7
  • DXP 7.1 FP18
  • DXP 7.0 FP93
  • Liferay Connector to Elasticsearch 7 v3.0.1 (for DXP 7.2)
  • Liferay Connector to Elasticsearch 6 v1.1.0 (for DXP 7.0)
    Latest Update: August 24, 2020

Table of Contents

DXP 7.3

The information below is subject to change and reflects the current development status. This section will be updated with the release of Liferay DXP 7.3 GA1. 

Name Availability Fix/Support Fix Delivery Method Elasticsearch Client Type* Elasticsearch Client Lib Version** Communication Protocol Supports Secure Connection (TLS/SSL, user authentication) Supported Elasticsearch Version*** Operation Modes JVM Requirement****
Liferay Connector to Elasticsearch 7
Bundled (default) Fix Pack/Hotfix REST Client (Java) 7.9.0 HTTP Yes, out-of-the-box (HTTPS) 7.9+ SIDECAR, REMOTE No

 

* We mostly use the High Level REST Client, however, there are some currently unimplemented features that DXP needs so we obtain the Low Level REST Client from the High-Level client to build the necessary JSON for the requests.

** Refers to the client library versions the connector uses as dependencies at compile time. This also defines the version of the Elasticsearch server started in EMBEDDED mode when the portal first starts and the connector is not yet configured for REMOTE mode.

*** From Elastic's documentation:

"The High Level Client is guaranteed to be able to communicate with any Elasticsearch node running on the same major version and greater or equal minor version. It doesn’t need to be in the same minor version as the Elasticsearch nodes it communicates with, as it is forward compatible meaning that it supports communicating with later versions of Elasticsearch than the one it was developed for."

Regarding the Low Level Client, Elastic's documentation states that "it is compatible with all Elasticsearch versions".

**** The Java REST Client communicates with Elasticsearch over HTTP. This communication protocol does not require Java serialization between DXP and Elasticsearch as opposed to the previous Transport Client-based connectors. Your Elasticsearch nodes can run on different JVM than what your DXP deployment is using.

DXP 7.2

Name Availability Fix/Support Fix Delivery Method Elasticsearch Client Type Elasticsearch Client Lib Version* Communication Protocol Supports Secure Connection (TLS/SSL, user authentication) Recommended Elasticsearch Version** Operation Modes JVM Requirement***
Liferay Connector to Elasticsearch 6 Bundled (default) Fix Pack/Hotfix Transport Client (Java) 6.8.6 Transport level Yes, through the Connector to X-Pack Security (v3.x)**** 6.8.x EMBEDDED, REMOTE Yes
Liferay Connector to Elasticsearch 7 Marketplace (v3.x) Marketplace release/Hotfix LPKG Transport Client (Java) 7.3.0 Transport level Yes, out-of-the-box (doc) 7.3.x-7.8.x EMBEDDED, REMOTE Yes

 

* Refers to the client library versions the connector uses as dependencies at compile time. This also defines the version of the Elasticsearch server started in EMBEDDED mode when the portal first starts and the connector is not yet configured for REMOTE mode.

** Liferay conducts ad-hoc testing of the Elasticsearch connectors with minor releases of Elasticsearch. These minor releases sometimes introduce breaking changes at the low-level Java API. Therefore, both Liferay and Elastic recommend that the version of the server and the clients match. Elastic says:

"The client must have the same major version (e.g. 2.x, or 5.x) as the nodes in the cluster. Clients may connect to clusters which have a different minor version (e.g. 2.3.x) but it is possible that new functionality may not be supported. Ideally, the client should have the same version as the cluster."

*** The Transport Client relies on Java serialization. Because of this, the Major version and the Vendor of the JVM used by DXP and Elasticsearch must be the same. If Subscription Services' investigation determines that the root cause of the issue is related to a JDK mismatch, then Subscription Services will be limited in resolving the issue.

**** Requires Liferay Enterprise Search (LES) subscription.

DXP 7.1

Name Availability Fix/Support Fix Delivery Method Elasticsearch Client Type Elasticsearch Client Lib Version* Communication Protocol Supports Secure Connection (TLS/SSL, user authentication) Recommended Elasticsearch Version** Operation Modes JVM Requirement***
Liferay Connector to Elasticsearch 6 Bundled (default) Fix Pack/Hotfix Transport Client (Java) 6.5.0 Transport level Yes, through the Connector to X-Pack Security (v2.x)**** 6.5.x-6.8.x EMBEDDED, REMOTE Yes

 

* Refers to the client library versions the connector uses as dependencies at compile time. This also defines the version of the Elasticsearch server started in EMBEDDED mode when the portal first starts and the connector is not yet configured for REMOTE mode.

** Liferay conducts ad-hoc testing of the Elasticsearch connectors with minor releases of Elasticsearch. These minor releases sometimes introduce breaking changes at the low-level Java API. Therefore, both Liferay and Elastic recommend that the version of the server and the clients match. Elastic says:

"The client must have the same major version (e.g. 2.x, or 5.x) as the nodes in the cluster. Clients may connect to clusters which have a different minor version (e.g. 2.3.x) but it is possible that new functionality may not be supported. Ideally, the client should have the same version as the cluster."

*** The Transport Client relies on Java serialization. Because of this, the Major version and the Vendor of the JVM used by DXP and Elasticsearch must be the same. If Subscription Services' investigation determines that the root cause of the issue is related to a JVM mismatch, then Subscription Services will be limited in resolving the issue.

**** Requires Liferay Enterprise Search (LES) subscription.

DXP 7.0

Name Availability Fix/Support Fix Delivery Method Elasticsearch Client Type Elasticsearch Client Lib Version* Communication Protocol Supports Secure Connection (TLS/SSL, user authentication) Recommended Elasticsearch Version** Operation Modes JVM Requirement***
Liferay Portal Search Elasticsearch Bundled (default) Fix Pack/Hotfix Transport Client (Java) 2.4.0 Transport level Yes, through the Shield plugin**** 2.4.x EMBEDDED, REMOTE Yes
Liferay Connector to Elasticsearch 6 Marketplace (v1.x) Marketplace release/Hotfix LPKG Transport Client (Java) 6.5.0 Transport level Yes, through the Connector to X-Pack Security (v1.x)**** 6.5.x-6.8.x EMBEDDED, REMOTE Yes

 

* Refers to the client library versions the connector uses as dependencies at compile time. This also defines the version of the Elasticsearch server started in EMBEDDED mode when the portal first starts and the connector is not yet configured for REMOTE mode.

** Liferay conducts ad-hoc testing of the Elasticsearch connectors with minor releases of Elasticsearch. These minor releases sometimes introduce breaking changes at the low-level Java API. Therefore, both Liferay and Elastic recommend that the version of the server and the clients match. Elastic says:

"The client must have the same major version (e.g. 2.x, or 5.x) as the nodes in the cluster. Clients may connect to clusters which have a different minor version (e.g. 2.3.x) but it is possible that new functionality may not be supported. Ideally, the client should have the same version as the cluster."

*** The Transport Client relies on Java serialization. Because of this, the Major version and the Vendor of the JVM used by DXP and Elasticsearch must be the same. If Subscription Services' investigation determines that the root cause of the issue is related to a JDK mismatch, then Subscription Services will be limited in resolving the issue.

**** Requires Liferay Enterprise Search (LES) subscription.

Este artigo foi útil?
Utilizadores que acharam útil: 0 de 0