apiVersion: apps/v1 kind: Deployment metadata: name: hubble-relay namespace: kube-system labels: k8s-app: hubble-relay app.kubernetes.io/name: hubble-relay app.kubernetes.io/part-of: cilium spec: replicas: 1 selector: matchLabels: k8s-app: hubble-relay strategy: rollingUpdate: maxUnavailable: 1 type: RollingUpdate template: metadata: annotations: labels: k8s-app: hubble-relay app.kubernetes.io/name: hubble-relay app.kubernetes.io/part-of: cilium spec: securityContext: fsGroup: 65532 seccompProfile: type: RuntimeDefault containers: - name: hubble-relay securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsGroup: 65532 runAsNonRoot: true runAsUser: 65532 seccompProfile: type: RuntimeDefault image: "quay.io/cilium/hubble-relay:v1.18.4@sha256:6d350cb1c84b847adb152173debef1f774126c69de21a5921a1e6a23b8779723" imagePullPolicy: IfNotPresent command: - hubble-relay args: - serve ports: - name: grpc containerPort: 4245 readinessProbe: grpc: port: 4222 timeoutSeconds: 3 livenessProbe: grpc: port: 4222 timeoutSeconds: 10 initialDelaySeconds: 10 periodSeconds: 10 failureThreshold: 12 startupProbe: grpc: port: 4222 initialDelaySeconds: 10 failureThreshold: 20 periodSeconds: 3 volumeMounts: - name: config mountPath: /etc/hubble-relay readOnly: true - name: tls mountPath: /var/lib/hubble-relay/tls readOnly: true terminationMessagePolicy: FallbackToLogsOnError restartPolicy: Always priorityClassName: serviceAccountName: "hubble-relay" automountServiceAccountToken: false terminationGracePeriodSeconds: 1 affinity: podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: k8s-app: cilium topologyKey: kubernetes.io/hostname nodeSelector: kubernetes.io/os: linux volumes: - name: config configMap: name: hubble-relay-config items: - key: config.yaml path: config.yaml - name: tls projected: defaultMode: 0400 sources: - secret: name: hubble-relay-client-certs items: - key: tls.crt path: client.crt - key: tls.key path: client.key - key: ca.crt path: hubble-server-ca.crt