apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: '2026-09-19T17:01:27Z'
  generateName: metallb-speaker-
  generation: 1
  labels:
    app.kubernetes.io/component: speaker
    app.kubernetes.io/instance: metallb
    app.kubernetes.io/name: metallb
    controller-revision-hash: 7c88ccf678
    pod-template-generation: '1'
  managedFields:
  - apiVersion: v1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:generateName: {}
        f:labels:
          .: {}
          f:app.kubernetes.io/component: {}
          f:app.kubernetes.io/instance: {}
          f:app.kubernetes.io/name: {}
          f:controller-revision-hash: {}
          f:pod-template-generation: {}
        f:ownerReferences:
          .: {}
          k:{"uid":"410369ba-a383-4d22-a908-7d953610b1e3"}: {}
      f:spec:
        f:affinity:
          .: {}
          f:nodeAffinity:
            .: {}
            f:requiredDuringSchedulingIgnoredDuringExecution: {}
        f:containers:
          k:{"name":"speaker"}:
            .: {}
            f:args: {}
            f:env:
              .: {}
              k:{"name":"METALLB_HOST"}:
                .: {}
                f:name: {}
                f:valueFrom:
                  .: {}
                  f:fieldRef: {}
              k:{"name":"METALLB_ML_BIND_ADDR"}:
                .: {}
                f:name: {}
                f:valueFrom:
                  .: {}
                  f:fieldRef: {}
              k:{"name":"METALLB_ML_BIND_PORT"}:
                .: {}
                f:name: {}
                f:value: {}
              k:{"name":"METALLB_ML_LABELS"}:
                .: {}
                f:name: {}
                f:value: {}
              k:{"name":"METALLB_ML_SECRET_KEY_PATH"}:
                .: {}
                f:name: {}
                f:value: {}
              k:{"name":"METALLB_NODE_NAME"}:
                .: {}
                f:name: {}
                f:valueFrom:
                  .: {}
                  f:fieldRef: {}
              k:{"name":"METALLB_POD_NAME"}:
                .: {}
                f:name: {}
                f:valueFrom:
                  .: {}
                  f:fieldRef: {}
            f:image: {}
            f:imagePullPolicy: {}
            f:livenessProbe:
              .: {}
              f:failureThreshold: {}
              f:httpGet:
                .: {}
                f:host: {}
                f:path: {}
                f:port: {}
                f:scheme: {}
              f:initialDelaySeconds: {}
              f:periodSeconds: {}
              f:successThreshold: {}
              f:timeoutSeconds: {}
            f:name: {}
            f:ports:
              .: {}
              k:{"containerPort":7946,"protocol":"TCP"}:
                .: {}
                f:containerPort: {}
                f:hostPort: {}
                f:name: {}
                f:protocol: {}
              k:{"containerPort":7946,"protocol":"UDP"}:
                .: {}
                f:containerPort: {}
                f:hostPort: {}
                f:name: {}
                f:protocol: {}
              k:{"containerPort":9120,"protocol":"TCP"}:
                .: {}
                f:containerPort: {}
                f:hostPort: {}
                f:name: {}
                f:protocol: {}
            f:readinessProbe:
              .: {}
              f:failureThreshold: {}
              f:httpGet:
                .: {}
                f:host: {}
                f:path: {}
                f:port: {}
                f:scheme: {}
              f:initialDelaySeconds: {}
              f:periodSeconds: {}
              f:successThreshold: {}
              f:timeoutSeconds: {}
            f:resources: {}
            f:securityContext:
              .: {}
              f:allowPrivilegeEscalation: {}
              f:capabilities:
                .: {}
                f:add: {}
                f:drop: {}
              f:readOnlyRootFilesystem: {}
            f:terminationMessagePath: {}
            f:terminationMessagePolicy: {}
            f:volumeMounts:
              .: {}
              k:{"mountPath":"/etc/metallb"}:
                .: {}
                f:mountPath: {}
                f:name: {}
              k:{"mountPath":"/etc/metallb/memberlist"}:
                .: {}
                f:mountPath: {}
                f:name: {}
                f:readOnly: {}
              k:{"mountPath":"/etc/ml_secret_key"}:
                .: {}
                f:mountPath: {}
                f:name: {}
        f:dnsPolicy: {}
        f:enableServiceLinks: {}
        f:hostNetwork: {}
        f:nodeSelector: {}
        f:restartPolicy: {}
        f:schedulerName: {}
        f:securityContext: {}
        f:serviceAccount: {}
        f:serviceAccountName: {}
        f:terminationGracePeriodSeconds: {}
        f:tolerations: {}
        f:volumes:
          .: {}
          k:{"name":"memberlist"}:
            .: {}
            f:name: {}
            f:secret:
              .: {}
              f:defaultMode: {}
              f:secretName: {}
          k:{"name":"memberlist-config"}:
            .: {}
            f:configMap:
              .: {}
              f:defaultMode: {}
              f:name: {}
              f:optional: {}
            f:name: {}
          k:{"name":"metallb-excludel2"}:
            .: {}
            f:configMap:
              .: {}
              f:defaultMode: {}
              f:name: {}
            f:name: {}
    manager: kube-controller-manager
    operation: Update
    time: '2026-09-19T17:01:27Z'
  - apiVersion: v1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        f:conditions:
          k:{"type":"ContainersReady"}:
            .: {}
            f:lastProbeTime: {}
            f:lastTransitionTime: {}
            f:observedGeneration: {}
            f:status: {}
            f:type: {}
          k:{"type":"Initialized"}:
            .: {}
            f:lastProbeTime: {}
            f:lastTransitionTime: {}
            f:observedGeneration: {}
            f:status: {}
            f:type: {}
          k:{"type":"PodReadyToStartContainers"}:
            .: {}
            f:lastProbeTime: {}
            f:lastTransitionTime: {}
            f:observedGeneration: {}
            f:status: {}
            f:type: {}
          k:{"type":"PodScheduled"}:
            f:observedGeneration: {}
          k:{"type":"Ready"}:
            .: {}
            f:lastProbeTime: {}
            f:lastTransitionTime: {}
            f:observedGeneration: {}
            f:status: {}
            f:type: {}
        f:containerStatuses: {}
        f:hostIP: {}
        f:hostIPs: {}
        f:observedGeneration: {}
        f:phase: {}
        f:podIP: {}
        f:podIPs:
          .: {}
          k:{"ip":"172.29.21.228"}:
            .: {}
            f:ip: {}
        f:resources: {}
        f:startTime: {}
    manager: kubelet
    operation: Update
    subresource: status
    time: '2026-09-19T17:01:40Z'
  name: metallb-speaker-hbgnm
  namespace: metallb-system
  ownerReferences:
  - apiVersion: apps/v1
    blockOwnerDeletion: true
    controller: true
    kind: DaemonSet
    name: metallb-speaker
    uid: 410369ba-a383-4d22-a908-7d953610b1e3
  resourceVersion: '173852'
  uid: 5bcfa357-d2da-4125-ac39-d03e4c974160
