My application requires an arbitrary number of pods to expose their services to the internet. I'm not sure what the best approach is to allow discoverability of these pods from an external server (let's call it the client).
The workflow consists of an external server(the client) requesting a "Workshop" deployment be created, and providing a Workshop ID. Kubernetes then creates the deployment, and a pod alongside it with the API that the client will use running in a container on the pod.
The client should be able to see all Workshop pod instances, and must be able to identify which Pod belongs to which workshop.
I've simplified the actual kubernetes infrastructure. It uses CRDs and operators to setup more elaborate infrastructure, but only the pod's API and its discoverability should be of concern to the client. What is the best way to approach this?