From b221a9d96e90d86ef0a6056c6a3e6b8ea08bb8e9 Mon Sep 17 00:00:00 2001 From: t3chn0m4g3 Date: Mon, 6 Jan 2025 15:50:08 +0100 Subject: [PATCH] Disable Scalable Vector Engine (XX:UseSVE=0) to fix issues on macOS and other ARM platforms https://github.com/elastic/elasticsearch/issues/118583 --- docker/elk/elasticsearch/Dockerfile | 10 ++++++---- docker/elk/logstash/Dockerfile | 4 ++-- docker/elk/logstash/dist/entrypoint.sh | 4 ++++ 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/docker/elk/elasticsearch/Dockerfile b/docker/elk/elasticsearch/Dockerfile index 3e41ca4f..00a4af76 100644 --- a/docker/elk/elasticsearch/Dockerfile +++ b/docker/elk/elasticsearch/Dockerfile @@ -1,7 +1,6 @@ FROM ubuntu:24.04 ENV DEBIAN_FRONTEND noninteractive ENV ES_VER=8.16.1 -ENV _JAVA_OPTIONS="-XX:UseSVE=0" # # Include dist COPY dist/ /root/dist/ @@ -16,8 +15,8 @@ RUN apt-get update -y && \ # # Determine arch, get and install packages ARCH=$(arch) && \ - if [ "$ARCH" = "x86_64" ]; then ES_ARCH="amd64"; fi && \ - if [ "$ARCH" = "aarch64" ]; then ES_ARCH="arm64"; fi && \ + if [ "$ARCH" = "x86_64" ]; then ES_ARCH="amd64"; export _JAVA_OPTIONS=""; fi && \ + if [ "$ARCH" = "aarch64" ]; then ES_ARCH="arm64"; export _JAVA_OPTIONS="-XX:UseSVE=0"; fi && \ echo "$ARCH" && \ cd /root/dist/ && \ mkdir -p /usr/share/elasticsearch/config \ @@ -48,4 +47,7 @@ HEALTHCHECK --retries=10 CMD curl -s -XGET 'http://127.0.0.1:9200/_cat/health' # # Start ELK USER elasticsearch:elasticsearch -CMD ["/usr/share/elasticsearch/bin/elasticsearch"] +#CMD ["/usr/share/elasticsearch/bin/elasticsearch"] +CMD ARCH=$(arch) && \ + if [ "$ARCH" = "aarch64" ]; then export _JAVA_OPTIONS="-XX:UseSVE=0"; fi && \ + exec /usr/share/elasticsearch/bin/elasticsearch diff --git a/docker/elk/logstash/Dockerfile b/docker/elk/logstash/Dockerfile index d5052d45..53159a6a 100644 --- a/docker/elk/logstash/Dockerfile +++ b/docker/elk/logstash/Dockerfile @@ -18,8 +18,8 @@ RUN apt-get update -y && \ # # Determine arch, get and install packages ARCH=$(arch) && \ - if [ "$ARCH" = "x86_64" ]; then LS_ARCH="amd64"; fi && \ - if [ "$ARCH" = "aarch64" ]; then LS_ARCH="arm64"; fi && \ + if [ "$ARCH" = "x86_64" ]; then LS_ARCH="amd64"; export _JAVA_OPTIONS=""; fi && \ + if [ "$ARCH" = "aarch64" ]; then LS_ARCH="arm64"; export _JAVA_OPTIONS="-XX:UseSVE=0"; fi && \ echo "$ARCH" && \ mkdir -p /etc/listbot && \ cd /etc/listbot && \ diff --git a/docker/elk/logstash/dist/entrypoint.sh b/docker/elk/logstash/dist/entrypoint.sh index 00f2071e..a4fe4013 100644 --- a/docker/elk/logstash/dist/entrypoint.sh +++ b/docker/elk/logstash/dist/entrypoint.sh @@ -101,4 +101,8 @@ if [ "$TPOT_TYPE" != "SENSOR" ]; fi echo +ARCH=$(arch) +if [ "$ARCH" = "aarch64" ]; then + export _JAVA_OPTIONS="-XX:UseSVE=0"; +fi exec /usr/share/logstash/bin/logstash --config.reload.automatic