spec:
  affinity:
    nodeAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
        - matchFields:
          - key: metadata.name
            operator: In
            values:
            - csfarm-controlplane-03
  containers:
  - args:
    - --port=9120
    - --log-level=info
    env:
    - name: METALLB_NODE_NAME
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: spec.nodeName
    - name: METALLB_HOST
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: status.hostIP
    - name: METALLB_ML_BIND_ADDR
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: status.podIP
    - name: METALLB_ML_LABELS
      value: app.kubernetes.io/name=metallb,app.kubernetes.io/component=speaker
    - name: METALLB_ML_BIND_PORT
      value: '7946'
    - name: METALLB_ML_SECRET_KEY_PATH
      value: /etc/ml_secret_key
    - name: METALLB_POD_NAME
      valueFrom:
        fieldRef:
          apiVersion: v1
          fieldPath: metadata.name
    image: quay.io/metallb/speaker:v0.16.1
    imagePullPolicy: IfNotPresent
    livenessProbe:
      failureThreshold: 3
      httpGet:
        host: 127.0.0.1
        path: /healthz
        port: 17472
        scheme: HTTP
      initialDelaySeconds: 10
      periodSeconds: 10
      successThreshold: 1
      timeoutSeconds: 1
    name: speaker
    ports:
    - containerPort: 9120
      hostPort: 9120
      name: metricshttps
      protocol: TCP
    - containerPort: 7946
      hostPort: 7946
      name: memberlist-tcp
      protocol: TCP
    - containerPort: 7946
      hostPort: 7946
      name: memberlist-udp
      protocol: UDP
    readinessProbe:
      failureThreshold: 3
      httpGet:
        host: 127.0.0.1
        path: /readyz
        port: 17472
        scheme: HTTP
      initialDelaySeconds: 10
      periodSeconds: 10
      successThreshold: 1
      timeoutSeconds: 1
    resources: {}
    securityContext:
      allowPrivilegeEscalation: false
      capabilities:
        add:
        - NET_RAW
        drop:
        - ALL
      readOnlyRootFilesystem: true
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
    volumeMounts:
    - mountPath: /etc/metallb/memberlist
      name: memberlist-config
      readOnly: true
    - mountPath: /etc/ml_secret_key
      name: memberlist
    - mountPath: /etc/metallb
      name: metallb-excludel2
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: kube-api-access-txh54
      readOnly: true
  dnsPolicy: ClusterFirst
  enableServiceLinks: true
  hostNetwork: true
  nodeName: csfarm-controlplane-03
  nodeSelector:
    kubernetes.io/os: linux
  preemptionPolicy: PreemptLowerPriority
  priority: 0
  restartPolicy: Always
  schedulerName: default-scheduler
  securityContext: {}
  serviceAccount: metallb-speaker
  serviceAccountName: metallb-speaker
  terminationGracePeriodSeconds: 0
  tolerations:
  - effect: NoSchedule
    key: node-role.kubernetes.io/master
    operator: Exists
  - effect: NoSchedule
    key: node-role.kubernetes.io/control-plane
    operator: Exists
  - effect: NoExecute
    key: node.kubernetes.io/not-ready
    operator: Exists
  - effect: NoExecute
    key: node.kubernetes.io/unreachable
    operator: Exists
  - effect: NoSchedule
    key: node.kubernetes.io/disk-pressure
    operator: Exists
  - effect: NoSchedule
    key: node.kubernetes.io/memory-pressure
    operator: Exists
  - effect: NoSchedule
    key: node.kubernetes.io/pid-pressure
    operator: Exists
  - effect: NoSchedule
    key: node.kubernetes.io/unschedulable
    operator: Exists
  - effect: NoSchedule
    key: node.kubernetes.io/network-unavailable
    operator: Exists
  volumes:
  - name: memberlist
    secret:
      defaultMode: 420
      secretName: metallb-memberlist
  - configMap:
      defaultMode: 256
      name: metallb-excludel2
    name: metallb-excludel2
  - configMap:
      defaultMode: 420
      name: metallb-memberlist-config
      optional: true
    name: memberlist-config
  - name: kube-api-access-txh54
    projected:
      defaultMode: 420
      sources:
      - serviceAccountToken:
          expirationSeconds: 3607
          path: token
      - configMap:
          items:
          - key: ca.crt
            path: ca.crt
          name: kube-root-ca.crt
      - downwardAPI:
          items:
          - fieldRef:
              apiVersion: v1
              fieldPath: metadata.namespace
            path: namespace
