XS Community Edition/0.3/Project Specifications: Difference between revisions
m (moved User:Holt/XS Community Edition/0.3/Project Specifications to XS Community Edition/0.3/Project Specifications) |
|||
(59 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 17: | Line 14: | ||
The XS-CE has two different types of reference user: |
The XS-CE has two different types of reference user: |
||
<ul> |
<ul> |
||
<li> |
<li>Skilled sysadmins running micro-deployments |
||
<li> |
<li>Mid-sized deployment with limited onsite sysadmins |
||
</ul> |
</ul> |
||
==Hardware== |
==Hardware== |
||
School servers can be |
School servers can be run on an XO. |
||
===XO=== |
===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 |
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 -- |
<li>NEW IN 0.3 -- a second USB internet dongles for wired connection to a wide area network or internet service provider. |
||
</ul> |
</ul> |
||
This strategy it is simple for a deployment to inventory and maintain school servers. |
|||
===X86=== |
|||
NEW IN 0.3 For greater flexibility some schools will want to use standard x86 hardware. |
|||
== Deliverable== |
== Deliverable== |
||
=== RPM === |
=== RPM === |
||
A RPM combined with tested installation instructions necessary to convert a standard XO-1.75 or |
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 -- An image combined with tested installation instruction which can be flashed onto a laptop by deployment support staff. At initial 'power on' the support staff or teacher will be greeted by a simple GUI to do initial configuration. |
|||
==OS== |
|||
The school server will be available on Fedora 17/OLPC-OS 12.1. |
|||
⚫ | |||
==User Interface== |
|||
===Command Line=== |
|||
Command line configuration should be 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. |
|||
===Browser based=== |
|||
NEW IN 0.3 -- Browser based GUI. – The primary configuration tool will be a browser based GUI. Initial expectations are to configure install setup and core services. |
|||
==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 122: | Line 97: | ||
Service: Virtual Private Network (VPN)<br> |
Service: Virtual Private Network (VPN)<br> |
||
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: |
Provider: openvpn<br> |
||
NEW IN 0.3 -- Service: Content filtering (TimM??) <br> |
|||
Purpose: age-appropriate surfing, legal compliance, religious risks <br> |
|||
Provider: dansguardian |
|||
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> |
|||
Service: Book server (SameerV, AlexK, GeorgeH struggling!)<br> |
|||
Purpose: compete with Khan Academy?<br> |
|||
Provider: pathagar |
|||
== 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: |
Provider: Moodle 1.9.3 and Postgresql |
||
Service: MediaWiki<br> |
|||
Purpose: <br> |
|||
Provider: <br> |
|||
===Targeted Features/Objectives=== |
|||
* Working with 2 Ethernet dongles |
|||
* DNS/Content filtering, eg. opendns.com, dansguardian.org etc |
|||
* Script to connect to OPENVPN |
|||
* Basic integration w/ http://internet-in-a-box.org |
|||
* [https://github.com/PathagarBooks/pathagar Pathagar] bookserver integration (if the jump to Fedora is possible) |
|||
Lower priorities: |
|||
* ejabberd roster admin |
|||
* Consideration of other devices (Android, Kindle, iPods, iPads) |
|||
* Content curation (beyond '''dumping''' stuff into Apache directories) |
|||
* Khan Academy |
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