Pré-requisitos do mecanismo de pesquisa
A partir do Adobe Commerce 2.4, todas as instalações devem ser configuradas para usar Elasticsearch ou OpenSearch como a solução de pesquisa de catálogo.
Versões compatíveis
Você deve instalar e configurar o Elasticsearch ou o OpenSearch antes de instalar o Adobe Commerce 2.4.4 e versão posterior.
Consulte os Requisitos do Sistema para obter informações sobre a versão específica.
Configuração recomendada
Recomendamos o seguinte:
Local de instalação
As tarefas a seguir pressupõem que você configurou o sistema de acordo com o diagrama a seguir:
O diagrama anterior mostra:
-
O aplicativo Commerce e o mecanismo de pesquisa são instalados em hosts diferentes.
A execução em hosts separados requer proxy para funcionar. (A organização por clusters do mecanismo de pesquisa está fora do escopo deste guia, mas você pode encontrar mais informações na documentação sobre organização por clusters de Elasticsearch.)
-
Cada host tem seu próprio servidor da Web; os servidores da Web não precisam ser iguais.
Por exemplo, o aplicativo Commerce pode executar o Apache e o mecanismo de pesquisa pode executar o nginx.
-
Ambos os servidores da Web usam o protocolo TLS.
A configuração do TLS está fora do escopo de nossa documentação.
As solicitações de pesquisa são processadas da seguinte maneira:
-
Uma solicitação de pesquisa de um usuário é recebida pelo servidor Web do Commerce, que a encaminha para o servidor do mecanismo de pesquisa.
Você configura o mecanismo de pesquisa para se conectar ao host e à porta do proxy. Recomendamos a porta SSL do servidor Web (por padrão, 443).
-
O servidor Web do mecanismo de pesquisa (escutando na porta 443) faz proxy da solicitação para o servidor do mecanismo de pesquisa (por padrão, ele escuta na porta 9200).
-
O acesso ao mecanismo de pesquisa é protegido ainda mais pela autenticação básica HTTP. Para uma solicitação para acessar o mecanismo de pesquisa, ela deve viajar pelo SSL e, fornecer um nome de usuário e senha válidos.
-
O mecanismo de pesquisa processa a solicitação.
-
A comunicação retorna ao longo da mesma rota, com o servidor Web Elasticsearch agindo como um proxy reverso seguro.
Pré-requisitos
As tarefas discutidas nesta seção exigem o seguinte:
Firewall e SELinux
O software relacionado à segurança (iptables, SELinux, AppArmor) pode ser configurado por padrão para bloquear a comunicação entre subsistemas. Talvez seja uma boa ideia verificá-los se há problemas.
Configurar regras para iptables e SELinux
Para configurar regras para permitir a comunicação com o firewall ou o SELinux ativado, consulte os seguintes recursos:
Instalar o kit de desenvolvimento de software Java
Para determinar se o Java já está instalado, digite o seguinte comando:
java -version
Se a mensagem java: command not found
for exibida, você deverá instalar o SDK do Java, conforme discutido na próxima seção.
Consulte uma das seguintes seções:
Instalar o JDK no CentOS
Veja este Tutorial sobre o Oceano Digital.
Certifique-se de instalar o JDK e não o JRE.
yum -y install java-1.8.0-openjdk
Instalar o JDK no Ubuntu
Para instalar o JDK 1.8 no Ubuntu, insira os seguintes comandos como um usuário com privilégios root
:
apt-get -y update
apt-get install -y openjdk-8-jdk
Para outras opções, consulte documentação do Oracle.
Instalar o mecanismo de pesquisa
Siga Instalando o Elasticsearch ou Instalar e configurar o OpenSearch para as etapas específicas da sua plataforma.
Para verificar se o Elasticsearch está funcionando, digite o seguinte comando no servidor em que ele está sendo executado:
curl -XGET '<host>:9200/_cat/health?v&pretty'
Uma mensagem semelhante à seguinte é exibida:
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
Para verificar se o OpenSearch está funcionando, insira os seguintes comandos:
curl -XGET https://<host>:9200 -u 'admin:admin' --insecure
curl -XGET https://<host>:9200/_cat/plugins?v -u 'admin:admin' --insecure
Atualizando o Elasticsearch
Consulte Atualizando o Elasticsearch para obter instruções completas sobre como fazer backup de seus dados, detectar possíveis problemas de migração e testar atualizações antes de implantar na produção. Dependendo da sua versão atual do Elasticsearch, uma reinicialização completa do cluster pode ou não ser necessária.
O Elasticsearch exige o JDK 1.8 ou superior. Consulte Instalar o Java Software Development Kit para verificar qual versão do JDK está instalada.
Recursos adicionais
Consulte a documentação do Elasticsearch ou do OpenSearch.