This article talks about solutions for issues caused by incorrect Elasticsearch (ES) installation and configuration.
On Adobe Commerce on cloud infrastructure please note that service upgrades cannot be pushed to the Production environment without 48 business hours' notice to our infrastructure team. This is required as we need to ensure that we have an infrastructure support engineer available to update your configuration within a desired timeframe with minimal downtime to your production environment. So 48 hours prior to when your changes need to be on production submit a support ticket detailing your required service upgrade and stating the time when you want the upgrade process to start.
Elasticsearch version compatibility with Adobe Commerce
- Adobe Commerce on-premises and Adobe Commerce on cloud infrastructure:
- Magento Open Source v2.3.0+ supports ES 5.x and 6.x (but 6.x is recommended).
The following symptoms indicate Elasticsearch is not configured correctly:
Error: No alive nodes in your cluster- this error can appear in Adobe Commerce logs:
- or in the prompt (when you run a reindex, for example)
- Errors indicating that the Elasticsearch version is not compatible with your current version of Adobe Commerce (this is an Adobe Commerce on cloud infrastructure specific error):
[YYYY-MM-DD HH:MM:SS] CRITICAL: Fix configuration with given suggestions: - Elasticsearch version #<version> is not compatible with current version of magento Upgrade elasticsearch version to ~5.0
Where version is the Elasticsearch Service running on the cloud environment.
Elasticsearch is not installed properly. This could be due to:
- A typo in the configuration file.
- A version in the configuration file that does not match any version of Elasticsearch that is installed for the environment.
- A version that is correctly installed in the environment, correctly configured in the configuration file, but is not a supported version for the currently installed version of Adobe Commerce.
To correctly set up Elasticsearch:
- Merchants on Adobe Commerce on cloud infrastructure can follow the steps in our developer documentation: Set up Elasticsearch service.
- Merchants on Adobe Commerce on-premises and Magento Open Source can follow the steps in our developer documentation: Install and configure Elasticsearch.
After you have set up Elasticsearch, check that it's configured correctly:
- Log in to your server.
- Check the version number of Elasticsearch (2.x, 5.x, or 6.x) in the output of running the command:
curl -XGET <Elasticsearch hostname>:<Elasticsearch server port>For example, in Adobe Commerce on cloud infrastructure:
curl -XGET localhost:9200
- Check what is configured in Adobe Commerce on cloud infrastructure Configuration by running the command:
php bin/magento config:show catalog/search
catalog/search/engineand ensure it matches with the Elasticsearch version number. For example, in Adobe Commerce on cloud infrastructure:
- ElasticSearch 5.X - elasticsearch5
- ElasticSearch 6.X - elasticsearch6
- ElasticSearch 2.X - elasticsearch
index_prefix. If you have several environments, make sure you have different
index_prefixvalues for them.