We've got Nimble DVR running on an EC2 instance, and set up to store the DVR files on a mounted S3 drive. This seems to work OK for a single stream, but we have now added three more streams (the plan is to have approximately 100 DVR streams) and the playback is choppy and freezes very often and isn't usable. Our developer says this is caused by the S3 I/O speed, and that we can't use S3. Just wanted to run it past this forum. Because of the large number of DVR streams we are hoping to record, using SSD EBS volumes is too expensive for us.
Has anybody successfully integrated S3 with Nimble DVR playback? Or does anybody have any tips or solution that might help us out?
Your Devs are absolutely right, there are no guarantees it will work reliably, and scaling would be probably difficult. We are not aware of any success stories about such a usage.
Multiple DVR streams are heavy writers (and readers), so it's best to have locally connected storage system to a server for storing its data.
I recommend contacting Amazon's support to clarify, what exactly in and out bandwidth allowed for a S3 storage, and divide it by an average bitrate of a DVR stream you use. It will give you insight on the maximum number of streams you may put and get from S3.
Anyway, I doubt it will be reliable, as some network issues may ruin your DVR recordings.
Just a further note to this, in case anybody is interested. We have used a different technique and set up AWS Storage Gateway to mount the S3 bucket as a drive on our Nimble EC2 instance. We are now testing with around 100 DVR streams and the DVR playback is running smoothly. Next step is to do more testing under production loads as we begin to integrate some replays into our front-ends, I'll report back when we have some results.
Thank you for sharing your success.
We actually never tried AWS Storage Gateway.
It sounds it will work fine if sufficient bandwidth provided, but does AWS guarantee constant availability of such a storage?
I suggest checking some corner cases, like Nimble failure (just kill -9 it from a console) after recording lets say a dozen of streams which were recorded for at least a day. How fast after start does Nimble allow viewing recorded streams in such a case?
and required to achieve the purposes illustrated in the
If you want to know more or withdraw your consent to all or some of the cookies, please
refer to the