Elasticsearch for AWS

Elasticsearch for Magento

Important! Normally aMiSTACX attempts to future-proof our stacks. For example, we have included PHP 7.3 every since Magento ® was still on CE 2.1.x and PHP 7.1. This makes it easier for you to upgrade Magento, and switch PHP versions at some future point without having to know how to install or configure PHP. Even today, our new stacks have PHP 7.4 and even some have MySQL 8 as options for development, testing, and future support.

That said, we attempted to provide the Elasticsearch service as a disabled option for future testing and support purposes. Most stacks have version 7.4.x; however, Magento currently only supports version 6.x. Due to the resource intensive nature of ES, it has been decided to drop Elasticsearch as a universal feature, and only offer a fully configured version on the new aMiSTACX G5s, and also as a stand-alone G4 instance. This is because at a minimum a t3-large is required for a LAMP/LEMP stack. Additionally, a complete redesign of the entire stack was also required to handle the additional Magento/ES resource constraints.

Magento works fine with MySQL as the default catalog engine, and has done so for many years. Although, now we are at a point where t3-smalls are the default EC2 class, because Magento has grown in size and resource requirements, and running on a t-micro is not feasible.

You are free to install or configure Elasticsearch on any aMiSTACX stack; however, only the below stacks will be officially supported for ES by aMiSTACX as they have been specifically designed and tested to work without issue.

December, 2019 : Santa has arrived early this year, and aMiSTACX is happy to announce our new G4 stack for Elasticsearch ®, and our new G5 stacks featuring Elasticsearch 6.8.x.

The Elasticsearch 6.8.5 LAP is turnkey and ready to go; however, there are a few items you will need to do for proper functionality with Magento. Please reference the stack guide for more information.

1. You need to set the AWS private IP [NOT Public IP] for ES to listen on.

2. You need to point Magento to the private IP and set the search engine to Elasticsearch 6+. [Live Luma demo here pointing to an ES server.]

3. You need to put both servers in the same AWS availability zone for optimal performance, and restrict inbound and outbound traffic to TCP 9200 via the AWS security groups.

Note: If you require encryption, you will need to enable the http_proxy module, and set up an Apache reverse proxy and have a valid TLS certificate. This is beyond the scope of this article. Perhaps in the future we will include this as an option.


Elasticsearch ® is a trademark of Elasticsearch B.V.
Magento ® is a trademark of Magento Inc.

Comments are closed.