XS Community Edition/0.3/Project Specifications

From OLPC
Jump to navigation Jump to search

School Server - Community Edition 0.3 Project Specifications

Summary

The school server is very similar in concept to a standard home wireless router. In everyday usage it provides various services which extend capabilities of the connected laptops while being totally transparent to the user. These services can include:

  • Network connection – various services similar to what you would find in a home router.
  • Presence server – Augments sugar's native collaboration functionality.
  • NEW IN 0.3 - Web filtering – Enables schools to comply with local/legal restrictions on internet access for children.

Reference User

The XS-CE has two different types of reference user:

  • Skilled sysadmins running micro-deployments
  • Mid-sized deployment with limited onsite sysadmins

Hardware

School servers can be either an XO or standard x86 based hardware.

XO

XSCE v0.3 will run on all 4 XO laptops:

  • XO 1
  • XO 1.5
  • XO 1.75
  • XO 4

In common usage, the XO may be augmented by SD cards and two off the shelf USB devices:

  • Network connector – Allow the server to offer internet access to connected XO's.
  • NEW IN 0.3 -- 2 USB internet dongles.
  • NEW IN 0.3 -- External USB hard drive – Allows the server to provide additional storage capabilities.

X86

For greater flexibility some schools will want to use standard x86 hardware. Diligent volunteers can help make x86 and x86-64bit support increasingly real.

Deliverable

RPM

A RPM combined with tested installation instructions necessary to convert a standard XO-1.75 or Fedora-compatible x86 computer into a School Server.

IMAGE

NEW IN 0.3 -- An downloadable USB flash drive image, combined with tested installation instructions, which permit deployment staff to install XSCE software without an internet connection.

OS

NEW IN 0.3 -- OLPC-OS 13.1.0 --

GUI Later

Command line configuration/administration should eventually be discouraged as the system matures. Future target users are often not familiar with Linux system administration. Initial setup or fixing a problem with their server is not a good time to introduce system administration skill.

Modular design

One of the key design criteria of all successful community-based projects is modularity. The original XS suffered because developers took used monolithic design overcome hardware limitations on the XO-1. The improvements in the XO-1.75 allow for the potential inefficiencies of modularity.

NEW IN 0.3 -- 'plug in services'

Core Server

The core server will contain five services which can be extended via extended services.

Service: Network setup
Purpose:
Provider: xs-setup-network

Service: Dynamic Host Configuration Protocol
Purpose: Schoolserver and clients need to be on same subnet.
Provider: dhcpd

Service: Iptables -- Network Address Translation (NAT)
Purpose: Permits all XO’s to access the internet.
Provider: gateway

Service: Internet domain name server
Prupose:
Provider: named

Service: Backup of student work and restore
Purpose:
Provider: idmgr

Service:Jabber server
Purpose: collaboration > 15 clients needs to work.
Provider: ejabberd

Extended Services

Service: Web server
Purpose: Building block for many other extended services
Provider: apache

Service: proxy server and web cache
Purpose: bandwidth, web-filtering, web-monitoring
Provider: squid

Service: OLPC-update
Purpose: OLPC-update is necessary to update the kernel of XO
Provider: rsync

Service: Activity update
Purpose: Enables teachers to easily distribute new or updated activities to their students
Provider: activity updater

Service: Virtual Private Network (VPN)
Purpose: Creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities
Provider: openvpn

NEW IN 0.3 -- Service: Content filtering (TimM??)
Purpose: age-appropriate surfing, legal compliance, religious risks
Provider: dansguardian and opendns

NEW IN 0.3 -- Service: 1-N WebDEV(JerryV, GeorgeH)
Purpose: Journal submissions to teacher, academic record (homework etc)
Provider: WebDAV

NEW IN 0.3 -- Service: Statistics Collection
Purpose: Collects users statics for academic research
Provider: pilot monitoring system

NEW IN 0.3 -- Service: Book server (SameerV, AlexK, GeorgeH struggling!)
Purpose: compete with Khan Academy?
Provider: pathagar

NEW IN 0.3 -- Service: Internet in Box
Purpose: Provide offline content
Provider: ???

Future Features and Objectives

  • Raspberry Pi (RPi) compatibility
  • Browser-based GUI Config - as primary configuration tool? To configure install setup and core services?
  • Puppet remote management (future service below, design goals reviewed May 2013)
  • ejabberd roster admin
  • Consideration of other devices (Android, Kindle, iPods, iPads)
  • Content curation (beyond dumping stuff into Apache directories)
  • Khan Academy

Future services

Please consider adding features and objectives to this list if you feel they should be included in a future release. If you consider the feature important and are willing and able to do the necessary work please sign your name to take responsibility for that service.

Service: (GeorgeH, Gerald, AnnaS)
Purpose: local distribution/replication of Sugar Activities etc
Provider: pdsh

Service: (DSD, GeorgeH, TimM)
Purpose: Remote administration – There are several systems such as CFEngine and puppet which enables remote management. While not immediately required by AU it is highly desirable by large deployment
Provider: Puppet

Service: Moodle
Purpose:
Provider:

Service: MediaWiki
Purpose:
Provider: