Air-gapped install with a private Docker registry
ECE
Installing ECE on multiple hosts with your own registry server is simpler, because you do not have to load the Docker images on each host.
Set up your private Docker registry. To learn more, check Deploy a registry server.
TipAs part of the ECE high availability strategy, it’s a good idea to make sure that your Docker registry server is available to all ECE allocators, so that it can continue to be accessed in the event of a network partition or zone outage. Allocators attempting to start instances requiring Docker images that have not yet been pulled from a custom Docker registry will fail to start if the registry is unavailable.
On an internet-connected host with Docker installed, download the Docker images required by the Elastic Cloud Enterprise version you want to install. Refer to available docker images for more information.
For example, for Elastic Cloud Enterprise 4.0.1 and the Elastic Stack versions it includes, you need:
docker pull docker.elastic.co/cloud-enterprise/elastic-cloud-enterprise:4.0.1 docker pull docker.elastic.co/cloud-release/elasticsearch-cloud-ess:8.18.2 docker pull docker.elastic.co/cloud-release/kibana-cloud:8.18.2 docker pull docker.elastic.co/cloud-release/elastic-agent-cloud:8.18.2 docker pull docker.elastic.co/cloud-release/enterprise-search-cloud:8.18.2 docker pull docker.elastic.co/cloud-release/elasticsearch-cloud-ess:9.0.1 docker pull docker.elastic.co/cloud-release/kibana-cloud:9.0.1 docker pull docker.elastic.co/cloud-release/elastic-agent-cloud:9.0.1
NoteVersion 8.x images are required for system deployments.
Tag the Docker images with your private registry URL by replacing
REGISTRY
with your actual registry address, for examplemy.private.repo:5000
:docker tag docker.elastic.co/cloud-enterprise/elastic-cloud-enterprise:4.0.1 REGISTRY/cloud-enterprise/elastic-cloud-enterprise:4.0.1 docker tag docker.elastic.co/cloud-release/elasticsearch-cloud-ess:8.18.2 REGISTRY/cloud-release/elasticsearch-cloud-ess:8.18.2 docker tag docker.elastic.co/cloud-release/kibana-cloud:8.18.2 REGISTRY/cloud-release/kibana-cloud:8.18.2 docker tag docker.elastic.co/cloud-release/elastic-agent-cloud:8.18.2 REGISTRY/cloud-release/elastic-agent-cloud:8.18.2 docker tag docker.elastic.co/cloud-release/enterprise-search-cloud:8.18.2 REGISTRY/cloud-release/enterprise-search-cloud:8.18.2 docker tag docker.elastic.co/cloud-release/elasticsearch-cloud-ess:9.0.1 REGISTRY/cloud-release/elasticsearch-cloud-ess:9.0.1 docker tag docker.elastic.co/cloud-release/kibana-cloud:9.0.1 REGISTRY/cloud-release/kibana-cloud:9.0.1 docker tag docker.elastic.co/cloud-release/elastic-agent-cloud:9.0.1 REGISTRY/cloud-release/elastic-agent-cloud:9.0.1
Push the Docker images to your private Docker registry, using the same tags from the previous step. Replace
REGISTRY
with your actual registry URL, for examplemy.private.repo:5000
:docker push REGISTRY/cloud-enterprise/elastic-cloud-enterprise:4.0.1 docker push REGISTRY/cloud-release/elasticsearch-cloud-ess:8.18.2 docker push REGISTRY/cloud-release/kibana-cloud:8.18.2 docker push REGISTRY/cloud-release/elastic-agent-cloud:8.18.2 docker push REGISTRY/cloud-release/enterprise-search-cloud:8.18.2 docker push REGISTRY/cloud-release/elasticsearch-cloud-ess:9.0.1 docker push REGISTRY/cloud-release/kibana-cloud:9.0.1 docker push REGISTRY/cloud-release/elastic-agent-cloud:9.0.1
On an internet-connected host, download the installation script:
curl -L -O https://download.elastic.co/cloud/elastic-cloud-enterprise.sh
Copy the installation script to each host where you plan to install Elastic Cloud Enterprise or make it available on your network.
Invoke the installation script on each host with the
--docker-registry REGISTRY
parameter, replacingREGISTRY
with your actual registry URL (for examplemy.private.repo:5000
):NoteRefer to ECE installation procedures for more details on the parameters to pass to the installation script depending on the size of your installation.
On the first host:
bash elastic-cloud-enterprise.sh install --docker-registry REGISTRY
On additional hosts, include the
--coordinator-host HOST_IP
and--roles-token 'TOKEN'
parameters provided to you when you installed on the first host, along with the--docker-registry REGISTRY
parameter:bash elastic-cloud-enterprise.sh install --coordinator-host HOST_IP --roles-token 'TOKEN' --docker-registry REGISTRY
Once the installation is complete, refer to Log into the Cloud UI to access Cloud UI.