このドキュメントは更新され、Liferay Learn に移行されました。こちらでは管理されなくなりました。
デフォルトでは、Liferay DXP 7.2とその組み込みElasticsearchエンジンは同じJVMで動作します。これにより、すぐに検索ができるようになりますが、開発環境のみサポートされます。本番環境で使用する場合、Elasticsearchを別のJVMで実行する必要があります。リモートElasticsearchクラスタのインストールについては、インストールガイドをご参照ください。
検索エンジンはキャッシュの恩恵を大きく受けるため、そのJVMのメモリプロファイルは、Liferay DXPを実行しているJVMとは大きく異なります。そのため、本番環境では2つのアプリケーションを常に分離しておく必要があります。
以下のセクションでは、Liferay DXP 7.2のElasticsearch構成の概要を説明します。 デプロイの前に、本番環境でのデプロイに関するElasticのドキュメント を読むことを強くお勧めします。
導入のサイジング
Elasticsearchの導入サイズを決める際には、CPU、メモリ、ディスク、ネットワークの容量を慎重に検討してください。 効率的にスケールさせ、多くのマシンを使用しないようにするには、Elasticsearchを中規模から大規模のマシン(例えば、2~8CPUのマシン)に導入します。 同じオペレーティングシステム上で複数のElasticsearch JVMを実行することは避けてください。
CPU
Elasticsearch JVMが1つだけ稼働していると仮定して、少なくとも合計8つのCPUコアをElasticsearchエンジンに割り当てることをお勧めします。
メモリ
Liferayでは、JVMのヒープ設定 (xmx、xms など) のために少なくとも16GB以上のメモリ、可能であれば64GBのメモリ割り当てが推奨されます。メモリの割り当ては、インデックス データの量によって異なります。インデックスサイズが 500GB~1TB の場合、Elasticsearchのヒープメモリは 64GB あれば適切に動作するのに十分です。
ディスク
検索エンジンはインデックスをディスク上に保存するため、ディスクI/O容量が検索パフォーマンスに影響します。可能な限りSSDにElasticsearchを導入してください。そうでない場合は、高パフォーマンスの従来型ハードディスク(15k RPMなど)を使用してください。いずれの場合も、RAID 0の使用を検討してください。
ネットワークのオーバーヘッドが大きくなる可能性があるため、可能な限りネットワーク接続ストレージ(NAS)の使用は避けてください。Amazon Web Servicesのようなパブリッククラウドインフラを使用している場合は、Elastic Block Store(EBS)のようなネットワークストレージではなく、インスタンスのローカルストレージを使用します。
インデックスの合計サイズより25%多いディスク容量を確保します。インデックスが 60GB の場合、少なくとも 75GB のディスク容量を確保してください。必要なディスク容量を見積もるには、本番コンテンツの代表的なサンプルをインデックス化し、そのサイズに本番コンテンツに占める割合を掛けます。例えば、本番コンテンツの25%をインデックス化し、そのインデックスサイズを4倍にします。1MBのファイルにインデックスを作成しても、検索インデックスに1MBのスペースができるわけではないことに注意してください。
クラスターサイズ
Liferay DXPは1ノードまたは2ノードで構成されるElasticsearchクラスタで動作しますが、Elastic社がフォールトトレランスのために推奨する最小クラスタサイズは3ノードです。
ネットワーキング
Elasticsearchは、高速で正確な検索結果を提供するためにクラスタリングとシャーディングに依存しているため、高速で信頼性の高いネットワークが必要です。ほとんどの最新のデータセンターでは、マシン間に1GbEまたは10GbEを提供しています。