Control and Data Plan for reverse proxying to services running on edge servers

We have the following requirements and wondering which technology works best for control/data plan.

  • Linux based edge servers (order of tens of thousands) can have only outbound HTTP/HTTPS connection running close to sensors/devices. Mutual TLS is required for encrypting traffic.
  • We need to be able to remotely access services running directly on the host or containers (docker swarm, lite version of K8S)
  • The services themselves would be HTTP(S) or any TCP port or even UDP
  • Services need to register .. or ...
  • Clients should be able to resolve through DNS or HTTP to obtain the port numbers
  • Clients should be able to access the services on the edge service through a reverse proxy

Looking for suggestions to handle both the control and data plane.