Prerequisites

We want your experience with Elastic Cloud Enterprise to be a success, so we compiled a list of tried-and-tested prerequisites that will help you install and run our software successfully. To make it easier to look through these prerequisites, we separated them into sections for hardware, software, users, and networking.

Hardware

The following hardware specifications for host machines work well with Elastic Cloud Enterprise:

Memory: At least 8 GB of RAM, 64 GB or more preferred

Storage:

For allocators handling user requests: Enough storage to support the RAM-to-storage ratio. For example, if you use a host with 16 GB of RAM and the default ratio of 1:32, provide 512 GB of disk space.

For hosts that will hold other runner roles, such as coordinators, directors and proxies: At least 10 GB of disk space.

Amazon Linux is not currently supported. If you attempt to install Elastic Cloud Enterprise on Amazon Linux, installation will likely fail with an error.

Linux kernel 3.10 or higher

Docker 1.11

File system:

We recommend that you use XFS, but any file system that supports the OverlayFS storage driver used by Docker can be used.

XFS is required if you want to use disk space quotas for Elasticsearch data directories.

On RHEL and CentOS, XFS file systems must be created with the -n ftype=1 option to make sure they can work with the OverlayFS storage driver used by Docker.

If SELinux is enabled: Your SELinux configuration must allow mounting Docker sockets into containers (required for cluster management to work)

Elastic Cloud Enterprise is certified for Linux kernel 3.10 or higher and Docker 1.11. The latter is the only version of Docker Elastic recommends.

If you intend to use Docker 1.12 or higher, please note:

You should avoid Linux kernel version 4.4 or lower, as there is a known issue with kernel memory (kmem) accounting.

You should disable kernel memory accounting for all memory cgroups by passing the cgroup.memory=nokmem parameter to the kernel at boot time.

While Elastic Cloud Enterprise may work with these Docker and kernel versions, it has not been thoroughly tested with them and might have issues. Elastic will attempt to support Elastic Cloud Enterprise running Docker version 1.12 or higher and kernel version 4.5 or higher, but we might not be able to resolve issues related to these configurations. In such cases, you will be asked to move to a certified kernel and Docker version, so that Elastic can support you.

Users

The following users and permissions are required:

To prepare your environment: A user with sudo permissions, such as the elastic user included with our AWS AMIs or the ubuntu user provided on Ubuntu.

To install Elastic Cloud Enterprise: A user who is part of the docker group. You should not install Elastic Cloud Enterprise as the root user.

In this example, the user elastic belongs to both the sudo and the docker groups.

Networking

The first host you install Elastic Cloud Enterprise on initially requires the ports for all roles to be open, which includes the ports for the coordinator, allocator, director, and proxy roles. After you have brought up your initial Elastic Cloud Enterprise installation, only the ports for the roles that the initial host continues to hold need to remain open.

The following networking or internet access is required for Elastic Cloud Enterprise:

Internal components of Elastic Cloud Enterprise require inbound traffic open on the following ports:

Host role

Inbound ports

Purpose

Coordinator

8764

Services forwarder for the administration console

Coordinator

22191-22195

Connections to initial coordinator from allocators and proxies (for up to five coordinators)

Director

12191-12301, 12898-12908, 13898-13908

ZooKeeper stunnels (typically up to five)

Director

2112

ZooKeeper ensemble discovery/joining

Allocator

18000-20000

Elasticsearch (HTTP and transport)

A typical ECE installation should be contained within a single data center. We recommend that Elastic Cloud Enterprise installations not span different data centers, due to variations in networking latency and bandwidth that cannot be controlled.

Installation of Elastic Cloud Enterprise across multiple data centers might be feasible with sufficiently low latency and high bandwidth, with some restrictions around what we can support. Based on our experience with our hosted Elastic Cloud service, the following is required:

A typical network latency between the data centers of less than 10ms round-trip time during pings

A network bandwidth of at least 10 Gigabit

If you choose to deploy a single ECE installation across multiple data centers, you might need to contend with additional disruptions due to bandwidth or latency issues. Both ECE and Elasticsearch are designed to be resilient to networking issues, but this resiliency is intended to handle exceptions and should not be depended on as part of normal operations. If Elastic determines during a support case that an issue is related to an installation across multiple data centers, the recommended resolution will be to consolidate your installation into a single data center, with further support limited until consolidation is complete.