Deploy a small installationedit

The type of installation is recommended for development, test, and small-scale use cases. You need:

  • 3 hosts with 128 GB RAM
  • 3 availability zones
A small baseline installation with three hosts across three availability zones

Perform the numbered steps on more than one host, as indicated in the illustration.

Before you startedit
  • This type of installation is not recommended for high-traffic workloads.
  • You must not use spinning disks with small ECE installations, as these are not supported when you run allocators and ECE management services on the same server.
  • Note that the small-size ECE installation keeps the directors and coordinators roles (ECE management services) on the same hosts as your allocators and proxies.
Check the recommended JVM Heap sizes
Service JVM Heap Size (Xms and Xmx)

runner

1 GB

allocator

4 GB

proxy

8 GB

zookeeper

4 GB

director

1 GB

constructor

4 GB

admin-console

4 GB

To know more, see Separation of Roles.

Installation stepsedit
  1. Install Elastic Cloud Enterprise on the first host to start a new installation with your first availability zone. This first host holds all runner roles to help bootstrap the rest of the installation. You must define the memory configurations for each role: "zookeeper":{"xms":"4G","xmx":"4G"}. Otherwise, the default settings will be used.

    bash <(curl -fsSL https://download.elastic.co/cloud/elastic-cloud-enterprise.sh) install
       --availability-zone MY_ZONE-1
       --memory-settings
       '{"runner":{"xms":"1G","xmx":"1G"},
       "allocator":{"xms":"4G","xmx":"4G"},
       "zookeeper":{"xms":"4G","xmx":"4G"},
       "director":{"xms":"1G","xmx":"1G"},
       "constructor":{"xms":"4G","xmx":"4G"},
       "admin-console":{"xms":"4G","xmx":"4G"}}'

    After the installation completes, copy down the coordinator host IP address, user credentials, and roles token information. Keep this information safe.

  2. Generate a new roles token that persists for one hour on the first host, so that other hosts can join your installation with the right role permissions in the next step (referred to as MY_TOKEN). The new token needs to enable all runner roles, which none of the tokens automatically generated by the installation on the first host provide.

    curl -k -H 'Content-Type: application/json' -u admin:PASSWORD https://localhost:12443/api/v1/platform/configuration/security/enrollment-tokens -d '{ "persistent": false, "roles": ["director", "coordinator", "proxy", "allocator"] }'
  3. Install Elastic Cloud Enterprise on a second and third host, placing them into a second and a third availability zone, and assign them the same roles and memory settings as the first host. Make sure you include the coordinator host IP information from Step 1 and the new roles token from Step 2.

    bash <(curl -fsSL https://download.elastic.co/cloud/elastic-cloud-enterprise.sh) install
      --coordinator-host HOST_IP
      --roles-token 'MY_TOKEN'
      --roles "director,coordinator,proxy,allocator"
      --availability-zone MY_ZONE-2
      --memory-settings
      '{"runner":{"xms":"1G","xmx":"1G"},
      "allocator":{"xms":"4G","xmx":"4G"},
      "zookeeper":{"xms":"4G","xmx":"4G"},
      "director":{"xms":"1G","xmx":"1G"},
      "constructor":{"xms":"4G","xmx":"4G"},
      "admin-console":{"xms":"4G","xmx":"4G"}}'
    bash <(curl -fsSL https://download.elastic.co/cloud/elastic-cloud-enterprise.sh) install
      --coordinator-host HOST_IP
      --roles-token 'MY_TOKEN'
      --roles "director,coordinator,proxy,allocator"
      --availability-zone MY_ZONE-3
      --memory-settings
       '{"runner":{"xms":"1G","xmx":"1G"},
       "allocator":{"xms":"4G","xmx":"4G"},
       "zookeeper":{"xms":"4G","xmx":"4G"},
       "director":{"xms":"1G","xmx":"1G"},
       "constructor":{"xms":"4G","xmx":"4G"},
       "admin-console":{"xms":"4G","xmx":"4G"}}'
  4. Change the deployment configuration for the admin-console-elasticsearch, logging-and-metrics, and security clusters to use three availability zones and resize the nodes to use at least 4 GB of RAM. This change makes sure that the clusters used by the administration console are highly available and provisioned sufficiently.
  5. Log into the Cloud UI to provision your deployment.

If necessary, you can scale and deploy a medium installation.