Title
Create new category
Edit page index title
Edit category
Edit link
Upgrade ElasticSearch from ES 8.16.6 to ES 8.19.0
Before upgrading Pulse from version 3.8.x to 4.1.x, you must upgrade both Elasticsearch instances from ES 8.16.6 / ES 8.18.4 to ES 8.19.0:
- ad-elastic
- ad-fs-elastic
This step is mandatory and must be completed before running the main Pulse migration command.
Ensure the Elasticsearch cluster health is yellow or green before proceeding with the Elasticsearch migration command.
How the Migration Flow Works
The migration command performs the following steps internally:
1. Pre-migration Cluster Health Check
The command checks the Elasticsearch cluster health before starting the migration.
- If the cluster status is
red, the migration will not proceed. - The command retries the health check until the cluster status becomes
yelloworgreen.
Default retry configuration:
- Maximum retries:
20 - Retry interval:
1m
If all retry attempts are exhausted and the cluster is still red, the migration fails.
2. Migration Execution
Once the cluster health is yellow or green, the Elasticsearch version upgrade is performed.
3. Post-migration Sleep
After the migration completes, the system waits for 2m to allow the Elasticsearch container to stabilize.
4. Post-migration Cluster Health Check
After the sleep interval, the command performs another cluster health check using the same retry configuration.
If the post-migration health check fails after all retry attempts, verify the cluster health manually using the commands provided in the Manual Health Check section.
Accelo Elasticsearch Migration Command Flags
xxxxxxxxxxaccelo admin [component] migrate [flags]Supported components:
xxxxxxxxxxad-elasticad-fs-elastic| Flag | Short | Description | Default |
|---|---|---|---|
--host | -d | Hostname where Elasticsearch is hosted | localhost |
--port | -p | Port to which the Elasticsearch HTTP API is bound | 19013 |
--username | -u | Elasticsearch username | pulse |
--password | -e | Elasticsearch password encrypted using accelo admin encrypt | -- |
--online | -o | Pull Elasticsearch migration images from ECR | false |
--retries | -r | Maximum number of health check retries | 20 |
--retry-interval | -i | Interval between health check retries | 1m |
--sleep | -s | Time to wait after the Elasticsearch container becomes available | 2m |
ad-elastic Migration Procedure
Online Installation
Run the following command.
xxxxxxxxxxaccelo admin ad-elastic migrate --onlineExample:
xxxxxxxxxx$ accelo admin ad-elastic migrate --onlineINFO: Running ad-elastic migrate commandIs the 'ad-elastic' service up and running? [y/n]: : yINFO: sleep duration: 2m0s, max retries: 20, retry interval: 1m0sNow, trying to logon to the AccelData registry...Docker login succeeded ✓INFO: Current ad-elastic version from container label: 4.0.0INFO: Performing cluster health check before migration to ES 8.19.0 (Current ES: 8.18.4)...INFO: Cluster health status: greenINFO: Cluster health check passedINFO: Pulling migrate-8.19.0 imageINFO: migrate-8.19.0 pull successfulINFO: Tagging migrate-8.19.0 image to pulse versionINFO: Removing old ad-elastic container (4.0.0 / ES 8.18.4)INFO: Creating new ad-elastic container with ES 8.19.0INFO: Waiting for Elasticsearch to start...INFO: Performing cluster health check after migration to ES 8.19.0...INFO: Cluster health status: greenINFO: completed:(ES 8.18.4) -> (ES 8.19.0)Offline Installation
Load the migration image:
xxxxxxxxxx$ docker load -i ad-elastic8.tgzLoaded image: 191579300362.dkr.ecr.us-east-1.amazonaws.com/acceldata/ad-elastic:migrate-8.19.0Verify the image:
xxxxxxxxxxdocker images | grep elasticRun the migration command:
xxxxxxxxxx$ accelo admin ad-elastic migrateINFO: Running ad-elastic migrate commandIs the 'ad-elastic' service up and running? [y/n]: : yINFO: sleep duration: 2m0s, max retries: 20, retry interval: 1m0sNow, trying to logon to the AccelData registry...Docker login succeeded ✓INFO: Current ad-elastic version from container label: 4.0.0INFO: Performing cluster health check before migration to ES 8.19.0 (Current ES: 8.18.4)...INFO: Cluster health status: greenINFO: Cluster health check passedINFO: Pulling migrate-8.19.0 imageINFO: migrate-8.19.0 pull successfulINFO: Tagging migrate-8.19.0 image to pulse versionINFO: Removing old ad-elastic container (4.0.0 / ES 8.18.4)INFO: Creating new ad-elastic container with ES 8.19.0INFO: Waiting for Elasticsearch to start...INFO: Performing cluster health check after migration to ES 8.19.0...INFO: Cluster health status: greenINFO: completed:(ES 8.18.4) -> (ES 8.19.0)Verify the container:
xxxxxxxxxxdocker ps -a | grep ad-elastic_defaultad-fs-elastic Migration Procedure
Online Installation ( (pulls images from ECR)
Run the following command.
xxxxxxxxxxaccelo admin ad-fs-elastic migrate --onlineExample:
xxxxxxxxxx[root@odppulse801:acceldata (ad-default)]$ accelo admin ad-fs-elastic migrate --onlineINFO: Running ad-fs-elastic migrate commandIs the 'ad-fs-elastic' service up and running? [y/n]: : y✔ Is the 'ad-fs-elastic' service up and running? [y/n]: : yNow, trying to logon to the AccelData registry...Docker login succeeded ✓INFO: Current ad-fs-elastic version from container label: 4.0.0INFO: Performing cluster health check before migration to ES 8.19.0 (Current ES: 8.18.4)...INFO: Cluster health status: greenINFO: Cluster health check passedINFO: migrate-8.19.0 image already present locallyINFO: Tagging migrate-8.19.0 image to pulse versionINFO: Removing old ad-fs-elastic container (4.0.0 / ES 8.18.4)INFO: Creating new ad-fs-elastic container with ES 8.19.0INFO: Waiting for Elasticsearch to start...INFO: Performing cluster health check after migration to ES 8.19.0...INFO: Cluster health status: greenINFO: completed:(ES 8.18.4) -> (ES 8.19.0)For Offline Installation (air-gapped):
If the image 191579300362.dkr.ecr.us-east-1.amazonaws.com/acceldata/ad-elastic:migrate-8.19.0 is already present locally, there is no need to load it again using docker load -i.
Download the required migration images in an air-gapped environment.
Load the migration image if it is not already present:
xxxxxxxxxx[root@odppulse801:acceldata (ad-default)]$ docker load -i ad-elastic8.tgzLoaded image: 191579300362.dkr.ecr.us-east-1.amazonaws.com/acceldata/ad-elastic:migrate-8.19.0Verify the image:
xxxxxxxxxx[root@odppulse801:acceldata (ad-default)]$ docker images | grep elastic191579300362.dkr.ecr.us-east-1.amazonaws.com/acceldata/ad-elasticRun the migration command:
xxxxxxxxxx[root@odppulse801:acceldata (ad-default)]$ accelo admin ad-fs-elastic migrateINFO: Running ad-fs-elastic migrate commandIs the 'ad-fs-elastic' service up and running? [y/n]: : y✔ Is the 'ad-fs-elastic' service up and running? [y/n]: : y█Now, trying to logon to the AccelData registry...Docker login succeeded ✓INFO: Current ad-fs-elastic version from container label: 4.0.0INFO: Performing cluster health check before migration to ES 8.19.0 (Current ES: 8.18.4)...INFO: Cluster health status: greenINFO: Cluster health check passedINFO: migrate-8.19.0 image already present locallyINFO: Tagging migrate-8.19.0 image to pulse versionINFO: Removing old ad-fs-elastic container (4.0.0 / ES 8.18.4)INFO: Creating new ad-fs-elastic container with ES 8.19.0INFO: Waiting for Elasticsearch to start...INFO: Performing cluster health check after migration to ES 8.19.0...INFO: Cluster health status: greenINFO: completed:(ES 8.18.4) -> (ES 8.19.0)Verify the container:
[root@odppulse801:acceldata (ad-default)]$ docker ps -a | grep ad-elastic_defaultbbfe825691ef 753de6514420 "/bin/tini -- /usr/l…" 10 minutes ago Up 10 minutes 0.0.0.0:19013->9200/tcp, 0.0.0.0:19014->9300/tcp ad-elastic_defaultManual Health Check
If the migration fails due to cluster health check timeout (cluster remains red), verify the cluster health manually:
ad-elastic Health Check
Default port: 19013
Command
xxxxxxxxxxaccelo admin hc elastic cluster-healthOutput
xxxxxxxxxxINFO: elastic cluster health{ "active_primary_shards": 34, "active_shards": 34, "active_shards_percent_as_number": 100, "cluster_name": "elasticsearch", "delayed_unassigned_shards": 0, "initializing_shards": 0, "number_of_data_nodes": 1, "number_of_in_flight_fetch": 0, "number_of_nodes": 1, "number_of_pending_tasks": 0, "relocating_shards": 0, "status": "green", "task_max_waiting_in_queue_millis": 0, "timed_out": false, "unassigned_primary_shards": 0, "unassigned_shards": 0}ad-fs-elastic Health Check
Default port: 19038
Command
xxxxxxxxxxaccelo admin hc elastic cluster-health -d localhost -p 19038Output
xxxxxxxxxxINFO: elastic cluster health{ "active_primary_shards": 0, "active_shards": 0, "active_shards_percent_as_number": 100, "cluster_name": "elasticsearch", "delayed_unassigned_shards": 0, "initializing_shards": 0, "number_of_data_nodes": 1, "number_of_in_flight_fetch": 0, "number_of_nodes": 1, "number_of_pending_tasks": 0, "relocating_shards": 0, "status": "green", "task_max_waiting_in_queue_millis": 0, "timed_out": false, "unassigned_primary_shards": 0, "unassigned_shards": 0}For additional help, contact www.acceldata.force.com OR call our service desk +1 844 9433282
Copyright © 2026