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-12-04T22:35:37Z" 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: 92160d1d-1b59-49b0-85f1-a691ed4f3d80 resourceVersion: "32046" uid: b96e9ba7-2a96-4bbf-84e8-24c57c8e9c29 spec: allocateLoadBalancerNodePorts: true clusterIP: 172.30.149.213 clusterIPs: - 172.30.149.213 externalTrafficPolicy: Cluster internalTrafficPolicy: Cluster ipFamilies: - IPv4 ipFamilyPolicy: SingleStack ports: - name: ironic-internal nodePort: 31751 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