Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[tempo] LoadBalancer cannot simultaneously support TCP and UDP protocols #3317

Merged
merged 30 commits into from
Dec 10, 2024
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
d48e722
LoadBalancer cannot simultaneously support TCP and UDP protocols
CostisC Sep 17, 2024
5e79af5
Merge branch 'main' into nlb-protocols
Sheikh-Abubaker Sep 17, 2024
8c379b0
README.md should be generated by helm-docs
CostisC Sep 22, 2024
932b073
Merge branch 'main' into nlb-protocols
CostisC Sep 25, 2024
f017993
Merge branch 'main' into nlb-protocols
Sheikh-Abubaker Sep 25, 2024
b96eafa
Merge branch 'main' into nlb-protocols
Sheikh-Abubaker Sep 26, 2024
24e1044
Merge branch 'main' into nlb-protocols
Sheikh-Abubaker Sep 27, 2024
dc0a375
README.md should be generated by helm-docs
CostisC Oct 2, 2024
e8e2578
Merge branch 'main' into nlb-protocols
CostisC Oct 2, 2024
e3babe0
Merge branch 'main' into nlb-protocols
Sheikh-Abubaker Oct 13, 2024
ef3172c
Merge branch 'main' into nlb-protocols
zanhsieh Nov 3, 2024
ff3e751
Merge branch 'main' into nlb-protocols
CostisC Nov 4, 2024
d2e92e1
Merge branch 'main' into nlb-protocols
CostisC Nov 30, 2024
be86486
README.md update
CostisC Dec 7, 2024
369ef01
add option to deploy podmonitor and add option to remove svc
KyriosGN0 Jul 10, 2024
5e7ed2e
fix values.yaml
KyriosGN0 Jul 11, 2024
0572e21
fix docs
KyriosGN0 Jul 11, 2024
ba3dd27
fix docs and values
KyriosGN0 Jul 11, 2024
efd6253
fix values.yaml
KyriosGN0 Jul 14, 2024
09b6f33
bump chart version
KyriosGN0 Nov 11, 2024
bc26a75
remove service
KyriosGN0 Dec 3, 2024
169b6cc
update readme
KyriosGN0 Dec 3, 2024
c64470b
fix multiline template for ingester.zoneAwareReplicationMap helper
javiermolinar Dec 3, 2024
d469c5d
bump version
javiermolinar Dec 3, 2024
147f2f9
Update rollout-operator chart with latest version
charleskorn Nov 29, 2024
cb2811f
docs
javiermolinar Dec 3, 2024
f032814
bump version in Chart.yaml
CostisC Dec 9, 2024
fd9dc69
Resolve version conflict
CostisC Dec 10, 2024
181e3aa
Resolve version conflict
CostisC Dec 10, 2024
0cf9c75
Merge branch 'main' into nlb-protocols
CostisC Dec 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion charts/tempo/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apiVersion: v2
name: tempo
description: Grafana Tempo Single Binary Mode
type: application
version: 1.11.0
version: 1.11.1
appVersion: 2.5.0
engine: gotpl
home: https://grafana.net
Expand Down
5 changes: 4 additions & 1 deletion charts/tempo/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# tempo

