Kuryr is used on the OpenShift on OpenStack use case to make OpenShift use the Neutron SDN. Therefore, kuryr is creating Neutron (ports, subnets, networks, and security groups) and Octavia resources (loadbalancers, listeners, pools and members) for the OpenShift cluster. When running OpenShift on OpenStack, different OpenShift clusters can be created by the same OpenStack tenant. The way to differentiate if a resource created by Kuryr belongs to one cluster or the other is by using tags. Resources created for 'cluster-1' as tagged with 'cluster-1' while resources generated for cluster-X are tagged with 'cluster=-X'. However, Neutron does not support to directly create the resources with tags, but need to do a follow up call to add the tagging. This is problematic as if there is any error in between both actions, the OpenStack resource will be created but not tagged, and it is not easy to know to what cluster it belongs to (or if it belongs to any). Octavia already implements this support and resources (load balancers) can be created with tags on POST requests: https://docs.openstack.org/api-ref/load-balancer/v2/?expanded=create-a-load-balancer-detail#create-a-load-balancer.