搜索引擎先决条件

从Adobe Commerce 2.4开始,必须将所有安装配置为使用ElasticsearchOpenSearch作为目录搜索解决方案。

NOTE
2.4.4中添加了OpenSearch支持。OpenSearch是兼容的Elasticsearch分支。 有关配置Elasticsearch7的所有说明均适用于OpenSearch。 从Elasticsearch迁移到OpenSearch提供了有关切换到OpenSearch的指导。

支持的版本

在安装Adobe Commerce 2.4.4及更高版本之前,必须安装和配置Elasticsearch或OpenSearch。

有关特定版本信息,请参阅系统要求

推荐的配置

我们建议执行以下操作:

安装位置

以下任务假定您已根据下图配置系统:

搜索引擎关系图

上图显示:

  • Commerce应用程序和搜索引擎安装在不同的主机上。

    在单独的主机上运行需要代理才能正常工作。 (搜索引擎聚类超出了本指南的范围,但您可以在Elasticsearch聚类文档中找到更多信息。)

  • 每台主机都有自己的Web服务器;Web服务器不必相同。

    例如,Commerce应用程序可以运行Apache,而搜索引擎可以运行nginx。

  • 两个Web服务器都使用传输层安全性(TLS)。

    设置TLS超出了我们文档的范围。

搜索请求的处理方式如下:

  1. Commerce Web服务器接收来自用户的搜索请求,并将其转发到搜索引擎服务器。

    您可以配置搜索引擎以连接到代理的主机和端口。 我们建议Web服务器的SSL端口(默认情况下,443)。

  2. 搜索引擎Web服务器(在端口443上侦听)将请求代理到搜索引擎服务器(默认情况下,在端口9200上侦听)。

  3. HTTP基本身份验证进一步保护对搜索引擎的访问。 对于访问搜索引擎的请求,必须通过SSL ​传递,并提供有效的用户名和密码。

  4. 搜索引擎处理请求。

  5. 通信沿同一路径返回,ElasticsearchWeb服务器充当安全反向代理。

先决条件

本节中讨论的任务需要满足以下条件:

防火墙和SELinux

默认情况下,可以将安全相关软件(iptables、SELinux、AppArmor)配置为阻止子系统之间的通信。 检查他们是否有问题可能是一个好主意。

为iptables和SELinux设置规则

要设置规则以允许与启用防火墙或SELinux进行通信,请查阅以下资源:

安装Java软件开发工具包

要确定是否已安装Java,请输入以下命令:

java -version

如果显示消息java: command not found,则必须按照下一节中讨论的内容安装Java SDK。

请参阅以下部分之一:

在CentOS上安装JDK

查看此数字海洋教程

请确保安装JDK和​ 而不是 JRE。

yum -y install java-1.8.0-openjdk
NOTE
Java版本8可能并不适用于所有操作系统。 例如,您可以搜索Ubuntu的可用包列表

在Ubuntu上安装JDK

要在Ubuntu上安装JDK 1.8,请以具有root权限的用户身份输入以下命令:

apt-get -y update
apt-get install -y openjdk-8-jdk

有关其他选项,请参阅Oracle文档

安装搜索引擎

请按照安装Elasticsearch安装和配置OpenSearch执行特定于平台的步骤。

要验证Elasticsearch是否正常工作,请在运行该服务器的服务器上输入以下命令:

curl -XGET '<host>:9200/_cat/health?v&pretty'

将显示类似于以下内容的消息:

epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks
1519701563 03:19:23  elasticsearch green           1         1      0   0    0    0        0             0

要验证OpenSearch是否正常工作,请输入以下命令:

curl -XGET https://<host>:9200 -u 'admin:admin' --insecure
curl -XGET https://<host>:9200/_cat/plugins?v -u 'admin:admin' --insecure

升级Elasticsearch

有关在部署到生产环境之前备份数据、检测潜在的迁移问题和测试升级的完整说明,请参阅升级Elasticsearch。 根据您当前的Elasticsearch版本,可能需要也可能不需要完全重新启动群集。

Elasticsearch需要JDK 1.8或更高版本。 请参阅安装Java软件开发工具包以检查安装的JDK版本。

其他资源

请参阅ElasticsearchOpenSearch文档。

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995