Files
schemas/k8s/deploy.yaml
T
argoyle f349f6e56f
schemas / vulnerabilities (pull_request) Successful in 1m57s
schemas / check (pull_request) Successful in 2m37s
schemas / check-release (pull_request) Successful in 3m32s
pre-commit / pre-commit (pull_request) Successful in 5m43s
schemas / build (pull_request) Successful in 5m54s
schemas / deploy-prod (pull_request) Has been skipped
fix(k8s): point OTEL endpoint to k8s-monitoring-alloy service
The receiver suffix was stale — the grafana-k8s-monitoring module
deploys a single Service named k8s-monitoring-alloy in the monitoring
namespace, not k8s-monitoring-alloy-receiver. Pods were failing to
ship traces with:

  dial tcp: lookup k8s-monitoring-alloy-receiver.monitoring.svc.cluster.local
  on 100.64.0.10:53: no such host

Drop the -receiver suffix so the OTLP exporter resolves the correct
service.
2026-05-19 07:01:41 +02:00

93 lines
2.1 KiB
YAML

apiVersion: v1
kind: ServiceAccount
metadata:
name: schemas
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/name: schemas
name: schemas
annotations:
kubernetes.io/change-cause: "${TIMESTAMP} Deployed commit id: ${COMMIT}"
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: schemas
strategy:
rollingUpdate:
maxSurge: 1
maxUnavailable: 1
type: RollingUpdate
template:
metadata:
labels:
app.kubernetes.io/name: schemas
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: "app.kubernetes.io/name"
operator: In
values:
- schemas
topologyKey: kubernetes.io/hostname
containers:
- name: schemas
resources:
requests:
cpu: "20m"
memory: "20Mi"
livenessProbe:
httpGet:
path: /health/live
port: 8080
initialDelaySeconds: 10
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 3
readinessProbe:
httpGet:
path: /health/ready
port: 8080
initialDelaySeconds: 5
periodSeconds: 5
timeoutSeconds: 5
failureThreshold: 3
imagePullPolicy: IfNotPresent
image: oci.unbound.se/unboundsoftware/schemas:${COMMIT}
ports:
- name: api
containerPort: 8080
env:
- name: OTEL_EXPORTER_OTLP_ENDPOINT
value: http://k8s-monitoring-alloy.monitoring.svc.cluster.local:4318
envFrom:
- configMapRef:
name: schemas
- secretRef:
name: schemas
restartPolicy: Always
serviceAccountName: schemas
---
apiVersion: v1
kind: Service
metadata:
name: schemas
spec:
ports:
- port: 80
name: api
protocol: TCP
targetPort: 8080
selector:
app.kubernetes.io/name: schemas
type: NodePort