Liferay DXPとElastic Cloud上でホストされているElasticsearchとの互換性

Elastic Cloud (EC)では、Elastic StackをマネージドサービスとしてホスティングするElasticsearchサービスを提供しています。 Liferayではクラウドベースのデプロイの需要が高まっていることから、Elastic Cloud上でホストされているLiferay DXPとElasticsearchの互換性についての情報を提供するために、この記事を作成しました。

目次

はじめに

この記事では、Liferay DXPとElastic Cloudの互換性について取り上げています。 Elastic Cloudには、Elastic Stack for Liferay DXPをElastic Cloudでホスティングする際に考慮すべき追加のの制限や既知の問題があります。

Elasticsearchサービスで利用可能な ユーザー設定 を参照し、Elastic Cloudで利用可能なElasticsearch設定やElasticsearchベースの機能とLiferay DXPで要求される機能が競合していないことを確認するために、Liferay DXPのドキュメントを確認してください。 Liferay DXPのユースケースによっては、Elastic Cloudでは利用できない設定や機能が必要になる場合があります。

Liferay Enterprise Search加入者: ここに記載されているように 、Liferay Enterprise SearchはElastic Cloudサービスのライセンス契約をElastic社と締結していません。

環境 - DXP 7.3

  • Liferay DXP 7.3
  • Elastic Stack 7.xはElastic Cloud上でホスティングされています。

結論 - DXP 7.3

DXP 7.3にデフォルトでバンドルされるElasticsearch 7コネクタは、HTTP*でElasticsearchと通信するJava REST Client を使用します。 この通信プロトコルは、DXPとElasticsearchの間でJavaのシリアライズを必要としません。 そのため、Liferay DXP 7.3のデプロイメントでは、Elasticsearchサービスが互換性のあるバージョンを使用している限り、Elastic Cloud上でホストされているElasticsearchに接続することができます。 互換性マトリックスはLiferay DXP 7.3のリリースと同時に利用可能になります。

環境 - DXP 7.0-7.2

  • Liferay DXP 7.0-7.2
  • Elastic CloudでホスティングされたElastic Stack 6.xと7.x

結論 - DXP 7.0-7.2

Liferayは、Javaのバージョンの不一致の可能性があるため、Elastic Cloud上でホストされているDXPとElasticsearchの互換性を保証することができません。

互換性に影響する3つの要因があり、Elastic StackをECに移行することを決定する前に考慮する必要があります。

  1. Elasticsearch バージョンの互換性: お使いの DXP バージョンの 互換性マトリックス には、Elasticsearch を含むサポートされている技術とそのバージョンがリストアップされています。 つまり、EC内のElasticsearchサービスは、互換性マトリックスに表示されているバージョンを使用している必要があります。
  2. トランスポートレイヤ通信: 上記のDXPバージョンで利用可能なLiferayのElasticsearchコネクタは、 Java Transport Client を使用してElasticsearchノードと通信します。 ECはTransport層上の接続をサポートしていないとLiferayのElasticsearchコネクタはElasticsearchノードに接続できません。
  3. Java互換性: 検索エンジンのインストール入門で述べたように、ElasticsearchとLiferay DXPは同じJavaバージョンとディストリビューションを使用しなければなりません。 これは、トランスポートクライアントがJavaのシリアライゼーションに依存しているからです。 私たちのテスト(2020年7月に実施)によると、ECのElasticsearch 6.8.10と7.7.1のサービス(とその下のElasticsearch Dockerイメージ)では、OpenJDK 64-bitを採用しています。0.1 7互換性マトリックスによると、Liferay DXPの認定バージョンではないを採用しています。

免責事項:Liferayサポートへの問題報告

Liferay DXPとElasticsearchの問題をLiferayサポートに報告する際には、通常の情報(Liferay DXPのパッチレベル、コネクタのバージョンと設定ファイル、Elasticsearch/Kibanaのバージョンと設定ファイル( elasticsearch.ymlkibana.yml; JDKのバージョンなど)また、Elastic Cloudを使用していることをチケットに明記してください。

Subscription Services の調査により、問題の根本原因が JDK の不一致に関連していると判断された場合、Subscription Services は、問題解決のための制限を受けることになります。

Elastic Cloud上のElasticsearchサービスのJDKバージョンを見つけるには?

この情報は、KibanaのDev Toolsコンソールから取得することができます。

リクエスト.
GET _nodes
応答JSONの関連スニペット:
"jvm" : {
"pid" : 572,
"version" : "14.0.1",
"vm_name" : "OpenJDK 64-Bit Server VM",
"vm_version" : "14.0.1+7",
"vm_vendor" : "AdoptOpenJDK",
"bundled_jdk" : true,
"using_bundled_jdk" : true,
"start_time_in_millis" : 1594278093230,
"mem" : {
"heap_init_in_bytes" : 2147483648,
"heap_max_in_bytes" : 2147483648,
"non_heap_init_in_bytes" : 7667712,
"non_heap_max_in_bytes" : 0,
"direct_max_in_bytes" : 0
},

Liferay DXPを設定してElastic Cloud上のElasticsearchに接続するには?

設定例については、この の記事を参照してください。


* Liferay DXPで利用可能なElasticsearchコネクタの技術的な概要については、この記事を参照してください。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています