[olpc-software] Servers

James Clark jjc at sipa.or.th
Thu Mar 30 04:30:10 UTC 2006


On Wed, 2006-03-29 at 16:59 -0500, Christopher Blizzard wrote:

> The model that we've been talking about using is that there's a small 
> server that sits in each school.  This server isn't really anything more 
> than the laptop that you see with a disk enclosure added to the back to 
> a USB port.  The idea is that the software and experience is as close to 
> the same as the laptop itself.  That is, it's largely autonomous and 
> self managing, patches are applied in exactly the same way, etc.  The 
> only difference being some switches that are flipped that say "I'm a 
> server" and then it starts acting like one.

I'm glad you've raised the issue of servers.  I definitely think we need
a server in each school, and I agree it needs to self-managing.
However, I'm a bit doubtful whether the laptop hardware has sufficient
horsepower for this, in particular RAM.

What were you thinking of running?  My list is something like this:

dnsmasq
postfix
dovecot
apache httpd
horde/imp (for webmail)
ejabberd
moodle (needs PHP and mysql)
LAMS (probably a bit traditional for the OLPC guys :-)
openldap (so there's one user database shared by everything)
squid
squidguard (web filtering)

I would also want to have the sources for everything and a complete
tool-chain so that schools could rebuild a laptop image.  Without this,
people's ability to tinker is going to be very limited.

The largest schools in Thailand have more than 4,000 children.
Supporting all of the above for 4,000 users in 128Mb RAM doesn't seem
practical to me.

Wouldn't a conventional (in the hardware sense) server be more
appropriate?  Of course, in the least developed countries, that might
not be practical from a financial point of view or from a hardware
durability point of view. However, in a relatively well-developed
country like Thailand, I think things would work much better with a
decent server.

A related issue is networking.  In all but the smallest schools, I would
envisage deploying some number of cheap, commodity access points and
having them connected via wired ethernet.  I would also want the server
to be connected via wired ethernet. (I guess you could plug in a USB2
ethernet adapter to OLPC.)  Serving 4,000 users wirelessly doesn't seem
practical to me.

I'm guessing schools would also want a CD writer.  Once you add in the
costs of external ethernet, external hard disk enclosure, external CD, I
think using the OLPC laptop as a server starts not to make much sense
financially either.  The cost of a low end PC would be only a small
percentage (if any) more, especially if you set things up so the server
can work headlessly without a monitor, and you would get a lot more
horsepower.

I think doing the server-side software for OLPC is a very substantial
task and I don't see a lot of overlap with the laptop software.  With
the server, I want an appliance-like user experience: just plug it in
and it works; there's not much admin apart from user management.
Whereas people should be free to break their own laptops, I don't think
I would want people tinkering with the server.  Also I don't think a
regular Linux distribution is going to work: that would require way too
much system administration expertise.

James






More information about the olpc-software mailing list