From b32cf27cc93878bcc124bcc387749829b0997a66 Mon Sep 17 00:00:00 2001 From: Mark Goddard Date: Thu, 30 Sep 2021 13:42:18 +0100 Subject: [PATCH] logstash: pin to 7.9.* for Elasticsearch OSS compatibility The latest versions of logstash 7.x do not support using the OSS version of Elasticsearch, and fail to push logs if an OSS version is used. This prevents Monasca log API from working correctly. This change fixes the issue by pinning logstash-oss to 7.9.x, the most recent available package in the repo that still supports Elasticsearch OSS. NOTE: logstash 7.11 introduced the breaking change, however 7.10 is unavailable in the package repos. Change-Id: I4ec4eb837c98f57964488769ab82ba8213ad582c Closes-Bug: #1941754 --- docker/base/apt_preferences.debian | 6 ++++++ docker/base/apt_preferences.ubuntu | 6 ++++++ docker/logstash/Dockerfile.j2 | 8 ++++++++ releasenotes/notes/logstash-7.9-30fd90e921037a8a.yaml | 6 ++++++ 4 files changed, 26 insertions(+) create mode 100644 releasenotes/notes/logstash-7.9-30fd90e921037a8a.yaml diff --git a/docker/base/apt_preferences.debian b/docker/base/apt_preferences.debian index b2013f388a..9c4af3561d 100644 --- a/docker/base/apt_preferences.debian +++ b/docker/base/apt_preferences.debian @@ -11,3 +11,9 @@ Pin-Priority: 1000 Package: td-agent* Pin: version 4.0.* Pin-Priority: 1000 + +# NOTE(mgoddard): logstash 7.9.x is the last version that supports +# Elasticsearch OSS. +Package: logstash-oss +Pin: version 7.9.* +Pin-Priority: 1000 diff --git a/docker/base/apt_preferences.ubuntu b/docker/base/apt_preferences.ubuntu index 2928ee6620..4f07070673 100644 --- a/docker/base/apt_preferences.ubuntu +++ b/docker/base/apt_preferences.ubuntu @@ -10,3 +10,9 @@ Pin-Priority: 1000 Package: td-agent* Pin: version 4.0.* Pin-Priority: 1000 + +# NOTE(mgoddard): logstash 7.9.x is the last version that supports +# Elasticsearch OSS. +Package: logstash-oss +Pin: version 7.9.* +Pin-Priority: 1000 diff --git a/docker/logstash/Dockerfile.j2 b/docker/logstash/Dockerfile.j2 index 6911dc61d4..0be662092f 100644 --- a/docker/logstash/Dockerfile.j2 +++ b/docker/logstash/Dockerfile.j2 @@ -19,9 +19,17 @@ ENV JAVA_HOME /usr/lib/jvm/jre-11-openjdk/ ENV JAVA_HOME /usr/lib/jvm/java-11-openjdk-{{debian_arch}}/ {% endif %} +# NOTE(mgoddard): logstash 7.9.x is the last version that supports +# Elasticsearch OSS. +{% if base_package_type == 'rpm' %} +{% set logstash_packages = [ + 'logstash-oss-7.9.*', +] %} +{% else %} {% set logstash_packages = [ 'logstash-oss', ] %} +{% endif %} # Post-install script of Logstash fails when trying to install Logstash and # Java together. diff --git a/releasenotes/notes/logstash-7.9-30fd90e921037a8a.yaml b/releasenotes/notes/logstash-7.9-30fd90e921037a8a.yaml new file mode 100644 index 0000000000..dc30f91fb1 --- /dev/null +++ b/releasenotes/notes/logstash-7.9-30fd90e921037a8a.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + Fixes an issue with the logstash image which was incompatible with the last + OSS version (7.10) of Elasticsearch. Logstash is now pinned to 7.9. + `LP#1941754 `__