[Starlingx-discuss] IPv6 issue when apply OpenStack on IPv6 simplex.

Liu, ZhipengS zhipengs.liu at intel.com
Thu Mar 19 09:21:38 UTC 2020


Hi Joseph,

I fixed this issue now!!
After check port status by sudo ip -all netns exec lsof -I, it shows that Rabbitmq only bind 15672 to ipv4.
I add below changes and pass the rabbitmq deployment.
conf:
      rabbitmq:
        management.listener.port: 15672
       management.listener.ip: "::"

Next step: I have to think how to submit this patch to support both ipv4 and ipv6

BTW, are you sure we passed this test before using OpenStack- train version?
If not change helm chart, how can we pass it?

Thanks!
Zhipeng
From: Liu, ZhipengS
Sent: 2020年3月19日 10:07
To: Richard, Joseph <Joseph.Richard at windriver.com<mailto:Joseph.Richard at windriver.com>>; starlingx-discuss at lists.starlingx.io<mailto:starlingx-discuss at lists.starlingx.io>
Subject: RE: [Starlingx-discuss] IPv6 issue when apply OpenStack on IPv6 simplex.

Hi Joseph,

Below is my patch to make rabbitmq pod start in ipv6 setup.(This is not a formal patch)

From 99fc5aff8d70645c3130552789ea51d82cd287b2 Mon Sep 17 00:00:00 2001
From: Zhipeng Liu <zhipengs.liu at intel.com<mailto:zhipengs.liu at intel.com>>
Date: Thu, 19 Mar 2020 18:53:07 +0800
Subject: [PATCH] Fix rabbtimq pod not starting issue in IPv6 setup

Signed-off-by: Zhipeng Liu <zhipengs.liu at intel.com<mailto:zhipengs.liu at intel.com>>
---
rabbitmq/templates/configmap-etc.yaml    | 8 +++++++-
rabbitmq/templates/job-cluster-wait.yaml | 2 ++
rabbitmq/templates/statefulset.yaml      | 8 ++++++++
3 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/rabbitmq/templates/configmap-etc.yaml b/rabbitmq/templates/configmap-etc.yaml
index 87f25f5..18e2145 100644
--- a/rabbitmq/templates/configmap-etc.yaml
+++ b/rabbitmq/templates/configmap-etc.yaml
@@ -21,7 +21,8 @@ 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" -}}
+

 ---
apiVersion: v1
@@ -33,4 +34,9 @@ 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 }}
+  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 }}
diff --git a/rabbitmq/templates/job-cluster-wait.yaml b/rabbitmq/templates/job-cluster-wait.yaml
index bf8e710..24a30a3 100644
--- a/rabbitmq/templates/job-cluster-wait.yaml
+++ b/rabbitmq/templates/job-cluster-wait.yaml
@@ -66,6 +66,8 @@ spec:
           env:
             - name: RABBITMQ_ADMIN_CONNECTION
               value: {{ tuple "oslo_messaging" "internal" "user" "http" $envAll | include "helm-toolkit.endpoints.authenticated_endpoint_uri_lookup" | quote }}
+            - name: RABBITMQ_CTL_ERL_ARGS
+              value: "-proto_dist inet6_tcp"
             - name: RABBIT_REPLICA_COUNT
               value: {{ $envAll.Values.pod.replicas.server | quote }}
           command:
diff --git a/rabbitmq/templates/statefulset.yaml b/rabbitmq/templates/statefulset.yaml
index 41dc198..64fc1cf 100644
--- a/rabbitmq/templates/statefulset.yaml
+++ b/rabbitmq/templates/statefulset.yaml
@@ -228,6 +228,14 @@ spec:
               mountPath: /etc/rabbitmq/rabbitmq.conf
               subPath: rabbitmq.conf
               readOnly: true
+            - 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
       volumes:
         - name: pod-tmp
           emptyDir: {}
--
2.7.4

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.starlingx.io/pipermail/starlingx-discuss/attachments/20200319/02d7d17a/attachment-0001.html>


More information about the Starlingx-discuss mailing list