status:
  conditions:
  - lastProbeTime: null
    lastTransitionTime: '2026-09-19T17:01:29Z'
    observedGeneration: 1
    status: 'True'
    type: PodReadyToStartContainers
  - lastProbeTime: null
    lastTransitionTime: '2026-09-19T17:01:27Z'
    observedGeneration: 1
    status: 'True'
    type: Initialized
  - lastProbeTime: null
    lastTransitionTime: '2026-09-19T17:01:40Z'
    observedGeneration: 1
    status: 'True'
    type: Ready
  - lastProbeTime: null
    lastTransitionTime: '2026-09-19T17:01:40Z'
    observedGeneration: 1
    status: 'True'
    type: ContainersReady
  - lastProbeTime: null
    lastTransitionTime: '2026-09-19T17:01:27Z'
    observedGeneration: 1
    status: 'True'
    type: PodScheduled
  containerStatuses:
  - containerID: containerd://9e9f9481998a95059bfaea0b89e399f182714b439606e0ceceacd5e43af130bf
    image: quay.io/metallb/speaker:v0.16.1
    imageID: quay.io/metallb/speaker@sha256:16561e96531e1852d5c229ad7fae6e994dcfa983ff7f4de6b6208b34a4e2ddbc
    lastState: {}
    name: speaker
    ready: true
    resources: {}
    restartCount: 0
    started: true
    state:
      running:
        startedAt: '2026-09-19T17:01:30Z'
    user:
      linux:
        gid: 0
        supplementalGroups:
        - 0
        uid: 0
    volumeMounts:
    - mountPath: /etc/metallb/memberlist
      name: memberlist-config
      readOnly: true
      recursiveReadOnly: Disabled
    - mountPath: /etc/ml_secret_key
      name: memberlist
    - mountPath: /etc/metallb
      name: metallb-excludel2
    - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
      name: kube-api-access-txh54
      readOnly: true
      recursiveReadOnly: Disabled
  hostIP: 172.29.21.228
  hostIPs:
  - ip: 172.29.21.228
  observedGeneration: 1
  phase: Running
  podIP: 172.29.21.228
  podIPs:
  - ip: 172.29.21.228
  qosClass: BestEffort
  resources: {}
  startTime: '2026-09-19T17:01:27Z'
