Hardware profiles optimize components of the Elastic Stack, such as Elasticsearch nodes and Kibana instances, for a number of general uses. Compared to the stand-alone installation process of deploying the Elastic Stack, profiles provide much greater flexibility and they ensure that your deployment already has the resources it needs. Profiles are also flexible: Not only can you select a profile that fits your purpose, but you can customize each component of the Elastic Stack with a just few additional clicks.
The components of the Elastic Stack that we support as part of a deployment are called instances and include:
- Elasticsearch data, ingest, and master nodes
- Kibana instances
- Machine learning (ML) nodes
- Application Performance Monitoring (APM) Server instances
To address each use case, hardware profiles combine these components of the Elastic Stack in different ways according to tried-and-true best practices that you can trust. For example: In a deployment using hot and warm data tiers, which typically solves a log aggregation use case, you need at least one Elasticsearch hot node with recent data and one warm node with read-only indices for older, less frequently queried data. A real hot-warm architecture in a production environment also needs to be fault tolerant, so that it is highly available. To support these requirements, our solutions include hot and warm nodes spread across two availability zones, come with Kibana enabled and ready to use, and even pre-wire machine learning in case you want to enable machine learning for anomaly detection later on.
Elastic Cloud Enterprise comes with some hardware profiles already built in, but you can create new deployment templates to address a particular use case you might have. To make the most out of your hardware, we also recommend that you configure deployment templates, so that ECE knows where to deploy components of the Elastic Stack.
For instances to run well when they are used in your Elastic Cloud Enterprise deployment, they need the right hardware that supports their intended purpose. For that, Elastic Cloud Enterprise uses instance configurations. Instance configurations match the Elastic Stack components to allocators for deployment, and indicate how memory and storage resources get sized relative to each other, and what sizes are available. For example: If you have a logging use case that needs lots of storage space, you probably want your instance configuration to use at least some storage with large spindle drives rather than fast but more expensive SSD storage.
To determine where ECE should place specific components of the Elastic Stack for deployment, instance configurations match suitable allocators by filtering for tags with queries. You can edit instance configurations to change what allocators get matched by the queries, which in turn changes what components of the Elastic Stack get hosted on matching allocators when creating or changing a deployment.