XS Community Edition/0.3/Project Specifications: Difference between revisions

From OLPC
Jump to navigation Jump to search
 
(41 intermediate revisions by 3 users not shown)
Line 8: Line 8:
<li>Network connection – various services similar to what you would find in a home router.
<li>Network connection – various services similar to what you would find in a home router.
<li>Presence server – Augments sugar's native collaboration functionality.
<li>Presence server – Augments sugar's native collaboration functionality.
<li>NEW IN 0.3 - Web filtering – Enables schools to comply with local legal restrictions on internet access for children.
<li>FUTURE - Security – XO related security services.
<li>FUTURE - Content management
</ul>
</ul>


Line 23: Line 20:
==Hardware==
==Hardware==


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


===XO===
===XO===
The XS-CE will run on multiple version of the XO.
XSCE v0.3 will run on all 3 types of XO laptops:


<ul>
<ul>
<li>XO 1
<li>XO 1.5
<li>XO 1.5
<li>XO 1.75
<li>XO 1.75
Line 35: Line 31:
</ul>
</ul>


In common usage, the XO may be augmented by SD cards and two off the shelf USB devices:
In common usage, the XO may be augmented by two off the shelf USB devices and a local access point:
<ul>
<ul>
<li>Network connector – Allow the server to offer internet access to connected XO's.
<li>Network connector – Allow the server to offer internet access to connected XO's via a wired access point.
<li>NEW IN 0.3 -- 2 USB internet dongles.
<li>NEW IN 0.3 -- a second USB internet dongles for wired connection to a wide area network or internet service provider.
<li>NEW IN 0.3 -- External USB hard drive – Allows the server to provide additional storage capabilities.
</ul>
</ul>

This strategy it is simple for a deployment to inventory and maintain school servers.

===X86===

For greater flexibility some schools will want to use standard x86 hardware. While XSCE ran on x86 hardware (given Fedora 17) in late 2012 and early 2013, our recent modularization-refactoring might delay broad x86 testing during spring 2013. [http://lists.laptop.org/listinfo/testing Diligent volunteers can help] make x86 support real.


== Deliverable==
== Deliverable==


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


=== IMAGE ===
==Base OS==
NEW IN 0.3 -- OLPC-OS 13.1.0
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==

XSCE has traditionally been available on Fedora 17/OLPC-OS [[Release_notes/12.1.0|12.1.0]].

NEW IN 0.3 -- Fedora 18/OLPC-OS 13 -- expected to be [[13.1.0]].

==GUI Later==

Command line configuration should be [[#Future_Features_and_Objectives|gradually 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==
==Modular design==
One of the key design criteria of successful community-based projects is modularity.

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'
NEW IN 0.3 -- 'plug in services'

==Core Server==
==Core Server==


Line 121: Line 98:
Purpose: Creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities<br>
Purpose: Creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities<br>
Provider: openvpn<br>
Provider: openvpn<br>

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

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

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

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

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

== Future Features and Objectives==
* Browser-based GUI Config - as primary configuration tool? To configure install setup and core services?
* 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)<br>
Purpose: local distribution/replication of Sugar Activities etc<br>
Provider: pdsh

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


Service: Moodle<br>
Service: Moodle<br>
Purpose: <br>
Purpose: classroom and courseware management<br>
Provider: <br>
Provider: Moodle 1.9.3 and Postgresql

Service: MediaWiki<br>
Purpose: <br>
Provider: <br>

Latest revision as of 23:49, 8 August 2013

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.

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 run on an XO.

XO

XSCE v0.3 will run on all 3 types of XO laptops:

  • XO 1.5
  • XO 1.75
  • XO 4

In common usage, the XO may be augmented by two off the shelf USB devices and a local access point:

  • Network connector – Allow the server to offer internet access to connected XO's via a wired access point.
  • NEW IN 0.3 -- a second USB internet dongles for wired connection to a wide area network or internet service provider.

Deliverable

RPM

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

Base OS

NEW IN 0.3 -- OLPC-OS 13.1.0

Modular design

One of the key design criteria of successful community-based projects is 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

Service: Moodle
Purpose: classroom and courseware management
Provider: Moodle 1.9.3 and Postgresql