add support for multiple clusters (#60)
Co-authored-by: Elad Dolev <elad@firebolt.io> ### Motivation Give the ability to deploy multi-cluster instance on K8s clusters with non-default `clusterDomain`, and connect to external configuration-store ### Modifications - give the ability to change cluster's name - give the ability to change `clusterDomain` - fix external configuration store functionality - use broker ports variables - use label templates, and add `component` label in several places ### Verifying this change - [x] Make sure that the change passes the CI checks.
This commit is contained in:
parent
6c2edba8b1
commit
5049d3564a
@ -21,7 +21,7 @@ apiVersion: v1
|
|||||||
appVersion: "2.6.1"
|
appVersion: "2.6.1"
|
||||||
description: Apache Pulsar Helm chart for Kubernetes
|
description: Apache Pulsar Helm chart for Kubernetes
|
||||||
name: pulsar
|
name: pulsar
|
||||||
version: 2.6.1-1
|
version: 2.6.1-2
|
||||||
home: https://pulsar.apache.org
|
home: https://pulsar.apache.org
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/apache/pulsar
|
- https://github.com/apache/pulsar
|
||||||
|
|||||||
@ -9,7 +9,7 @@ Define the pulsar autorecovery service
|
|||||||
Define the autorecovery hostname
|
Define the autorecovery hostname
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "pulsar.autorecovery.hostname" -}}
|
{{- define "pulsar.autorecovery.hostname" -}}
|
||||||
${HOSTNAME}.{{ template "pulsar.autorecovery.service" . }}.{{ .Values.namespace }}.svc.cluster.local
|
${HOSTNAME}.{{ template "pulsar.autorecovery.service" . }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
|
|||||||
@ -9,7 +9,7 @@ Define the pulsar bookkeeper service
|
|||||||
Define the bookkeeper hostname
|
Define the bookkeeper hostname
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "pulsar.bookkeeper.hostname" -}}
|
{{- define "pulsar.bookkeeper.hostname" -}}
|
||||||
${HOSTNAME}.{{ template "pulsar.bookkeeper.service" . }}.{{ .Values.namespace }}.svc.cluster.local
|
${HOSTNAME}.{{ template "pulsar.bookkeeper.service" . }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -9,7 +9,7 @@ Define the pulsar brroker service
|
|||||||
Define the hostname
|
Define the hostname
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "pulsar.broker.hostname" -}}
|
{{- define "pulsar.broker.hostname" -}}
|
||||||
${HOSTNAME}.{{ template "pulsar.broker.service" . }}.{{ .Values.namespace }}.svc.cluster.local
|
${HOSTNAME}.{{ template "pulsar.broker.service" . }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
|
|||||||
20
charts/pulsar/templates/_configurationstore.tpl
Normal file
20
charts/pulsar/templates/_configurationstore.tpl
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
{{/*
|
||||||
|
Define configuration store endpoint
|
||||||
|
*/}}
|
||||||
|
{{- define "pulsar.configurationStore.service" -}}
|
||||||
|
{{- if .Values.pulsar_metadata.configurationStore }}
|
||||||
|
{{- .Values.pulsar_metadata.configurationStore }}
|
||||||
|
{{- else -}}
|
||||||
|
{{ template "pulsar.zookeeper.service" . }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Define configuration store connection string
|
||||||
|
*/}}
|
||||||
|
{{- define "pulsar.configurationStore.connect" -}}
|
||||||
|
{{- if .Values.pulsar_metadata.configurationStore }}
|
||||||
|
{{- template "pulsar.configurationStore.service" . }}:{{ .Values.pulsar_metadata.configurationStorePort }}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
@ -32,6 +32,17 @@ If release name contains chart name it will be used as a full name.
|
|||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Define cluster's name
|
||||||
|
*/}}
|
||||||
|
{{- define "pulsar.cluster.name" -}}
|
||||||
|
{{- if .Values.clusterName }}
|
||||||
|
{{- .Values.clusterName }}
|
||||||
|
{{- else -}}
|
||||||
|
{{- template "pulsar.fullname" .}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Create chart name and version as used by the chart label.
|
Create chart name and version as used by the chart label.
|
||||||
*/}}
|
*/}}
|
||||||
@ -47,7 +58,7 @@ app: {{ template "pulsar.name" . }}
|
|||||||
chart: {{ template "pulsar.chart" . }}
|
chart: {{ template "pulsar.chart" . }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
heritage: {{ .Release.Service }}
|
heritage: {{ .Release.Service }}
|
||||||
cluster: {{ template "pulsar.fullname" . }}
|
cluster: {{ template "pulsar.cluster.name" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
@ -56,7 +67,7 @@ Create the template labels.
|
|||||||
{{- define "pulsar.template.labels" -}}
|
{{- define "pulsar.template.labels" -}}
|
||||||
app: {{ template "pulsar.name" . }}
|
app: {{ template "pulsar.name" . }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
cluster: {{ template "pulsar.fullname" . }}
|
cluster: {{ template "pulsar.cluster.name" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
|
|||||||
@ -9,7 +9,7 @@ Define the pulsar toolset service
|
|||||||
Define the toolset hostname
|
Define the toolset hostname
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "pulsar.toolset.hostname" -}}
|
{{- define "pulsar.toolset.hostname" -}}
|
||||||
${HOSTNAME}.{{ template "pulsar.toolset.service" . }}.{{ .Values.namespace }}.svc.cluster.local
|
${HOSTNAME}.{{ template "pulsar.toolset.service" . }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
|
|||||||
@ -26,7 +26,7 @@ Define the pulsar zookeeper
|
|||||||
Define the zookeeper hostname
|
Define the zookeeper hostname
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "pulsar.zookeeper.hostname" -}}
|
{{- define "pulsar.zookeeper.hostname" -}}
|
||||||
${HOSTNAME}.{{ template "pulsar.zookeeper.service" . }}.{{ .Values.namespace }}.svc.cluster.local
|
${HOSTNAME}.{{ template "pulsar.zookeeper.service" . }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
|
|||||||
@ -62,7 +62,7 @@ spec:
|
|||||||
echo "bookkeeper cluster already initialized";
|
echo "bookkeeper cluster already initialized";
|
||||||
else
|
else
|
||||||
{{- if not (eq .Values.metadataPrefix "") }}
|
{{- if not (eq .Values.metadataPrefix "") }}
|
||||||
bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server {{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }} create {{ .Values.metadataPrefix }} 'created for pulsar cluster "{{ template "pulsar.fullname" . }}"' || yes &&
|
bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server {{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }} create {{ .Values.metadataPrefix }} 'created for pulsar cluster "{{ template "pulsar.cluster.name" . }}"' || yes &&
|
||||||
{{- end }}
|
{{- end }}
|
||||||
bin/bookkeeper shell initnewcluster;
|
bin/bookkeeper shell initnewcluster;
|
||||||
fi
|
fi
|
||||||
|
|||||||
@ -30,14 +30,14 @@ data:
|
|||||||
# Metadata settings
|
# Metadata settings
|
||||||
zookeeperServers: "{{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }}"
|
zookeeperServers: "{{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }}"
|
||||||
{{- if .Values.pulsar_metadata.configurationStore }}
|
{{- if .Values.pulsar_metadata.configurationStore }}
|
||||||
configurationStoreServers: "{{ .Values.pulsar_metadata.configurationStore }}{{ .Values.pulsar_metadata.configurationStoreMetadataPrefix }}"
|
configurationStoreServers: "{{ template "pulsar.configurationStore.connect" . }}{{ .Values.pulsar_metadata.configurationStoreMetadataPrefix }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if not .Values.pulsar_metadata.configurationStore }}
|
{{- if not .Values.pulsar_metadata.configurationStore }}
|
||||||
configurationStoreServers: "{{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }}"
|
configurationStoreServers: "{{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
# Broker settings
|
# Broker settings
|
||||||
clusterName: {{ template "pulsar.fullname" . }}
|
clusterName: {{ template "pulsar.cluster.name" . }}
|
||||||
exposeTopicLevelMetricsInPrometheus: "true"
|
exposeTopicLevelMetricsInPrometheus: "true"
|
||||||
numHttpServerThreads: "8"
|
numHttpServerThreads: "8"
|
||||||
zooKeeperSessionTimeoutMillis: "30000"
|
zooKeeperSessionTimeoutMillis: "30000"
|
||||||
@ -51,7 +51,7 @@ data:
|
|||||||
{{- if or .Values.components.functions .Values.extra.functionsAsPods }}
|
{{- if or .Values.components.functions .Values.extra.functionsAsPods }}
|
||||||
functionsWorkerEnabled: "true"
|
functionsWorkerEnabled: "true"
|
||||||
PF_functionRuntimeFactoryClassName: "org.apache.pulsar.functions.runtime.kubernetes.KubernetesRuntimeFactory"
|
PF_functionRuntimeFactoryClassName: "org.apache.pulsar.functions.runtime.kubernetes.KubernetesRuntimeFactory"
|
||||||
PF_pulsarFunctionsCluster: {{ template "pulsar.fullname" . }}
|
PF_pulsarFunctionsCluster: {{ template "pulsar.cluster.name" . }}
|
||||||
PF_connectorsDirectory: ./connectors
|
PF_connectorsDirectory: ./connectors
|
||||||
PF_containerFactory: k8s
|
PF_containerFactory: k8s
|
||||||
PF_numFunctionPackageReplicas: "{{ .Values.broker.configData.managedLedgerDefaultEnsembleSize }}"
|
PF_numFunctionPackageReplicas: "{{ .Values.broker.configData.managedLedgerDefaultEnsembleSize }}"
|
||||||
|
|||||||
@ -110,12 +110,12 @@ spec:
|
|||||||
- >-
|
- >-
|
||||||
{{- include "pulsar.broker.zookeeper.tls.settings" . | nindent 12 }}
|
{{- include "pulsar.broker.zookeeper.tls.settings" . | nindent 12 }}
|
||||||
{{- if .Values.pulsar_metadata.configurationStore }}
|
{{- if .Values.pulsar_metadata.configurationStore }}
|
||||||
until bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server {{ .Values.pulsar_metadata.configurationStore}} get {{ .Values.configurationStoreMetadataPrefix }}/admin/clusters/{{ template "pulsar.fullname" . }}; do
|
until bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server {{ template "pulsar.configurationStore.connect" . }} get {{ .Values.configurationStoreMetadataPrefix }}/admin/clusters/{{ template "pulsar.cluster.name" . }}; do
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if not .Values.pulsar_metadata.configurationStore }}
|
{{- if not .Values.pulsar_metadata.configurationStore }}
|
||||||
until bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server {{ template "pulsar.zookeeper.connect" . }} get {{ .Values.metadataPrefix }}/admin/clusters/{{ template "pulsar.fullname" . }}; do
|
until bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server {{ template "pulsar.zookeeper.connect" . }} get {{ .Values.metadataPrefix }}/admin/clusters/{{ template "pulsar.cluster.name" . }}; do
|
||||||
{{- end }}
|
{{- end }}
|
||||||
echo "pulsar cluster {{ template "pulsar.fullname" . }} isn't initialized yet ... check in 3 seconds ..." && sleep 3;
|
echo "pulsar cluster {{ template "pulsar.cluster.name" . }} isn't initialized yet ... check in 3 seconds ..." && sleep 3;
|
||||||
done;
|
done;
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
{{- include "pulsar.broker.certs.volumeMounts" . | nindent 8 }}
|
{{- include "pulsar.broker.certs.volumeMounts" . | nindent 8 }}
|
||||||
@ -136,7 +136,7 @@ spec:
|
|||||||
echo "bookkeeper cluster is already initialized";
|
echo "bookkeeper cluster is already initialized";
|
||||||
bookieServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }} | grep Name | wc -l)";
|
bookieServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }} | grep Name | wc -l)";
|
||||||
until [ ${bookieServiceNumber} -ge {{ .Values.broker.configData.managedLedgerDefaultEnsembleSize }} ]; do
|
until [ ${bookieServiceNumber} -ge {{ .Values.broker.configData.managedLedgerDefaultEnsembleSize }} ]; do
|
||||||
echo "bookkeeper cluster {{ template "pulsar.fullname" . }} isn't ready yet ... check in 10 seconds ...";
|
echo "bookkeeper cluster {{ template "pulsar.cluster.name" . }} isn't ready yet ... check in 10 seconds ...";
|
||||||
sleep 10;
|
sleep 10;
|
||||||
bookieServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }} | grep Name | wc -l)";
|
bookieServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }} | grep Name | wc -l)";
|
||||||
done;
|
done;
|
||||||
|
|||||||
@ -24,12 +24,8 @@ metadata:
|
|||||||
name: "{{ template "pulsar.fullname" . }}-{{ .Values.dashboard.component }}"
|
name: "{{ template "pulsar.fullname" . }}-{{ .Values.dashboard.component }}"
|
||||||
namespace: {{ .Values.namespace }}
|
namespace: {{ .Values.namespace }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "pulsar.name" . }}
|
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
||||||
chart: {{ template "pulsar.chart" . }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
component: {{ .Values.dashboard.component }}
|
component: {{ .Values.dashboard.component }}
|
||||||
cluster: {{ template "pulsar.fullname" . }}
|
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.dashboard.replicaCount }}
|
replicas: {{ .Values.dashboard.replicaCount }}
|
||||||
selector:
|
selector:
|
||||||
@ -40,10 +36,9 @@ spec:
|
|||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "pulsar.name" . }}
|
{{- include "pulsar.template.labels" . | nindent 8 }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
component: {{ .Values.dashboard.component }}
|
component: {{ .Values.dashboard.component }}
|
||||||
cluster: {{ template "pulsar.fullname" . }}
|
|
||||||
annotations:
|
annotations:
|
||||||
{{ toYaml .Values.dashboard.annotations | indent 8 }}
|
{{ toYaml .Values.dashboard.annotations | indent 8 }}
|
||||||
spec:
|
spec:
|
||||||
|
|||||||
@ -23,11 +23,8 @@ apiVersion: extensions/v1beta1
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "pulsar.name" . }}
|
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
||||||
chart: {{ template "pulsar.chart" . }}
|
component: {{ .Values.dashboard.component }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
cluster: "{{ template "pulsar.fullname" . }}-{{ .Values.dashboard.component }}"
|
|
||||||
annotations:
|
annotations:
|
||||||
{{- with .Values.dashboard.ingress.annotations }}
|
{{- with .Values.dashboard.ingress.annotations }}
|
||||||
{{ toYaml . | indent 4 }}
|
{{ toYaml . | indent 4 }}
|
||||||
|
|||||||
@ -24,12 +24,8 @@ metadata:
|
|||||||
name: "{{ template "pulsar.fullname" . }}-{{ .Values.dashboard.component }}"
|
name: "{{ template "pulsar.fullname" . }}-{{ .Values.dashboard.component }}"
|
||||||
namespace: {{ .Values.namespace }}
|
namespace: {{ .Values.namespace }}
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "pulsar.name" . }}
|
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
||||||
chart: {{ template "pulsar.chart" . }}
|
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
component: {{ .Values.dashboard.component }}
|
component: {{ .Values.dashboard.component }}
|
||||||
cluster: {{ template "pulsar.fullname" . }}
|
|
||||||
annotations:
|
annotations:
|
||||||
{{ toYaml .Values.dashboard.service.annotations | indent 4 }}
|
{{ toYaml .Values.dashboard.service.annotations | indent 4 }}
|
||||||
spec:
|
spec:
|
||||||
|
|||||||
@ -27,7 +27,7 @@ metadata:
|
|||||||
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
||||||
component: {{ .Values.proxy.component }}
|
component: {{ .Values.proxy.component }}
|
||||||
data:
|
data:
|
||||||
clusterName: {{ template "pulsar.fullname" . }}
|
clusterName: {{ template "pulsar.cluster.name" . }}
|
||||||
httpNumThreads: "8"
|
httpNumThreads: "8"
|
||||||
statusFilePath: "{{ template "pulsar.home" . }}/status"
|
statusFilePath: "{{ template "pulsar.home" . }}/status"
|
||||||
# prometheus needs to access /metrics endpoint
|
# prometheus needs to access /metrics endpoint
|
||||||
|
|||||||
@ -22,11 +22,8 @@ apiVersion: extensions/v1beta1
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "pulsar.name" . }}
|
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
||||||
chart: {{ template "pulsar.chart" . }}
|
component: {{ .Values.proxy.component }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
cluster: "{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}"
|
|
||||||
annotations:
|
annotations:
|
||||||
{{- with .Values.proxy.ingress.annotations }}
|
{{- with .Values.proxy.ingress.annotations }}
|
||||||
{{ toYaml . | indent 4 }}
|
{{ toYaml . | indent 4 }}
|
||||||
|
|||||||
@ -112,7 +112,7 @@ spec:
|
|||||||
echo "user provided zookeepers {{ $zk }} are unreachable... check in 3 seconds ..." && sleep 3;
|
echo "user provided zookeepers {{ $zk }} are unreachable... check in 3 seconds ..." && sleep 3;
|
||||||
done;
|
done;
|
||||||
{{ else }}
|
{{ else }}
|
||||||
until bin/pulsar zookeeper-shell -server {{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }} get {{ .Values.metadataPrefix }}/admin/clusters/{{ template "pulsar.fullname" . }}; do
|
until bin/pulsar zookeeper-shell -server {{ template "pulsar.configurationStore.service" . }} get {{ .Values.metadataPrefix }}/admin/clusters/{{ template "pulsar.cluster.name" . }}; do
|
||||||
sleep 3;
|
sleep 3;
|
||||||
done;
|
done;
|
||||||
{{- end}}
|
{{- end}}
|
||||||
@ -127,7 +127,7 @@ spec:
|
|||||||
set -e;
|
set -e;
|
||||||
brokerServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.broker.component }} | grep Name | wc -l)";
|
brokerServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.broker.component }} | grep Name | wc -l)";
|
||||||
until [ ${brokerServiceNumber} -ge 1 ]; do
|
until [ ${brokerServiceNumber} -ge 1 ]; do
|
||||||
echo "pulsar cluster {{ template "pulsar.fullname" . }} isn't initialized yet ... check in 10 seconds ...";
|
echo "pulsar cluster {{ template "pulsar.cluster.name" . }} isn't initialized yet ... check in 10 seconds ...";
|
||||||
sleep 10;
|
sleep 10;
|
||||||
brokerServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.broker.component }} | grep Name | wc -l)";
|
brokerServiceNumber="$(nslookup -timeout=10 {{ template "pulsar.fullname" . }}-{{ .Values.broker.component }} | grep Name | wc -l)";
|
||||||
done;
|
done;
|
||||||
|
|||||||
@ -89,18 +89,18 @@ spec:
|
|||||||
- >
|
- >
|
||||||
{{- include "pulsar.toolset.zookeeper.tls.settings" . | nindent 12 }}
|
{{- include "pulsar.toolset.zookeeper.tls.settings" . | nindent 12 }}
|
||||||
bin/pulsar initialize-cluster-metadata \
|
bin/pulsar initialize-cluster-metadata \
|
||||||
--cluster {{ template "pulsar.fullname" . }} \
|
--cluster {{ template "pulsar.cluster.name" . }} \
|
||||||
--zookeeper {{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }} \
|
--zookeeper {{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }} \
|
||||||
{{- if .Values.pulsar_metadata.configurationStore }}
|
{{- if .Values.pulsar_metadata.configurationStore }}
|
||||||
--configuration-store {{ .Values.pulsar_metadata.configurationStore }}{{ .Values.pulsar_metadata.configurationStoreMetadataPrefix }} \
|
--configuration-store {{ template "pulsar.configurationStore.connect" . }}{{ .Values.pulsar_metadata.configurationStoreMetadataPrefix }} \
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if not .Values.pulsar_metadata.configurationStore }}
|
{{- if not .Values.pulsar_metadata.configurationStore }}
|
||||||
--configuration-store {{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }} \
|
--configuration-store {{ template "pulsar.zookeeper.connect" . }}{{ .Values.metadataPrefix }} \
|
||||||
{{- end }}
|
{{- end }}
|
||||||
--web-service-url http://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.cluster.local:8080/ \
|
--web-service-url http://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}:{{ .Values.broker.ports.http }}/ \
|
||||||
--web-service-url-tls https://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.cluster.local:8443/ \
|
--web-service-url-tls https://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}:{{ .Values.broker.ports.https }}/ \
|
||||||
--broker-service-url pulsar://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.cluster.local:6650/ \
|
--broker-service-url pulsar://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}:{{ .Values.broker.ports.pulsar }}/ \
|
||||||
--broker-service-url-tls pulsar+ssl://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.cluster.local:6651/ || true;
|
--broker-service-url-tls pulsar+ssl://{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}:{{ .Values.broker.ports.pulsarssl }}/ || true;
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
{{- include "pulsar.toolset.certs.volumeMounts" . | nindent 8 }}
|
{{- include "pulsar.toolset.certs.volumeMounts" . | nindent 8 }}
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
@ -22,11 +22,8 @@ apiVersion: extensions/v1beta1
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: {{ template "pulsar.name" . }}
|
{{- include "pulsar.standardLabels" . | nindent 4 }}
|
||||||
chart: {{ template "pulsar.chart" . }}
|
component: {{ .Values.pulsar_manager.component }}
|
||||||
release: {{ .Release.Name }}
|
|
||||||
heritage: {{ .Release.Service }}
|
|
||||||
cluster: "{{ template "pulsar.fullname" . }}-{{ .Values.pulsar_manager.component }}"
|
|
||||||
annotations:
|
annotations:
|
||||||
{{- with .Values.pulsar_manager.ingress.annotations }}
|
{{- with .Values.pulsar_manager.ingress.annotations }}
|
||||||
{{ toYaml . | indent 4 }}
|
{{ toYaml . | indent 4 }}
|
||||||
|
|||||||
@ -35,7 +35,7 @@ metadata:
|
|||||||
namespace: {{ .Values.namespace }}
|
namespace: {{ .Values.namespace }}
|
||||||
spec:
|
spec:
|
||||||
secretName: "{{ .Release.Name }}-ca-tls"
|
secretName: "{{ .Release.Name }}-ca-tls"
|
||||||
commonName: "{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
usages:
|
usages:
|
||||||
- server auth
|
- server auth
|
||||||
- client auth
|
- client auth
|
||||||
|
|||||||
@ -35,7 +35,7 @@ spec:
|
|||||||
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
||||||
# The use of the common name field has been deprecated since 2000 and is
|
# The use of the common name field has been deprecated since 2000 and is
|
||||||
# discouraged from being used.
|
# discouraged from being used.
|
||||||
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
isCA: false
|
isCA: false
|
||||||
keySize: {{ .Values.tls.common.keySize }}
|
keySize: {{ .Values.tls.common.keySize }}
|
||||||
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
||||||
@ -45,7 +45,7 @@ spec:
|
|||||||
- client auth
|
- client auth
|
||||||
# At least one of a DNS Name, USI SAN, or IP address is required.
|
# At least one of a DNS Name, USI SAN, or IP address is required.
|
||||||
dnsNames:
|
dnsNames:
|
||||||
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
- "{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}"
|
- "{{ template "pulsar.fullname" . }}-{{ .Values.proxy.component }}"
|
||||||
# Issuer references are always required.
|
# Issuer references are always required.
|
||||||
issuerRef:
|
issuerRef:
|
||||||
@ -74,7 +74,7 @@ spec:
|
|||||||
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
||||||
# The use of the common name field has been deprecated since 2000 and is
|
# The use of the common name field has been deprecated since 2000 and is
|
||||||
# discouraged from being used.
|
# discouraged from being used.
|
||||||
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
isCA: false
|
isCA: false
|
||||||
keySize: {{ .Values.tls.common.keySize }}
|
keySize: {{ .Values.tls.common.keySize }}
|
||||||
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
||||||
@ -84,7 +84,7 @@ spec:
|
|||||||
- client auth
|
- client auth
|
||||||
# At least one of a DNS Name, USI SAN, or IP address is required.
|
# At least one of a DNS Name, USI SAN, or IP address is required.
|
||||||
dnsNames:
|
dnsNames:
|
||||||
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
- "{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}"
|
- "{{ template "pulsar.fullname" . }}-{{ .Values.broker.component }}"
|
||||||
# Issuer references are always required.
|
# Issuer references are always required.
|
||||||
issuerRef:
|
issuerRef:
|
||||||
@ -113,7 +113,7 @@ spec:
|
|||||||
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
||||||
# The use of the common name field has been deprecated since 2000 and is
|
# The use of the common name field has been deprecated since 2000 and is
|
||||||
# discouraged from being used.
|
# discouraged from being used.
|
||||||
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
isCA: false
|
isCA: false
|
||||||
keySize: {{ .Values.tls.common.keySize }}
|
keySize: {{ .Values.tls.common.keySize }}
|
||||||
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
||||||
@ -122,7 +122,7 @@ spec:
|
|||||||
- server auth
|
- server auth
|
||||||
- client auth
|
- client auth
|
||||||
dnsNames:
|
dnsNames:
|
||||||
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
- "{{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }}"
|
- "{{ template "pulsar.fullname" . }}-{{ .Values.bookkeeper.component }}"
|
||||||
# Issuer references are always required.
|
# Issuer references are always required.
|
||||||
issuerRef:
|
issuerRef:
|
||||||
@ -151,7 +151,7 @@ spec:
|
|||||||
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
||||||
# The use of the common name field has been deprecated since 2000 and is
|
# The use of the common name field has been deprecated since 2000 and is
|
||||||
# discouraged from being used.
|
# discouraged from being used.
|
||||||
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.autorecovery.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.autorecovery.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
isCA: false
|
isCA: false
|
||||||
keySize: {{ .Values.tls.common.keySize }}
|
keySize: {{ .Values.tls.common.keySize }}
|
||||||
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
||||||
@ -160,7 +160,7 @@ spec:
|
|||||||
- server auth
|
- server auth
|
||||||
- client auth
|
- client auth
|
||||||
dnsNames:
|
dnsNames:
|
||||||
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.autorecovery.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.autorecovery.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
- "{{ template "pulsar.fullname" . }}-{{ .Values.autorecovery.component }}"
|
- "{{ template "pulsar.fullname" . }}-{{ .Values.autorecovery.component }}"
|
||||||
# Issuer references are always required.
|
# Issuer references are always required.
|
||||||
issuerRef:
|
issuerRef:
|
||||||
@ -186,7 +186,7 @@ spec:
|
|||||||
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
||||||
# The use of the common name field has been deprecated since 2000 and is
|
# The use of the common name field has been deprecated since 2000 and is
|
||||||
# discouraged from being used.
|
# discouraged from being used.
|
||||||
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.toolset.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.toolset.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
isCA: false
|
isCA: false
|
||||||
keySize: {{ .Values.tls.common.keySize }}
|
keySize: {{ .Values.tls.common.keySize }}
|
||||||
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
||||||
@ -195,7 +195,7 @@ spec:
|
|||||||
- server auth
|
- server auth
|
||||||
- client auth
|
- client auth
|
||||||
dnsNames:
|
dnsNames:
|
||||||
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.toolset.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.toolset.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
- "{{ template "pulsar.fullname" . }}-{{ .Values.toolset.component }}"
|
- "{{ template "pulsar.fullname" . }}-{{ .Values.toolset.component }}"
|
||||||
# Issuer references are always required.
|
# Issuer references are always required.
|
||||||
issuerRef:
|
issuerRef:
|
||||||
@ -221,7 +221,7 @@ spec:
|
|||||||
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
{{ toYaml .Values.tls.common.organization | indent 2 }}
|
||||||
# The use of the common name field has been deprecated since 2000 and is
|
# The use of the common name field has been deprecated since 2000 and is
|
||||||
# discouraged from being used.
|
# discouraged from being used.
|
||||||
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
commonName: "*.{{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
isCA: false
|
isCA: false
|
||||||
keySize: {{ .Values.tls.common.keySize }}
|
keySize: {{ .Values.tls.common.keySize }}
|
||||||
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
keyAlgorithm: {{ .Values.tls.common.keyAlgorithm }}
|
||||||
@ -230,7 +230,7 @@ spec:
|
|||||||
- server auth
|
- server auth
|
||||||
- client auth
|
- client auth
|
||||||
dnsNames:
|
dnsNames:
|
||||||
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }}.{{ .Values.namespace }}.svc.cluster.local"
|
- "*.{{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }}.{{ .Values.namespace }}.svc.{{ .Values.clusterDomain }}"
|
||||||
- "{{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }}"
|
- "{{ template "pulsar.fullname" . }}-{{ .Values.zookeeper.component }}"
|
||||||
# Issuer references are always required.
|
# Issuer references are always required.
|
||||||
issuerRef:
|
issuerRef:
|
||||||
|
|||||||
@ -26,6 +26,9 @@
|
|||||||
namespace: pulsar
|
namespace: pulsar
|
||||||
namespaceCreate: false
|
namespaceCreate: false
|
||||||
|
|
||||||
|
## clusterDomain as defined for your k8s cluster
|
||||||
|
clusterDomain: cluster.local
|
||||||
|
|
||||||
###
|
###
|
||||||
### Global Settings
|
### Global Settings
|
||||||
###
|
###
|
||||||
@ -33,6 +36,9 @@ namespaceCreate: false
|
|||||||
## Set to true on install
|
## Set to true on install
|
||||||
initialize: false
|
initialize: false
|
||||||
|
|
||||||
|
## Set cluster name
|
||||||
|
# clusterName:
|
||||||
|
|
||||||
## Pulsar Metadata Prefix
|
## Pulsar Metadata Prefix
|
||||||
##
|
##
|
||||||
## By default, pulsar stores all the metadata at root path.
|
## By default, pulsar stores all the metadata at root path.
|
||||||
@ -541,6 +547,7 @@ pulsar_metadata:
|
|||||||
## set an existing configuration store
|
## set an existing configuration store
|
||||||
# configurationStore:
|
# configurationStore:
|
||||||
configurationStoreMetadataPrefix: ""
|
configurationStoreMetadataPrefix: ""
|
||||||
|
configurationStorePort: 2181
|
||||||
|
|
||||||
## optional, you can provide your own zookeeper metadata store for other components
|
## optional, you can provide your own zookeeper metadata store for other components
|
||||||
# to use this, you should explicit set components.zookeeper to false
|
# to use this, you should explicit set components.zookeeper to false
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user