apiVersion: v1 kind: Service metadata: annotations: core.openstack.org/ingress_create: "false" dnsmasq.network.openstack.org/hostname: ironic-internal.openstack.svc endpoint: internal metallb.io/ip-allocated-from-pool: ctlplane metallb.universe.tf/address-pool: ctlplane metallb.universe.tf/allow-shared-ip: ctlplane metallb.universe.tf/loadBalancerIPs: 192.168.122.80 creationTimestamp: "2025-10-11T10:55:14Z" labels: component: api endpoint: internal osctlplane: "" osctlplane-service: ironic-api service: ironic name: ironic-internal namespace: openstack ownerReferences: - apiVersion: ironic.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: IronicAPI name: ironic-api uid: 88af1ac1-bf27-490c-87de-a949d50c4741 resourceVersion: "41428" uid: 5a564768-8bc2-4780-b60e-7b294299d30e spec: allocateLoadBalancerNodePorts: true clusterIP: 172.30.19.45 clusterIPs: - 172.30.19.45 externalTrafficPolicy: Cluster internalTrafficPolicy: Cluster ipFamilies: - IPv4 ipFamilyPolicy: SingleStack ports: - name: ironic-internal nodePort: 31799 port: 6385 protocol: TCP targetPort: 6385 selector: component: api service: ironic sessionAffinity: None type: LoadBalancer status: loadBalancer: ingress: - ip: 192.168.122.80 ipMode: VIP