[bitnami/rabbitmq] Custom nodePort expose per port (#2825)

* [rabbitmq] Specific nodeport expose

adds the ability to specify the node port to expose for all of the
currently exposed ports. This should **not** be used in production but
is very useful for running a local copy of the exact production chart
one would use but in a much smaller context.

* [rabbitmq] added default values, renamed stats -> manager, fix readme

I'd nuked readme whitespaces inadvertently in the last commit... sorry
it's restored now

* [bitnami/rabbitmq] Updated node port names

This updates the nodePort names to follow the convention set in major
revision 7 of this chart. I like this a lot better as it's much easier
to read and `grep` through, so you can search for nodePort to find any
of the nodePort settings.

* [bitnami/rabbitmq] bumping chart revision due to new feature

* [bitnami/rabbitmq] Update components versions

Signed-off-by: Bitnami Containers <containers@bitnami.com>

Co-authored-by: Bitnami Containers <containers@bitnami.com>
Co-authored-by: Miguel Ángel Cabrera Miñagorri <macabrera@bitnami.com>
This commit is contained in:
Eric
2020-06-22 14:45:22 +01:00
committed by GitHub
parent ad1a4431d6
commit 78b4d6035d
5 changed files with 78 additions and 34 deletions

View File

@@ -1,6 +1,6 @@
apiVersion: v1
name: rabbitmq
version: 7.0.4
version: 7.1.0
appVersion: 3.8.5
description: Open source message broker software that implements the Advanced Message Queuing Protocol (AMQP)
keywords:

View File

@@ -146,37 +146,41 @@ The following table lists the configurable parameters of the RabbitMQ chart and
### Exposure parameters
| Parameter | Description | Default |
|-------------------------------------------|----------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------|
| `service.type` | Kubernetes Service type | `ClusterIP` |
| `service.port` | Amqp port | `5672` |
| `service.tlsPort` | Amqp TLS port | `5671` |
| `service.nodePort` | Node port override, if serviceType NodePort or LoadBalancer | `nil` |
| `service.tlsNodePort` | Node port override, if serviceType NodePort or LoadBalancer | `nil` |
| `service.distPort` | Erlang distribution server port | `25672` |
| `service.managerPort` | RabbitMQ Manager port | `15672` |
| `service.metricsPort` | RabbitMQ Prometheues metrics port | `9419` |
| `service.extraPorts` | Extra ports to expose in the service | `[]` |
| `service.loadBalancerSourceRanges` | Address(es) that are allowed when service is LoadBalancer | `[]` |
| `service.loadBalancerIP` | LoadBalancerIP for the service | `nil` |
| `service.externalIP` | ExternalIP for the service | `nil` |
| `service.labels` | Service labels | `{}` (evaluated as a template) |
| `service.annotations` | Service annotations | `{}` (evaluated as a template) |
| `ingress.enabled` | Enable ingress resource for Management console | `false` |
| `ingress.certManager` | Add annotations for cert-manager | `false` |
| `ingress.hostname` | Default host for the ingress resource | `rabbitmq.local` |
| `ingress.annotations` | Ingress annotations | `[]` |
| `ingress.tls` | Enable TLS configuration for the hostname defined at `ingress.hostname` parameter | `false` |
| `ingress.extraHosts[0].name` | Additional hostnames to be covered | `nil` |
| `ingress.extraHosts[0].path` | Additional hostnames to be covered | `nil` |
| `ingress.extraTls[0].hosts[0]` | TLS configuration for additional hostnames to be covered | `nil` |
| `ingress.extraTls[0].secretName` | TLS configuration for additional hostnames to be covered | `nil` |
| `ingress.secrets[0].name` | TLS Secret Name | `nil` |
| `ingress.secrets[0].certificate` | TLS Secret Certificate | `nil` |
| `ingress.secrets[0].key` | TLS Secret Key | `nil` |
| `networkPolicy.enabled` | Enable NetworkPolicy | `false` |
| `networkPolicy.allowExternal` | Don't require client label for connections | `true` |
| `networkPolicy.additionalRules` | Additional NetworkPolicy rules | `nil` |
| Parameter | Description | Default |
|---------------------------------------------------|---------------------------------------------------------------------------------------------------------|---------------------------------------------------------|
| `service.type` | Kubernetes Service type | `ClusterIP` |
| `service.port` | Amqp port | `5672` |
| `service.tlsPort` | Amqp TLS port | `5671` |
| `service.nodePort` | Node port override for `amqp` port, if serviceType NodePort or LoadBalancer | `nil` |
| `service.tlsNodePort` | Node port override for `amqp-ssl` port, if serviceType NodePort or LoadBalancer | `nil` |
| `service.distPort` | Erlang distribution server port | `25672` |
| `service.distNodePort` | Node port override for `dist` port, if serviceType NodePort | `nil` |
| `service.managerPort` | RabbitMQ Manager port | `15672` |
| `service.managerNodePort` | Node port override for `http-stats` port, if serviceType NodePort | `nil` |
| `service.metricsPort` | RabbitMQ Prometheues metrics port | `9419` |
| `service.metricsNodePort` | Node port override for `metrics` port, if serviceType NodePort | `nil` |
| `service.epmdNodePort` | Node port override for `epmd` port, if serviceType NodePort | `nil` |
| `service.extraPorts` | Extra ports to expose in the service | `[]` |
| `service.loadBalancerSourceRanges` | Address(es) that are allowed when service is LoadBalancer | `[]` |
| `service.loadBalancerIP` | LoadBalancerIP for the service | `nil` |
| `service.externalIP` | ExternalIP for the service | `nil` |
| `service.labels` | Service labels | `{}` (evaluated as a template) |
| `service.annotations` | Service annotations | `{}` (evaluated as a template) |
| `ingress.enabled` | Enable ingress resource for Management console | `false` |
| `ingress.certManager` | Add annotations for cert-manager | `false` |
| `ingress.hostname` | Default host for the ingress resource | `rabbitmq.local` |
| `ingress.annotations` | Ingress annotations | `[]` |
| `ingress.tls` | Enable TLS configuration for the hostname defined at `ingress.hostname` parameter | `false` |
| `ingress.extraHosts[0].name` | Additional hostnames to be covered | `nil` |
| `ingress.extraHosts[0].path` | Additional hostnames to be covered | `nil` |
| `ingress.extraTls[0].hosts[0]` | TLS configuration for additional hostnames to be covered | `nil` |
| `ingress.extraTls[0].secretName` | TLS configuration for additional hostnames to be covered | `nil` |
| `ingress.secrets[0].name` | TLS Secret Name | `nil` |
| `ingress.secrets[0].certificate` | TLS Secret Certificate | `nil` |
| `ingress.secrets[0].key` | TLS Secret Key | `nil` |
| `networkPolicy.enabled` | Enable NetworkPolicy | `false` |
| `networkPolicy.allowExternal` | Don't require client label for connections | `true` |
| `networkPolicy.additionalRules` | Additional NetworkPolicy rules | `nil` |
### Persistence parameters

View File

@@ -47,18 +47,24 @@ spec:
targetPort: epmd
{{- if (eq .Values.service.type "ClusterIP") }}
nodePort: null
{{- else if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.epmdNodePort))) }}
nodePort: {{ .Values.service.epmdNodePort }}
{{- end }}
- name: dist
port: {{ .Values.service.distPort }}
targetPort: dist
{{- if eq .Values.service.type "ClusterIP" }}
nodePort: null
{{- else if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.distNodePort))) }}
nodePort: {{ .Values.service.distNodePort }}
{{- end }}
- name: http-stats
port: {{ .Values.service.managerPort }}
targetPort: stats
{{- if eq .Values.service.type "ClusterIP" }}
nodePort: null
{{- else if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.managerNodePort))) }}
nodePort: {{ .Values.service.managerNodePort }}
{{- end }}
{{- if .Values.metrics.enabled }}
- name: metrics
@@ -66,6 +72,8 @@ spec:
targetPort: metrics
{{- if eq .Values.service.type "ClusterIP" }}
nodePort: null
{{- else if (and (eq .Values.service.type "NodePort") (not (empty .Values.service.metricsNodePort))) }}
nodePort: {{ .Values.service.metricsNodePort }}
{{- end }}
{{- end }}
{{- if .Values.service.extraPorts }}