![Version: 1.11.0](https://img.shields.io/badge/Version-1.11.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.5.0](https://img.shields.io/badge/AppVersion-2.5.0-informational?style=flat-square)
![Version: 1.11.1](https://img.shields.io/badge/Version-1.11.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 2.5.0](https://img.shields.io/badge/AppVersion-2.5.0-informational?style=flat-square)

Grafana Tempo Single Binary Mode

Expand Down Expand Up @@ -39,7 +39,10 @@ Grafana Tempo Single Binary Mode
| replicas | int | `1` | Define the amount of instances |
| securityContext | object | `{"fsGroup":10001,"runAsGroup":10001,"runAsNonRoot":true,"runAsUser":10001}` | securityContext for container |
| service.annotations | object | `{}` | |
| service.clusterIP | string | `""` | |
| service.labels | object | `{}` | |
| service.loadBalancerIP | string | `nil` | IP address, in case of 'type: LoadBalancer' |
| service.protocol | string | `"TCP"` | If service type is LoadBalancer, the exposed protocol can either be "UDP", "TCP" or "UDP,TCP" |
| service.targetPort | string | `""` | |
| service.type | string | `"ClusterIP"` | |
| serviceAccount.annotations | object | `{}` | Annotations for the service account |
Expand Down
88 changes: 88 additions & 0 deletions charts/tempo/templates/_ports.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
{{/* ~=~=~ Partial Templates of exposed Ports ~=~=~ */}}

{{/* UDP sockets */}}
{{- define "tempo.udp"}}
{{- $endpoint := .Values.tempo.receivers.jaeger.protocols.thrift_compact }}
{{- with $endpoint.endpoint }}
{{- $port := regexSplit ":" . -1 | last }}
- name: tempo-jaeger-thrift-compact
port: {{ $port }}
protocol: UDP
targetPort: 6831
{{- end }}
{{- $endpoint := .Values.tempo.receivers.jaeger.protocols.thrift_binary }}
{{- with $endpoint.endpoint }}
{{- $port := regexSplit ":" . -1 | last }}
- name: tempo-jaeger-thrift-binary
port: {{ $port }}
protocol: UDP
targetPort: 6832
{{- end }}
{{- /* end of define */}}
{{- end }}

{{/* TCP sockets */}}
{{- define "tempo.tcp"}}
- name: tempo-prom-metrics
port: 3100
protocol: TCP
targetPort: 3100
{{- if .Values.tempoQuery.enabled }}
- name: jaeger-metrics
port: 16687
protocol: TCP
targetPort: 16687
- name: tempo-query-jaeger-ui
port: {{ .Values.tempoQuery.service.port }}
targetPort: {{ .Values.tempoQuery.service.port }}
{{- end }}
{{- $endpoint := .Values.tempo.receivers.jaeger.protocols.thrift_http }}
{{- with $endpoint.endpoint }}
{{- $port := regexSplit ":" . -1 | last }}
- name: tempo-jaeger-thrift-http
port: {{ $port }}
protocol: TCP
targetPort: 14268
{{- end }}
{{- $endpoint := .Values.tempo.receivers.jaeger.protocols.grpc }}
{{- with $endpoint.endpoint }}
{{- $port := regexSplit ":" . -1 | last }}
- name: grpc-tempo-jaeger
port: {{ $port }}
protocol: TCP
targetPort: 14250
{{- end }}
- name: tempo-zipkin
port: 9411
protocol: TCP
targetPort: 9411
- name: tempo-otlp-legacy
port: 55680
protocol: TCP
targetPort: 55680
- name: tempo-otlp-http-legacy
port: 55681
protocol: TCP
targetPort: 55681
{{- $endpoint := .Values.tempo.receivers.otlp.protocols.grpc }}
{{- with $endpoint.endpoint }}
{{- $port := regexSplit ":" . -1 | last }}
- name: grpc-tempo-otlp
port: {{ $port }}
protocol: TCP
targetPort: 4317
{{- end }}
{{- $endpoint := .Values.tempo.receivers.otlp.protocols.http }}
{{- with $endpoint.endpoint }}
{{- $port := regexSplit ":" . -1 | last }}
- name: tempo-otlp-http
port: {{ $port }}
protocol: TCP
targetPort: 4318
{{- end }}
- name: tempo-opencensus
port: 55678
protocol: TCP
targetPort: 55678
{{- /* end of define */}}
{{- end }}
65 changes: 15 additions & 50 deletions charts/tempo/templates/service.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@

apiVersion: v1
kind: Service
metadata:
Expand Down Expand Up @@ -32,56 +33,20 @@ spec:
{{- end }}
{{- end }}
ports:
- name: tempo-prom-metrics
port: 3100
targetPort: 3100
{{- if .Values.tempoQuery.enabled }}
- name: jaeger-metrics
port: 16687
targetPort: 16687
- name: tempo-query-jaeger-ui
port: {{ .Values.tempoQuery.service.port }}
targetPort: {{ .Values.tempoQuery.service.port }}
{{- if (eq .Values.service.type "LoadBalancer") }}
{{- $protocol := .Values.service.protocol | default "TCP" }}
{{- if contains "UDP" $protocol }}
{{- include "tempo.udp" . | indent 2 }}
{{- end }}
{{- if contains "TCP" $protocol }}
{{- include "tempo.tcp" . | indent 2 }}
{{- end }}
{{- else }}
{{- include "tempo.udp" . | indent 2 }}
{{- include "tempo.tcp" . | indent 2 }}
{{- end }}
- name: tempo-jaeger-thrift-compact
port: 6831
protocol: UDP
targetPort: 6831
- name: tempo-jaeger-thrift-binary
port: 6832
protocol: UDP
targetPort: 6832
- name: tempo-jaeger-thrift-http
port: 14268
protocol: TCP
targetPort: 14268
- name: grpc-tempo-jaeger
port: 14250
protocol: TCP
targetPort: 14250
- name: tempo-zipkin
port: 9411
protocol: TCP
targetPort: 9411
- name: tempo-otlp-legacy
port: 55680
protocol: TCP
targetPort: 55680
- name: tempo-otlp-http-legacy
port: 55681
protocol: TCP
targetPort: 4318
- name: grpc-tempo-otlp
port: 4317
protocol: TCP
targetPort: 4317
- name: tempo-otlp-http
port: 4318
protocol: TCP
targetPort: 4318
- name: tempo-opencensus
port: 55678
protocol: TCP
targetPort: 55678
selector:
{{- include "tempo.selectorLabels" . | nindent 4 }}



6 changes: 6 additions & 0 deletions charts/tempo/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -261,6 +261,12 @@ serviceAccount:

service:
type: ClusterIP
clusterIP: ""
# -- (string) IP address, in case of 'type: LoadBalancer'
loadBalancerIP:
# -- If service type is LoadBalancer, the exposed protocol can either be "UDP", "TCP" or "UDP,TCP"
protocol: "TCP"

annotations: {}
labels: {}
targetPort: ""
Expand Down
Loading