ZoneMinder can be setup to automatically overwrite the oldest data. I believe it can be setup in a client/server type environment so I would imagine that it would be possible to use some sort of hosting service to provide storage space. It would even be possible to spin up a EC2 linux instance and then have encrypted video streams going directly to that. It would eat up bandwidth though so network connectivity would have to be looked at and it would be good to have some sort of QOS on the link.
Personally I would say that cloud services would be more professional just because they tend to be a monthly payment and more complex (spinning up an EC2 instance). The easiest DYI setup I personally see would be to purchase a several terabyte hard drive, put it into a PC and install your recording software. Configure it to overwrite, but leave a chunk of free space and then check it when necessary. If you needed more space you could go to a multi-drive RAID array, but that just adds complexity.
Keep Up with TechRepublic