DEV Community

Christopher Kujawa (Zell)
Christopher Kujawa (Zell)

Posted on • Originally published at Medium on

Looks like bitnami/elasticsearch-curator is gone

Maybe you have realized, since last week (mid of June 2023) the old bitnami/elasticsearch-curatorhas been removed from DockerHub, which causes several issues with our elasticsearch installation.

Since I haven’t seen any announcement somewhere (which was kind of a surprise) I just want to shortly summarize what we did to overcome this, maybe it helps others as well.

We had quite a hard time with our benchmarks and clusters, since elasticsearch was filling up and caused several issues. Normally we track the throughput and latency of several clusters in one dashboard, which doesn’t look healthy end of last week.

We realized quickly that curator cronjobs were no longer running and crash loop because the images were no longer available.

You can also reproduce this via:

$ docker pull bitnami/elasticsearch-curator:5.8.4
Error response from daemon: pull access denied for bitnami/elasticsearch-curator, repository does not exist or may require 'docker login': denied: requested access to the resource is denied
Enter fullscreen mode Exit fullscreen mode

Turned out that the image has been renamed to https://hub.docker.com/r/bitnami/elasticsearch-curator-archived

$ docker pull bitnami/elasticsearch-curator-archived:5.8.4
5.8.4: Pulling from bitnami/elasticsearch-curator-archived
Digest: sha256:46c98206dfaef81705d9397bd3d962d1505c8cfe9437f86ea0258d5cbef89e7f
Status: Downloaded newer image for bitnami/elasticsearch-curator-archived:5.8.4
docker.io/bitnami/elasticsearch-curator-archived:5.8.4
Enter fullscreen mode Exit fullscreen mode

If you use helm charts (like we do) and have a cronjob defined in the helm charts it will not help to upgrade the charts. The reason is that jobs, cronjobs, etc. are immutable.

You have to delete the job/cronjob and do an helm upgrade with --reuse-values and set the right curator image.

If you use our charts (camunda-platform-helm) you have to set --set camunda-platform.retentionPolicy.image.repository=bitnami/elasticsearch-curator-archived to use the new curator image.

helm upgrade \
 "$releaseName" <YOUR-CHART> \
 --reuse-values \
 --set camunda-platform.retentionPolicy.image.repository=bitnami/elasticsearch-curator-archived
Enter fullscreen mode Exit fullscreen mode

As alternative you can recreate the installed helm releases. To do so you can use the following script:

# we had several clusters to fix so this was part of a loop
ns="YOUR NAMESPACE" 
# release name is in our case the namespace name
releaseName="$ns"
# Get the values for the installed chart release (to reuse them)
values=$(helm get values “$releaseName--namespace$ns-o yaml); 

# You can store the values into a separate file to be on the safe side
echo "$values" > "$ns-values.yaml"
# ...
# You could either set the curator image now here in the values
# or set it directly on installation
# ...
# Uninstall the chart
helm uninstall "$releaseName" --namespace "$ns"
# Install the chart inject values via stdin
echo "$values" | helm install "$releaseName" <YOUR-CHART> --namespace "$ns" --values -
Enter fullscreen mode Exit fullscreen mode

Another thing we run into was that elasticsearch was in on some cases soo full that it didn’t even recover and was not able to free up space (with a curator). Later we found out that you need to increase the disk a bit, such that elasticsearch can recover and curator can free up space.

If you ask why this change happened (renaming of the docker image), I haven’t found any resources for it. The current assumption is that the curator is deprecated with elasticsearch 8 and likely will not work anymore with 8.x.

But if you still use a lower version, you might still want or need to use the curator so I hope this will help someone.

Top comments (1)

Collapse
 
rishithaminol profile image
Rishitha Minol • Edited

This was a problem that I also faced. Seems we have to write our own solution to curate the Elasticsearch we provision.