Skip to content

v4.0.0 🚀

Latest

Choose a tag to compare

@github-actions github-actions released this 03 Jan 06:52
50d9db6

Changes

Upgrade to ELK v9! @sherifabdlnaby (#127)

This PR upgrades ElastDocker from Elasticsearch 8.17.0 to the latest stable version 9.2.3, implementing all necessary breaking changes in the process.

🎯 What's Changed

Versions

  • Upgraded from 8.17.0 to 9.2.3 (latest stable release)
  • All components synchronized: Elasticsearch, Kibana, Logstash, APM Server, Filebeat
  • Drop support for docker-compose v1, it's all docker compose now.

Stack Monitoring

  • Migrated from deprecated internal xpack.monitoring to Metricbeat-based collection
  • Follows Elastic's recommended ES 9+ architecture

Filebeat Log Collection

  • Migrated from deprecated container input to modern filestream input
  • Eliminates all deprecation warnings
  • Uses built-in container parser for Docker logs

Configuration Updates

  • All deprecated settings removed or updated
  • Logstash, APM Server, and Elasticsearch configs modernized
  • Certificate generation compatible with ES 9 containers
  • Prometheus exporters updated for latest exporter versions

This is partially AI Generated but human validated and tested. 🫡


Add a setup script and according makefile target to upgrade ES keystore from older versions of ES @BendingBender (#120)

What does this implement/fix? Explain your changes.

When upgrading the stack from ES 8.13.x (and older) to newer versions of Elasticsearch, the generated keystore becomes incompatible. ES then tries to migrate the keystore automatically, but in the container the keystore is mounted via the secrets system and can't be moved or changed (a bind mount would experience the same problem). Elasticsearch then simply refuses to start.

This PR adds a setup script that manually runs the keystore migration in an independent container.

Does this close any currently open issues?

no

Any relevant logs, error output, etc?

no

Any other comments?

no

Where has this been tested?

locally

Allow changing the APM server port via .env file @BendingBender (#118)

What does this implement/fix? Explain your changes.

This PR uses the existing APMSERVER_PORT var defined in .env file to set the port of the APM server exposed by docker compose and the port used by the APM service running in the apm-server container.

Does this close any currently open issues?

Don't think so.

Any relevant logs, error output, etc?

no

Any other comments?

no

Where has this been tested?

locally

Use project name from .env for prune make target @BendingBender (#119)

What does this implement/fix? Explain your changes.

The project name can be changed in the .env file, but the make target prune uses a hardcoded value as project name. This change fixes the Makefile to use the project name from the .env file.

Does this close any currently open issues?

no

Any relevant logs, error output, etc?

no

Any other comments?

no

Where has this been tested?

locally

Introduce variables for all used docker images @BendingBender (#122)

What does this implement/fix? Explain your changes.

This allows to override the image names with images from private docker repositories.

Does this close any currently open issues?

no

Any relevant logs, error output, etc?

no

Any other comments?

no

Where has this been tested?

locally

Fix syntax error in elasticsearch healthcheck script @BendingBender (#114)

(Thanks for sending a pull request! Please make sure you click the link above to view the contribution guidelines, then fill out the blanks below.)

What does this implement/fix? Explain your changes.

There is a syntax error (an unbalanced double quote mark) in the healthcheck script for the elasticsearch image.

Does this close any currently open issues?

No

Any relevant logs, error output, etc?

(If it’s long, please paste to https://ghostbin.com/ and insert the link here.)

Any other comments?

No

Where has this been tested?

locally