0

I am trying to deploy FFServer on Kubernetes and try to use the power of distributed systems. It's the first time I am using both and so I am a bit confused. Got my Kubernetes setup working on my bare metal server, LoadBalancer and CNI are working flawlessly. I then created an FFServer deployment and a FFServer service. Then I made an NFS storage to share ffserver.conf and feed files, but there is something strange happening.

All my ffserver k8s pods load the ffserver.conf file with not problem, then when I start to stream using ffmpeg the loadbalancer gives my stream to one of my server(i'll call it pod1). The problem is that I can get the stream played if connecting directly to pod1 but will not work if i try to get it from pod2 although pod2 could read the feed.ffm written from pod1.

NFS storage is setup with ReadWriteMany. How could I get it to work? Is there any way to use multiple ffserver without having to ffmpeg to all of them one by one?

absentio
  • 41
  • 1
  • 5
  • How are you connecting to your pods, and from where to check if it's working? How did you configured LB on your bare metal server? Can you post more details regarding your cluster configuration? – Crou Mar 04 '20 at 09:38
  • It boils down to if ffserver can run on a distributed system, looks like you might need a wrapper around it https://medium.com/@arik.cohen/transcoding-video-at-scale-with-piper-dca23eb26fd2 https://github.com/creactiviti/piper https://www.reddit.com/r/ffmpeg/comments/9yoxei/possible_to_encode_across_multiple_machines/ – Tummala Dhanvi Mar 04 '20 at 10:28
  • Thanks for your replies. Regarding @crou question I am using Flannel as CNI, MetalLB as loadbalancer, NFS as storage. I actually have 2 ffserver that shares an nfs volume where ffserver.conf and feed.ffm files are stored. Regarding Tummala I don't want to use other software but ffserver. If FFServer doesn't work I will try with nginx-rtmp instead. – absentio Mar 04 '20 at 15:07

0 Answers0