open source success: overseas family school
TRANSCRIPT
May 8, 2006 1
Open Source Success:Overseas Family School
Michael Clark <michael at metaparadigm dot com>
May 8, 2006 2
Presentation Overview
What is Open Source?Can mean many things - one interpretation
Open Source Case Study: Overseas Family SchoolOFS BackgroundClient RequirementsWhy OFS specified Linux and Open SourceAn Educational PerspectiveOFS Open Source ArchitectureCustom Management Software Development
Some thoughts on current trends and strategiesConclusion
May 8, 2006 3
What is Open Source?
May 8, 2006 4
Open Source Software
You rely on it every dayTwo thirds of web sites are served using the Apache Open Source SoftwareThe biggest sites on the Internet such as Google, Ebay, Yahoo and Amazon are using Open Source SoftwareApproximately 20% of all new servers are shipped or installed with the Linux OS
May 8, 2006 5
Open Source Software
You rely on it every dayThe vast majority of the Domain Name System (DNS) is implemented using Open Source SoftwareLinux, an Open Source Operating System is being used by Corporations, Governments, Schools, Businesses and Individuals.The Fabric of the Internet is built on Open Source Software!
May 8, 2006 6
What is Open Source?
Open Source can be seen as 3 things:
Open Source Software
Open Source Development Model
Open Source Community
May 8, 2006 7
What is Open Source?
Open Source SoftwareSoftware that is unencumbered
– Source code for developers– Binary code for users
Allows free redistribution– No costly licensing fees, change to a support model
Allows creation of derived works– You have the source to change it to suit your needs
See http://www.opensource.org/ for a full definition
May 8, 2006 8
What is Open Source?
Open Source Development ModelA superior development model that takes advantage of this access to source codeBuild on existing code, lower cost of developmentShared common benefit
– Amortise development cost with othersOpen collaboration using the InternetEnd users can contribute directly to the development process
– it is not being done behind closed doors
May 8, 2006 9
What is Open Source?
Open Source CommunityThe individuals, IT vendors, end user corporations and business that are producers, consumers or supporters of Open Source SoftwareCommunication is rapid and distributedMany choices for end user support
– Go straight to the developers for support– Get commercial support from a OSS solution vendor such
as Red Hat, Novell, Dell, HP, Sun, IBM, etc, ...– Use the source Luke, do it yourself!
May 8, 2006 10
Open Source Case Study:Overseas Family School
Client Requirements
May 8, 2006 11
Overseas Family School Background
An International School in SingaporeAround 2500 students from 60 countriesAround 300 staffTotal OFS community of about 7000
– Students, Parents, Faculty, Staff.Started in 1991From Pre K to Grade 12 and University CollegeInternational Baccalaureate Curriculum
– Authorised K-12 by International Baccalaureate Organisation, Geneva
Central campus near Orchard roadWebsite: http://www.ofs.edu.sg/
May 8, 2006 12
May 8, 2006 13
OFS: Client Requirements
Reliable, Maintainable and SecureAbility for easy remote managementHigh availablity solutionFree from the viruses that plague “other” systems
Cost EffectiveA school is more sensitive to cost than most organisations
Complete coverage and complete integrationAll components to be fully integrated. Remove manual tasks and provide a unified management interface
Cross Platform Compatibility and AccessThe system must provide access to users both within the school and online externally using any OS or browser
May 8, 2006 14
OFS: Client Requirements
User centric not IT centricPut users in control of the system
Development platformProvide a platform to build a completely “integrated” school management application
Focus on standards vs productsLDAP vs Active DirectoryJ2EE vs .NET
Microsoft freeOur client exercising their right to alternatives
May 8, 2006 15
Why OFS specified Linux and Open Source
Linux provides reliability and maintainabilityCheaper than big metal solutionHigher reliability and manageability compared to competing commodity server OS
Cross Platform CompatibilityStandards based software on Linux offers native protocol support for other OS's: MS Windows, Mac OS 9 & X
Development platformProvides a complete environment for development of a strategic educational administrative and academic integrated management system
May 8, 2006 16
Why OFS specified Linux and Open Source
CompleteAble to find solutions for all main enterprise problem domains applicable to the school's businessLinux and OSS provided the most flexibilityPackaged solutions without source can't be integrated as easily – sometimes never when point and click is the only interface
Cost effectiveROI includes customer costs too
– Linux can be cheaper to manage with the right internal human resources
Wide availability of OSS solutions on the Linux platform with no license feesAble to lower risk of project by reducing expenditure
May 8, 2006 17
A Brief Educational Perspective
EducationSharing of knowledge and building upon the knowledge of others
Open SourceSharing of source code and building upon the source code of others
OFS Chairman, David Perry:“Open Source, Open Minds”
See the similarity in goals
May 8, 2006 18
OFS Linux Server Architecture
May 8, 2006 19
OFS Open Source Architecture
Platform overviewNetwork, SecurityServers, storage and backupFault tolerance and monitoring
Services overviewEnterprise class mail and directoryFile, print, caching and netbootIntranet, extranet and remote access
Custom management softwareInternally developed administration and academic management system
May 8, 2006 20
Linux firewalls
Use low cost commodity Intel based serversNo expensive license fees like proprietary solutionsMore flexible than a closed-box appliance based solutionNot tied to inflexible product features - can implement yourselfCan run an IDS (Intrusion Detection System)High availability solution protects system from machine down time
– Uptime just as important in a school environment– Servers check each other through a heartbeat link– Partner machine automatically takes over if there is a
failureOpen Source software used: iptables, freeswan, heartbeat
May 8, 2006 21
Low cost Intel based app server cluster
Cluster commodity Intel-based Linux serversProvides similar performance to Big Metal (traditional UNIX) at about ¼ the costHuge reduction in user licenses for proprietary OS
– 2000+ users for email and file server– 400+ concurrent users on a variety of services
6 application servers– Dual CPU 2U rack-mount machines– (12 x 1GHz+ CPUs), 15GB RAM (6 x 2.5GB)
2 firewalls, 2 development servers, 2 backup and management servers all running Linux
May 8, 2006 22
Storage Area Network
Need enterprise class redundant storageA school can't afford to lose 1000's of users' files, email and critical business data just like any other business
Linux has full support for SANStorage Area Network provides shared-storage capability required for High Availability clustering
6 application servers connected by fibre optics to a high availability storage system
28 x 73GB – 2 Terabytes of storage
May 8, 2006 23
Enterprise class file system
File system journalling is required for an enterprise class server systemData integrity and fast recovery after crashExt3 is fast, reliable and built on proven 10+ year old technologyOther free alternatives
JFS (from IBM) and XFS (from SGI)
Big savings compared to expensive proprietary solutions used on Big Metal systems
May 8, 2006 24
Backup system
Need a system to backup 1.5 Terabytes of dataLinux has full support for Robot Tape Libraries
2-tier backup systemStorage staged on 2 remote backup servers with IDE disk arrays totalling 1.5TB2 Robot Tape libraries backing up staged image weekly
Many expensive enterprise backup systemsWhy spend $10K on an enterprise backup software when $3K can buy 2TB of low cost IDE storage3-4 weeks of on-line daily incremental backups
Disaster RecoveryHoused in separate building to main server cluster
Open source software used: rsync, mtx and tar
May 8, 2006 25
So what does it look like
May 8, 2006 26
May 8, 2006 27
Clustering
High Availability ClusteringA school is like any other business – work stops if servers are down for a day while waiting for service and spares
Services (such as mail, web, file server, etc.) can be relocated anywhere on cluster
5-10 minutes service downtime in case of server failure
Services are automatically moved between servers upon failure detection
Much cheaper than commercial equivalents such as Veritas or Microsoft Cluster ServicesOpen Source software used: cluster manager
May 8, 2006 28
System event monitoring
Pro-actively manage system rather than re-activelyWe can respond to problems as they occur rather than react to users complaining the system is down. By the time they call, we are already addressing the problemProtect investment in infrastructure by monitoring environment
Mon is an extensible monitoring system providing email alerts and ability to interface with pagers or SMS
We monitor almost everything: web, ERP, file server, email, system reachability, server room temperature, UPS (Uninterruptible Power Supply), storage components, etc.
Proprietary monitoring systems are expensiveOpen Source software used: mon, snmp-utils
May 8, 2006 29
SMS text message alerts
Provide notification of critical server eventsLinux software for interface to GSM modem enabling the sending of SMS messages
Implemented using home grown mail to SMS gatewayManagement server sends email alert through an internal mail to SMS gateway
We really want to know if the server room air-conditioning fails on the weekendOpen Source software used: smstools, postfix
May 8, 2006 30
System Reporting
We need full infrastructure reporting for capacity planning and system management
Monitoring of: Internet bandwidth utilisation, LAN traffic, server disk space usage, system load and memory usage, application activity
Real time statistics and access to historic system management data
Cacti provides easily manageable solution for configuring charting of statistics from SNMP capable devices or custom statistics gathering scripts
Open Source software used: cacti
May 8, 2006 31
May 8, 2006 32
Directory server
Single source of user information to allow unified loginSame login and password used for all services
Remove duplication and the cost of managing multiple sources of user dataAlmost all services can be directory enabled
Mailing lists and mail server authentication
Extranet and web application authentication
File server authentication
Account information and group membership
Equivalent proprietary solutions are expensiveOpen Source software used: openldap
May 8, 2006 33
Mail Server
Enterprise mail systems need advanced features such as roaming and account synchronisation
POP not up to the task
Needs to be LDAP Directory enabled
Support for IMAP and SSL
Enterprise mail systems need zero-configurationNo need to configure mail clients. Login scripts query LDAP and generate mail client configuration
Big savings compared to proprietary mail systemsNo per mailbox license fees
Open Source software used: sendmail, cyrus-imapd
May 8, 2006 34
Virus and SPAM Protection
Enterprise systems need mail and file server virus scanner
The level of SPAM with Internet email has dramatically increased over the last few years making this essential
Able to implement using complete open source solution
No per user license fees
No yearly upgrade fees
Plenty of expensive proprietary alternativesCost over $20K for a school the size of OFS
Open Source software used: clamav, spamassassin, milter-sender
May 8, 2006 35
File Server
Requirement for seamless file server access from Apple Macintosh client machines
600 Macintosh computers running Mac OS X
Netatalk Appleshare file serverProvides native Macintosh network file server client support from the Linux serverLDAP enabled providing unified login
Roaming desktop and application preferences
No per user licensesOpen Source software used: netatalk
May 8, 2006 36
Content Filtering and Caching
Enterprises require local caching to maximise usage of expensive Internet bandwidth charges
OFS experience almost a 40% hit ratio close to doubling effective throughput
Squid cache software provides free alternative to expensive caching appliancesSquidGuard provides content filtering which is essential in an educational environmentFirewall policy routing enables transparent caching
No need to set proxy on client computers
Users are unable to bypass content filtering
Open source software used: squid, squidguard
May 8, 2006 37
Network booting
OS installations on 600+ machines using traditional methods is time-consuming, expensive and error proneMachines are net-booted from a 'golden' image residing on the boot server
Machines are always up-to-date
Deployment of new software / upgrades only requires a reboot
OFS have about around 600 of their machines net-booted
Machine can be instantly switched between different images
Multiple OS support:– Mac OS 9, Mac OS X, PPC Linux, i386 Linux– Machines are currently all running Mac OS X
May 8, 2006 38
Apache and Web Folders
Apache is the 'winner' in web server wars and it's freeWell supported by the community and feature completeAll staff and students have personal website with remote access from homeSecure
SSL support providing 128bit encryption for e-commerce
WebDAV “Web Folders” provides standards compliant web publishing remote access combined with SSL for security
WebDAV client built into Windows versions since 98
Free clients available for Mac OS 9. Built into Mac OS X
Open source software used: apache + customisations
May 8, 2006 39
Web mail
An enterprise extranet portal requires remote web access to email servicesSquirrel Mail is an open source web mail reader implemented in PHP
completes the feature set of an enterprise mail system
Support for LDAP address book giving access to corporate email directoryFeatures such as spell checking and integration with Language translation systemsEasily customisable for customers portal look and feelImplemented using SSL for secure email accessOpen source software used: squirrel mail
May 8, 2006 40
May 8, 2006 41
Internal Application Development
May 8, 2006 42
Jboss Application Server
JBoss is an enterprise class Java application server comparable to offerings from BEA, IBM and othersJava is our chosen programming environment
Recent surveys show more Java programmers and Java jobs on the market than any other single technology.
Platform independent
Linux has excellent Java support
Provides important application development infrastructure
Big savings compared to the commercial equivalents which can cost $30K+ per CPU plus support
Open source software used: JBoss
May 8, 2006 43
Oracle Database
Many databases available on the Linux platform both commercial and free
At the time of implementation, none of the open source databases provided the data integrity and transaction support required for an enterprise class application
Okay, so we recommended OracleOracle is a recognised leader in the database arena for both reliability and scalability
Oracle itself has adopted Linux as its preferred platform
It may not be free but it runs on Linux
May 8, 2006 44
Enterprise Resource Planning
A complete enterprise system requires an accounting system
No mature Open Source products available on Linux
Oracle Financials and SAP both available on Linux
OFS chose Oracle Financials
Met requirement for close integration with the OFS Custom Management application
Okay, so its not free but it runs on Linux
Deployed Oracle Applications on Linux in 2001-2002A first in Asia Pacific we believe
May 8, 2006 45
OFS Custom Management Application
Metaparadigm helps design and develop a custom educational management system at OFS
Strategically In-sourced and built with Open Source
Implemented in Java with the JBoss Application server
Provides complete user and group management and is fully integrated with LDAP directory, email system and file server
Automates provisioning of email accounts, file server accounts, websites and remote access
– When a student enrols, they automatically get an email account, server storage, remote access and web mail
– No need for manual provisioning
May 8, 2006 46
OFS Custom Management Application
Provides an integrated school wide system all main school functions
Enrolment, Billing, Email and File server provisioning, Library system, Security card printing, Timetable, Business planning reporting, Online Class and Home work, Attendance, Parent Access, Online School Shop and POS, Academic reporting, ... and the list is growingRepresents 30-40 man years of software development by 5-8 full-time in-house developers over the last 6 yearsDevelopment is done end-to-end on Linux workstations
– Using over many open source tools and libraries, CVS revision control system, Wikis for team collaboration and documentation
Using the same tools as the Open Source community
May 8, 2006 47
May 8, 2006 48
Some thoughts on currenttrends and strategies...
May 8, 2006 49
Thoughts on trends and strategies
Out-sourcing vs In-sourcingVery popular buzzwords these days...
Packaged software vs Custom softwareWhen is it right to develop your own software?
The new development modelIs Open Source just another buzzword?
Strategic In-sourcingGaining competitive advantage through business intelligence
A proposal – 'Open-sourcing'Combining Open Source and Strategic In-sourcing
May 8, 2006 50
Out-Sourcing vs In-Sourcing
Out-sourcingA very popular buzzword with CEO's, CIO's and of course out-sourcing companiesGood for commoditised systems and processesIssues with demarcation
– Burden of documentation such as service level agreements, the problem of buck passing, etc
Harder to adapt to rapidly adapt to changing business needs– Requires vendor agreements, contractual changes, etc
Can save money!
May 8, 2006 51
Out-Sourcing vs In-Sourcing
In-sourcingWhat companies end up doing after their out-sourcing engagements fail ;)Good for strategic systems and processesLess problems with demarcation
– inter-departmental rather than inter-companyEasier to adapt to changing business needs
– Customer is in complete controlCan save money!
May 8, 2006 52
Packaged software vs Custom software
Proprietary software modelGood time to marketUsage is controlled by licensing
– Can be complicated and hard to manageMeets business needs in a generalised way
– Your competitors are using the same software– Harder to change “Wait for version X”
Limits opportunities and integration flexibility– Only the vendor can help here i.e. vendor lock-in
Not good for IT systems strategic to your business– Where is the competitive advantage?
May 8, 2006 53
Packaged software vs Custom software
Custom software modelLonger time to market
– If you think ahead you can still beat the marketStill needs building blocks
– App servers, databases, development toolsCan be costly to develop
– Need a good software development teamMeet business needs more closely
– Easier to change to meet new requirementsEssential for IT systems strategic to your business
– Create competitive advantages through improving process specific to your individual business
May 8, 2006 54
Strategic In-sourcing
Strategic In-sourcing of software systemsAre your management software systems of strategic importance to your business?OFS management think theirs are!
– Their belief is completely integrated systems allow companies to blossom
Gain competitive advantages through developing custom software to closely match your individual business needsMany examples from industry:
– Dell supply chain automation is internally developed custom software
– Google “strategic insourcing”– http://www.cutter.com/research/2003/edge031014.html
May 8, 2006 55
The new development model
“Open Source” provides a superior development modelBetter quality code, research shows less defects per 1000 lines of code than equivalent proprietary softwareAlter the software to match your business instead of altering your business to match the software
Commodisation of basic componentsOS and tools are now commodtiesMoving up the stack to middle ware: “JBoss App Server”
Shared common benefit'Co-op-ertition'. Share cost of building generic code instead of re-inventing the wheel.
Who's using this new development modelApple, IBM, Sun, Oracle, ...
May 8, 2006 56
A proposal: 'Open Sourcing'
“Open-Sourcing”Taking advantage of Open Source Software / Community and Development model to develop custom software systemsGain access to the “building blocks” at a low cost
– Custom software is expensive to develop. Accessing the wide range of open source software components can reduce costs dramatically
Access to source allows for a high level of customisation and integration with internal systemsFollow the open development model
– Tangible advantages to contributing your code– Getting you changes upstream means less maintenance– Get free testing, bug fixes, feature enhancements to
your own code
May 8, 2006 57
Conclusion
Linux and Open Source are superiorProvides a superior development model and complete platform offering greater flexibility than packaged solutions on a proprietary OS.5+ years and the customer is still happy :)
It is a myth about the cost of managing LinuxAn non-integrated Point and Click system can be run with lower cost staff but will require more staff to achieve the same result and will be more prone to errors and inconsistency
The high level of integration that Open Source Software allows means more opportunities for custom automation
May 8, 2006 58
Conclusion
But it's not purely about costA lot of what OFS have implemented couldn't have been achieved with proprietary systemsSoftware development and integration is expensive
The “free” in Open Source is not about cost as many believe; it is more about the freedom of ideasBenefits are reaped by streamlining of internal processes and systems and improving competitve advantage
Highly skilled human resources are the key to developing and running strategic integrated systems using Open Source
May 8, 2006 59
Michael Clark <michael at metaparadigm dot com>
http://www.metaparadigm.com/
Thank You