XS-on-XO: Difference between revisions

From OLPC
Jump to navigation Jump to search
(Replaced content with 'Running the school server on an XO: * XS Community Edition, by the community, in 2013, * XS-on-XO/Howto, by Martin Langhoff, in 2009, * XO as XS, by cscott, in 2…')
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Running the school server on an XO:
{{TOCright}}
We have an experimental ext3 image that boots and seems to work correctly as an XS would, on XO hardware.


* [[XS Community Edition]], by the community, in 2013,
==Grab the image from==
* [[XS-on-XO/Howto]], by Martin Langhoff, in 2009,

* [[XO as XS]], by cscott, in 2009.
http://xs-dev.laptop.org/xs/other/OLPC-School-Server-0.6-i386.img.gz

The sha1 of the file is

c872907f1f696ea7bb1bb6e95319fa27e62ce76c

==To install==

# Grab a fast SD card, at least 4GB
# Uncompress the image with gzip -d
# Identify the device node for the first partition -- usually <code>/dev/mmcblk0p1</code> or <code>/dev/sdX1</code>
# Using fdisk, make the first partition at least 4GB, type 83 (linux) and bootable
# <code>dd if=OLPC-School-Server-<version>-i386.img of=/dev/<device> bs=1M</code>
# <code>resize2fs /dev/<device> # this expands the FS to take all the space in the partition</code>

Now the SD card should just boot on any unlocked XO.

'''Note: Expect the first boot to take considerable time, as the Moodle database gets initialized.'''

==Completing the installation==

# Set a password for the root user.
# Follow the ''Initial Configuration'' steps outlined in [[XS_Installing_Software]] .
## It's probably a wise idea to avoid using Squid on the XO hardware.

==Further work==

Help is needed with...

* Testing of the XS functionality
* Getting a vanilla F9 kernel+initrd to boot
* External disk setup: scripts to setup an external disk to handle /library and swap. Should be hooked up with the usbmount triggers.
* Load testing and tuning of memory settings in apache and postgres -- how many users can reasonably use ejabberd & Moodle with our limited memory?
* Scripts to auto-configure usb-ethernet adapters as eth0
* Scripts to auto-configure USB "3G" adapters (usually appearing as ppp devices)
* Scripts to switch from mesh portal to hostap

==Developer notes==
=== Building the image===

# checkout olpc-xs-builder
# wget http://xs-dev.laptop.org/xs/OLPC-School-Server-0.5.2-i386.iso
# sudo ./util/mkext3img OLPC-School-Server-0.5.2-i386.iso imgbuilder/anaconda-f9.ks

==Testing notes==

===Installation===
These notes are based on using XS 0.6d [[http://xs-dev.laptop.org/xs/other/OLPC-School-Server-0.6d-i386.img.gz]]. The image was uncompressed and written to a 8GB microSD card (class4). The microSD card was plugged into a XO using a SD adapter. Note that the XO had developer keys so that it could boot from the SD card. Also note, that the install was updated from the olpcxs-testing repo using 'yum --enablerepo=olpcxs-testing update'

We also installed [[http://munin.projects.linpro.no/ munin]] ('yum install munin munin-node' followed by 'chkconfig --levels 345 munin-node on' and '/etc/init.d/munin-node start') to keep track of performance. The charts below were produced by Munin via rrdtool. Munin makes itself available at http://schoolserver/munin/

We did not set up any swap partitions and Squid was not turned on for this test.

===Performance===
Overall performance is acceptable for the 10 XOs we had in the pool, although bulk of the XOs were either routing to the Internet (eth0 via USB-to-Ethernet) or collaborating across XOs via Gabble. They were not using Moodle extensively. Initial Moodle access does tend to be slow. Performance may improve with a class 6 card (we did not have access to a class 6 card). Other points of interest are the point when we ran yum update, and when the XOs register and access the schoolserver link, leading to Moodle. There's also the corresponding CPU usage below.

From an end-user perspective, the XS-on-XO held up throughout the test (about 4 hours) while continuously serving 10 XOs. The users did not complain about any slowdown of the network, collaboration problems, etc. ejabberd did not fail throughout the test.

[[Image:Olpc-xs-on-xo-ram.png|Memory performance with 10 XOs]]

[[Image:Olpc-xs-on-xo-cpu.png|CPU performance with 10 XOs]]

==See also==

{{Merge|XO as XS}}
* [[XO as XS]]


[[Category:SchoolServer]]
[[Category:SchoolServer]]

Latest revision as of 23:19, 9 August 2013

Running the school server on an XO: