Author Topic: Large Deployement of LinuxMce  (Read 2475 times)

marcellodj

  • Making baby steps
  • Posts: 3
    • View Profile
Large Deployement of LinuxMce
« on: October 21, 2008, 10:10:27 am »
Morning,
i'm investigating about adoption of linuxmce in our school multimedia lab.
We want use linuxmce  as backend server for approx 25-30 md  to serve sat, live tv, and videos:
i know that linuxmce is a great choice for home entertainment/domotics, but i can find any clue about wide installations: anyone experienced with similar scenarios? how about server specs, usability, bandwith, user experience?
thanks for replies.

posde

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 2974
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: Large Deployement of LinuxMce
« Reply #1 on: October 21, 2008, 10:23:44 am »
Sounds interesting.

20-30MDs with standard def video means quite a bit of bandwidth needed. Would each MD need a dedicated stream, or all of the MDs going to watch the same stuff?

rgds
Oliver

marcellodj

  • Making baby steps
  • Posts: 3
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #2 on: October 21, 2008, 01:07:13 pm »
Is a self-access video library, meaning that each user can surf different media assets.

colinjones

  • Alumni
  • LinuxMCE God
  • *
  • Posts: 3003
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #3 on: October 21, 2008, 04:05:31 pm »
As posde points out, scaling to that level of bandwidth requirement if all MDs where being used simultaneously is likely to be a problem - especially Live TV.

Potentially, you could workaround by breaking the problem up into 2 or 3 cores serving their own separate networks, and working out a simple way to replicate your content backends so all have access to the same media...

For 30 streams at decent quality live DTV you are going to need to be able to push at least 200Mb/s. On a Gb network you can expect a decent spec core to push out at least 300Mb/s.... so its possible, but with so many high bandwidth streams, congestion control, overheads, etc I would be concerned it might not be able to generate enough stable throughput to get smooth video... its a very interesting idea tho... bear in mind a Gb core pushing 300+Mb/s in a single transfer is a very different question to pushing 30 smaller streams for many reasons... it could dramatically reduce the total throughput.. dunno

grepico

  • Veteran
  • ***
  • Posts: 102
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #4 on: October 21, 2008, 05:49:01 pm »
I've got a commercial installation that has 17 MD's.  However, there are only a few different video streams feeding at one time.  Typically 3 different video files playing on a few TV's each and a number of still images displayed on other TV's.  I currently do not have any problems, but when setting it up I tried playing different video on each TV and after 7 or 8 I began to notice video/audio stutter. 

I didn't do any extensive testing as the system design wasn't intended to support that many different streams.  I'm only posting this to support the other replies in that I don't think one core could support that many MD's.  I would probably look at something like colin is suggesting, break up the campus into "zones" with a core in each.  For live TV this shouldn't be an issue as you can assign tv feeds as you like. 

With regards to stored media this raises an interesting question that maybe someone else could answer.  The question is, can multiple cores share a networked storage device?  i.e. Could you locate all your stored media on a NAS device and have all the cores use it?  If so, then that's what I'd do.  It gives you distributed processing while maintaining centralized storage.

Don't know if I helped at all but I hope so.  Please keep us updated, I'm interested in how this turns out.

marcellodj

  • Making baby steps
  • Posts: 3
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #5 on: October 21, 2008, 06:22:42 pm »
By first, thanks to all for interesting suggestions!

Yes i completely agree that a single core installation can be a  BIG problem due to Eth overload, pci bus saturation  and so on; also a multihomed core (eg a core with 3-4 internal interfaces) i think will be burned by 20-30 clients, video and generally multimedia are very hungry of horsepower and bandwidth.

So, for an enteprise class scenario the right approach is 3-4 cores, 1 nas (..samba) to share rips and stills: i ll do some testing and keep you informed.

Best regards.

deffcon

  • Veteran
  • ***
  • Posts: 94
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #6 on: October 21, 2008, 10:15:09 pm »
Hi,

Wy don' t you cluster the three "zones" database, filesystem, storage, cpy, memory etc ...)


Dave

posde

  • Administrator
  • LinuxMCE God
  • *****
  • Posts: 2974
  • Wastes Life On LinuxMCE Since 2007
    • View Profile
    • My Home
Re: Large Deployement of LinuxMce
« Reply #7 on: October 21, 2008, 11:23:24 pm »
You might want to look into different systems.

If I were you, I would setup a central VDR system with vdr-plugin-streamdev-server for LiveTV, and add samba storage for stored videos, and put all of that under a nice web interface, where you use VLC or Xine to do the display. Each of the client station can network boot using LTSP, and you'd be done with it.

LinuxMCE might not be the best solution to your problem.

rgds
Oliver

justdeb

  • Veteran
  • ***
  • Posts: 134
  • Hope to become good enough to teach others
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #8 on: October 21, 2008, 11:32:43 pm »
In addition to this you would also need to have a seperate NAS attached to each of these cores as the bandwith could still be a problem - depending on the amount of data you are looking to move around

Linuxmce is problably not going to work in this solution - i do know from when i was looking at Mythtv that they run libraries and large scale installs and it works quite well.

Regards

Justin

colinjones

  • Alumni
  • LinuxMCE God
  • *
  • Posts: 3003
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #9 on: October 22, 2008, 12:06:42 am »
The way I saw it was to have 3 NAS, as you say, one on each of 3 Core internal networks (for instance), each dual homed with a simple Gb network linking them and some simple data replication technology to keep them in sync. This would mean you wouldn't have to modify the way LMCE works at all, but still transparently share all your media, and have a level of data redundancy built in....

Zaerc

  • Alumni
  • LinuxMCE God
  • *
  • Posts: 2256
  • Department of Redundancy Department.
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #10 on: October 22, 2008, 12:11:23 am »
Having the media spread out over the internal drives of media directors (or a couple of NASes) on a switched network should reduce the load on the core significantly.
"Change is inevitable. Progress is optional."
-- Anonymous


colinjones

  • Alumni
  • LinuxMCE God
  • *
  • Posts: 3003
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #11 on: October 22, 2008, 12:17:44 am »
That's very true - make sure you get a good enterprise grade switch that you can be sure of no blocking. Distribute the media over lots of smaller NAS devices (I would avoid putting it on the internal drives of the MDs, just for the purposes of rebuilding easily, and being able to turn off MDs that are not in use... just a thought). For Live TV you would probably need to do the same and distribute the tuner cards around to reduce the individual load on each MD/Core, and put the work back to the switch which can handle it.

A good ent-grade 48 port Gb switch must have at least a 48Gb backbone...

justdeb

  • Veteran
  • ***
  • Posts: 134
  • Hope to become good enough to teach others
    • View Profile
Re: Large Deployement of LinuxMce
« Reply #12 on: October 22, 2008, 09:56:40 am »
so would you be thinking of a cisco managed switch (ie Catalyst 500 or something similar) ?

In relation to the NAS units i assume you would be looking at purpose built units and configured specifically (ie raid 1/2)

Would it be possible to cache the data on the md's before the users started - ie have a process to kick off the process 5 minutes before a class started so that when the user started off the 'lesson' it would be playing cached data and whilst the data is being watched the next segment of data is being cached.


Justin


« Last Edit: October 22, 2008, 09:58:50 am by justdeb »