[PaaS uniquement]{class="badge informative" title="S’applique uniquement aux projets Adobe Commerce on Cloud (infrastructure PaaS gérée par Adobe) et aux projets On-premise."}

Conditions préalables relatives aux moteurs de recherche

Depuis Adobe Commerce 2.4, toutes les installations doivent être configurées pour utiliser Elasticsearch ou OpenSearch comme solution de recherche de catalogue.

NOTE
Ajout de la prise en charge d’OpenSearch dans la version 2.4.4. OpenSearch est un formulaire compatible d’Elasticsearch. Toutes les instructions pour configurer Elasticsearch 7 s’appliquent à OpenSearch. Migration d’Elasticsearch vers OpenSearch fournit des conseils sur le passage à OpenSearch.

Versions prises en charge

Vous devez installer et configurer Elasticsearch ou OpenSearch avant d’installer Adobe Commerce 2.4.4 et versions ultérieures.

Reportez-vous à la section Configuration requise pour obtenir des informations de version spécifiques.

Configuration recommandée

Nous recommandons ce qui suit :

Emplacement d’installation

Les tâches suivantes supposent que vous ayez configuré votre système en fonction du diagramme suivant :

Diagramme Moteur de recherche

Le diagramme précédent montre :

  • L’application Commerce et le moteur de recherche sont installés sur différents hôtes.

    L’exécution sur des hôtes distincts nécessite le fonctionnement d’un proxy. (La mise en cluster du moteur de recherche ne fait pas partie de ce guide, mais vous trouverez plus d’informations dans la documentation sur la mise en cluster d’Elasticsearch.)

  • Chaque hôte possède son propre serveur web ; les serveurs web ne doivent pas nécessairement être les mêmes.

    Par exemple, l’application Commerce peut exécuter Apache et le moteur de recherche nginx.

  • Les deux serveurs web utilisent TLS (Transport Layer Security).

    La configuration de TLS dépasse le cadre de notre documentation.

Les demandes de recherche sont traitées comme suit :

  1. Une requête de recherche d’un utilisateur est reçue par le serveur web Commerce, qui la transmet au serveur du moteur de recherche.

    Vous configurez le moteur de recherche pour qu’il se connecte à l’hôte et au port du proxy. Nous recommandons le port SSL du serveur web (par défaut, 443).

  2. Le serveur web du moteur de recherche (qui écoute sur le port 443) envoie par proxy la requête au serveur du moteur de recherche (par défaut, il écoute sur le port 9200).

  3. L’accès au moteur de recherche est également protégé par l’authentification HTTP de base. Pour qu'une requête atteigne le moteur de recherche, il doit passer par SSL et fournir un nom d'utilisateur et un mot de passe valides.

  4. Le moteur de recherche traite la demande.

  5. Les retours de communication s’effectuent le long du même itinéraire, le serveur web Elasticsearch agissant comme proxy inverse sécurisé.

Conditions préalables

Les tâches décrites dans cette section nécessitent les éléments suivants :

Firewall et SELinux

Les logiciels liés à la sécurité (iptables, SELinux, AppArmor) peuvent être configurés par défaut pour bloquer la communication entre les sous-systèmes. Il serait peut-être bon de les vérifier s'il y a des problèmes.

Configurer des règles pour iptables et SELinux

Pour configurer des règles permettant d’autoriser la communication avec le pare-feu ou SELinux activé, consultez les ressources suivantes :

Installation du kit de développement logiciel Java

Pour déterminer si Java est déjà installé, saisissez la commande suivante :

java -version

Si le message java: command not found s’affiche, vous devez installer Java SDK comme décrit dans la section suivante.

Consultez l’une des sections suivantes :

Installation du JDK sous CentOS

Voir ce tutoriel sur l’océan numérique.

Veillez à installer le JDK et pas l’environnement JRE.

yum -y install java-1.8.0-openjdk
NOTE
La version 8 de Java peut ne pas être disponible pour tous les systèmes d’exploitation. Par exemple, vous pouvez rechercher Ubuntu dans la liste des packages disponibles.

Installation du JDK sur Ubuntu

Pour installer JDK 1.8 sur Ubuntu, saisissez les commandes suivantes en tant qu’utilisateur disposant de droits d’root :

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

Pour d’autres options, consultez la documentation Oracle.

Installation du moteur de recherche

Suivez Installation d’Elasticsearch ou Installation et configuration d’OpenSearch pour connaître les étapes spécifiques à votre plateforme.

Pour vérifier qu’Elasticsearch fonctionne, saisissez la commande suivante sur le serveur sur lequel il est exécuté :

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

Un message similaire au suivant s’affiche :

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

Pour vérifier que OpenSearch fonctionne, saisissez les commandes suivantes :

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

Mise à niveau d’Elasticsearch

Consultez la section Mise à niveau d’Elasticsearch pour obtenir des instructions complètes sur la sauvegarde de vos données, la détection de problèmes de migration potentiels et le test des mises à niveau avant le déploiement en production. Selon la version d’Elasticsearch que vous utilisez, un redémarrage complet du cluster peut être requis.

Elasticsearch nécessite JDK 1.8 ou une version ultérieure. Consultez Installation du kit de développement logiciel Java pour vérifier quelle version du JDK est installée.

Ressources supplémentaires

Voir la documentation Elasticsearch ou OpenSearch.

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