l7mp / stunner

A Kubernetes media gateway for WebRTC. Contact: info@l7mp.io
https://l7mp.io
MIT License
751 stars 58 forks source link

[Feature request] Option to deploy the control plane as a DaemonSet #154

Open sdaberdaku opened 2 months ago

sdaberdaku commented 2 months ago

I was able to deploy STUNner as a STUN service as described in this article, with the dataplane as DaemonSet (I manually converted the Deployment created by the operator). It would be great if you could support this mode of deployment automatically with some annotation in the Gateway CRD (i.e. stunner.l7mp.io/dataplane-deployment-mode: daemonset). The podAntiAffinity approach is doable but you would still need to manually set the number of replicas equal to the number of nodes so that each node gets a stunnerd Pod, which is not ideal if you provision them dynamically with Cluster Autoscaler or Karpenter.

rg0now commented 2 months ago

Full ack. Unfortunately currently there's no resource to automate this, so you'll have to do the manual Deployment-DaemonSet swap. On the long run, we should definitely support this.

I'll leave this one open, maybe someone will jump in and catch it up.