apiVersion: v1 kind: Service metadata: annotations: core.openstack.org/ingress_create: "false" dnsmasq.network.openstack.org/hostname: placement-internal.openstack.svc endpoint: internal metallb.io/ip-allocated-from-pool: internalapi metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.80 creationTimestamp: "2025-12-04T22:34:55Z" labels: endpoint: internal osctlplane: "" osctlplane-service: placement owner: placement service: placement name: placement-internal namespace: openstack ownerReferences: - apiVersion: placement.openstack.org/v1beta1 blockOwnerDeletion: true controller: true kind: PlacementAPI name: placement uid: 3126e521-1b48-4120-8e77-399507786284 resourceVersion: "30532" uid: 0a294108-df86-4b19-a7c9-88cce8c13038 spec: allocateLoadBalancerNodePorts: true clusterIP: 172.30.149.113 clusterIPs: - 172.30.149.113 externalTrafficPolicy: Cluster internalTrafficPolicy: Cluster ipFamilies: - IPv4 ipFamilyPolicy: SingleStack ports: - name: placement-internal nodePort: 32405 port: 8778 protocol: TCP targetPort: 8778 selector: owner: placement service: placement sessionAffinity: None type: LoadBalancer status: loadBalancer: ingress: - ip: 172.17.0.80 ipMode: VIP