View File

@@ -14,7 +14,7 @@
image:
registry: docker.io
repository: bitnami/rabbitmq
tag: 3.8.5-debian-10-r9
tag: 3.8.5-debian-10-r12
## set to true if you would like to see extra information on logs
## it turns BASH and NAMI debugging in minideb
@@ -534,15 +534,31 @@ service:
##
distPort: 25672
## Node port (Manager)
##
# distNodePort: 30676
## RabbitMQ Manager port
## ref: https://github.com/bitnami/bitnami-docker-rabbitmq#environment-variables
##
managerPort: 15672
## Node port (Manager)
##
# managerNodePort: 30673
## RabbitMQ Prometheues metrics port
##
metricsPort: 9419
## Node port for metrics
##
# metricsNodePort: 30674
## Node port for EPMD Discovery
##
# epmdNodePort: 30675
## Extra ports to expose
## E.g.:
## extraPorts:

View File

@@ -14,7 +14,7 @@
image:
registry: docker.io
repository: bitnami/rabbitmq
tag: 3.8.5-debian-10-r9
tag: 3.8.5-debian-10-r12
## set to true if you would like to see extra information on logs
## it turns BASH and NAMI debugging in minideb
@@ -534,15 +534,31 @@ service:
##
distPort: 25672
## Node port (Manager)
##
# distNodePort: 30676
## RabbitMQ Manager port
## ref: https://github.com/bitnami/bitnami-docker-rabbitmq#environment-variables
##
managerPort: 15672
## Node port (Manager)
##
# managerNodePort: 30673
## RabbitMQ Prometheues metrics port
##
metricsPort: 9419
## Node port for metrics
##
# metricsNodePort: 30674
## Node port for EPMD Discovery
##
# epmdNodePort: 30675
## Extra ports to expose
## E.g.:
## extraPorts: