Fix rabbitmq could not bind port to ipv6 address issue
When we use Armada to deploy openstack service for ipv6, rabbitmq pod could not start listen on [::]:5672 and [::]:15672. For ipv6, we need an override for configuration file. Upstream patch link is: https://review.opendev.org/#/c/714027/ Partial-Bug: 1859641 Depends-on: https://review.opendev.org/#/c/714034/ Change-Id: I34e92afe291c4b7f31f53f1b974ad5fdc47b9560 Signed-off-by: Zhipeng Liu <zhipengs.liu@intel.com>
This commit is contained in:
parent
4aeacc3e17
commit
530933f9c2
|
@ -24,6 +24,7 @@ Patch06: 0006-Fix-pod-restarts-on-all-workers-when-worker-added-re.patch
|
|||
Patch07: 0007-Add-io_thread_pool-for-rabbitmq.patch
|
||||
Patch08: 0008-Enable-override-of-rabbitmq-probe-parameters.patch
|
||||
Patch09: 0009-Fix-ipv6-address-issue-causing-mariadb-ingress-not-ready.patch
|
||||
Patch10: 0010-Fix-rabbitmq-could-not-bind-port-to-ipv6-address-iss.patch
|
||||
|
||||
BuildRequires: helm
|
||||
|
||||
|
@ -41,6 +42,7 @@ Openstack Helm Infra charts
|
|||
%patch07 -p1
|
||||
%patch08 -p1
|
||||
%patch09 -p1
|
||||
%patch10 -p1
|
||||
|
||||
%build
|
||||
# initialize helm and build the toolkit
|
||||
|
|
|
@ -0,0 +1,93 @@
|
|||
From 8b095bbcbf490da064c6480607c27e30c915b26e Mon Sep 17 00:00:00 2001
|
||||
From: Zhipeng Liu <zhipengs.liu@intel.com>
|
||||
Date: Fri, 20 Mar 2020 23:37:20 +0800
|
||||
Subject: [PATCH] Fix rabbitmq could not bind port to ipv6 address issue
|
||||
|
||||
Signed-off-by: Zhipeng Liu <zhipengs.liu@intel.com>
|
||||
---
|
||||
rabbitmq/templates/configmap-etc.yaml | 11 ++++++++++-
|
||||
rabbitmq/templates/statefulset.yaml | 10 ++++++++++
|
||||
rabbitmq/values.yaml | 7 +++++--
|
||||
3 files changed, 25 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/rabbitmq/templates/configmap-etc.yaml b/rabbitmq/templates/configmap-etc.yaml
|
||||
index 87f25f5..ca05c8e 100644
|
||||
--- a/rabbitmq/templates/configmap-etc.yaml
|
||||
+++ b/rabbitmq/templates/configmap-etc.yaml
|
||||
@@ -21,7 +21,9 @@ limitations under the License.
|
||||
{{- $_ := print "kubernetes.default.svc." $envAll.Values.endpoints.cluster_domain_suffix | set $envAll.Values.conf.rabbitmq.cluster_formation.k8s "host" -}}
|
||||
{{- end -}}
|
||||
|
||||
-{{- $_ := print "0.0.0.0:" ( tuple "oslo_messaging" "internal" "amqp" . | include "helm-toolkit.endpoints.endpoint_port_lookup") | set $envAll.Values.conf.rabbitmq.listeners.tcp "1" -}}
|
||||
+{{- $_ := print ":::" ( tuple "oslo_messaging" "internal" "amqp" . | include "helm-toolkit.endpoints.endpoint_port_lookup") | set $envAll.Values.conf.rabbitmq.listeners.tcp "1" -}}
|
||||
+
|
||||
+{{- $_ := tuple "oslo_messaging" "internal" "http" . | include "helm-toolkit.endpoints.endpoint_port_lookup" | set $envAll.Values.conf.rabbitmq "management.listener.port" -}}
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
@@ -33,4 +35,11 @@ data:
|
||||
{{ tuple "etc/_enabled_plugins.tpl" . | include "helm-toolkit.utils.template" | indent 4 }}
|
||||
rabbitmq.conf: |
|
||||
{{ include "rabbitmq.utils.to_rabbit_config" $envAll.Values.conf.rabbitmq | indent 4 }}
|
||||
+{{- if .Values.manifests.config_ipv6 }}
|
||||
+ rabbitmq-env.conf: |
|
||||
+ SERVER_ADDITIONAL_ERL_ARGS="+A 128 -kernel inetrc '/etc/rabbitmq/erl_inetrc' -proto_dist inet6_tcp"
|
||||
+ CTL_ERL_ARGS="-proto_dist inet6_tcp"
|
||||
+ erl_inetrc: |
|
||||
+ {inet6, true}.
|
||||
+{{- end }}
|
||||
{{ end }}
|
||||
diff --git a/rabbitmq/templates/statefulset.yaml b/rabbitmq/templates/statefulset.yaml
|
||||
index 41dc198..3597c83 100644
|
||||
--- a/rabbitmq/templates/statefulset.yaml
|
||||
+++ b/rabbitmq/templates/statefulset.yaml
|
||||
@@ -228,6 +228,16 @@ spec:
|
||||
mountPath: /etc/rabbitmq/rabbitmq.conf
|
||||
subPath: rabbitmq.conf
|
||||
readOnly: true
|
||||
+{{- if .Values.manifests.config_ipv6 }}
|
||||
+ - name: rabbitmq-etc
|
||||
+ mountPath: /etc/rabbitmq/rabbitmq-env.conf
|
||||
+ subPath: rabbitmq-env.conf
|
||||
+ readOnly: true
|
||||
+ - name: rabbitmq-etc
|
||||
+ mountPath: /etc/rabbitmq/erl_inetrc
|
||||
+ subPath: erl_inetrc
|
||||
+ readOnly: true
|
||||
+{{- end }}
|
||||
volumes:
|
||||
- name: pod-tmp
|
||||
emptyDir: {}
|
||||
diff --git a/rabbitmq/values.yaml b/rabbitmq/values.yaml
|
||||
index 6c95787..f00b23b 100644
|
||||
--- a/rabbitmq/values.yaml
|
||||
+++ b/rabbitmq/values.yaml
|
||||
@@ -36,9 +36,9 @@ images:
|
||||
prometheus_rabbitmq_exporter: docker.io/kbudde/rabbitmq-exporter:v0.21.0
|
||||
prometheus_rabbitmq_exporter_helm_tests: docker.io/openstackhelm/heat:ocata-ubuntu_xenial
|
||||
rabbitmq_init: docker.io/openstackhelm/heat:ocata-ubuntu_xenial
|
||||
- rabbitmq: docker.io/rabbitmq:3.7.13
|
||||
+ rabbitmq: docker.io/rabbitmq:3.7.24
|
||||
dep_check: quay.io/stackanetes/kubernetes-entrypoint:v0.3.1
|
||||
- scripted_test: docker.io/rabbitmq:3.7.13-management
|
||||
+ scripted_test: docker.io/rabbitmq:3.7.24-management
|
||||
image_repo_sync: docker.io/docker:17.07.0
|
||||
pull_policy: "IfNotPresent"
|
||||
local_registry:
|
||||
@@ -171,6 +171,8 @@ conf:
|
||||
queue_master_locator: min-masters
|
||||
loopback_users.guest: "false"
|
||||
management.load_definitions: "/var/lib/rabbitmq/definitions.json"
|
||||
+ management.listener.ip: "::"
|
||||
+ management.listener.port: null
|
||||
|
||||
dependencies:
|
||||
dynamic:
|
||||
@@ -353,3 +355,4 @@ manifests:
|
||||
service_ingress_management: true
|
||||
service: true
|
||||
statefulset: true
|
||||
+ config_ipv6: false
|
||||
--
|
||||
2.7.4
|
||||
|
|
@ -333,6 +333,8 @@ data:
|
|||
prometheus_rabbitmq_exporter: null
|
||||
prometheus_rabbitmq_exporter_helm_tests: null
|
||||
rabbitmq_init: docker.io/starlingx/stx-heat:master-centos-stable-latest
|
||||
scripted_test: docker.io/rabbitmq:3.7.24-management
|
||||
rabbitmq: docker.io/rabbitmq:3.7.24
|
||||
pod:
|
||||
affinity:
|
||||
anti:
|
||||
|
|
Loading…
Reference in New Issue