From ba3e60d2215508bca5f58be1c56a4ca517f32ddd Mon Sep 17 00:00:00 2001
From: rsoulliere <robert.soulliere@mohawkcollege.ca>
Date: Mon, 2 Jan 2012 09:09:59 -0500
Subject: [PATCH] Add requirements-configuration file to master.

---
 admin/requirements-configuration.xml | 99 ++++++++++++++++++++++++++++++++++++
 1 file changed, 99 insertions(+)
 create mode 100644 admin/requirements-configuration.xml

diff --git a/admin/requirements-configuration.xml b/admin/requirements-configuration.xml
new file mode 100644
index 0000000000..e399249c73
--- /dev/null
+++ b/admin/requirements-configuration.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8"?>
+<chapter xml:id="requirements" xmlns="http://docbook.org/ns/docbook" version="5.0" xml:lang="EN"
+    xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xlink="http://www.w3.org/1999/xlink">
+	<info>
+        <title>System Requirements and Hardware Configurations</title>
+    	</info>
+	<para><application>Evergreen</application> is extremely scalable and can serve the need of a large range of libraries. The specific requirements and configuration of your 
+	system should be determined based on your specific needs of your organization or consortium.</para>
+	<section xml:id="requirements_server">
+		<info>
+		    <title>Server Minimum Requirements</title>
+		</info>	
+		 <para>The following are the base requirements setting Evergreen up on a test server:</para>
+		<itemizedlist>
+			<listitem><para>An available desktop, server or virtual image<indexterm><primary>virtual image</primary></indexterm></para></listitem>
+			<listitem><para>1GB RAM, or more if your server also runs a graphical desktop</para></listitem>			
+			<listitem><para><systemitem class="osname">Linux</systemitem> Operating System</para><indexterm><primary>Linux</primary></indexterm></listitem>
+			<listitem><para>Ports 80 and 443 should be opened in your firewall for <systemitem class="proptocol">TCP</systemitem> connections to allow OPAC and staff 
+			client connections to the Evergreen server.</para></listitem>
+			
+		</itemizedlist>
+		<tip>
+			<para><systemitem class="osname">Debian</systemitem><indexterm><primary>Linux</primary><secondary>Debian</secondary></indexterm> and 
+			<systemitem class="osname">Ubuntu</systemitem><indexterm><primary>Linux</primary><secondary>Ubuntu</secondary></indexterm> are the most widely used 
+			<systemitem class="osname">Linux</systemitem> distributions for installing Evergreen and most development takes place on Debian based systems. If you are new 
+			to Linux, it is strongly recommended that you install <application>Evergreen</application> on the latest stable server edition of <systemitem class="osname">Debian</systemitem> 
+			(<ulink url="http://www.debian.org/">http://www.debian.org/</ulink>)
+			or <systemitem class="osname">Ubuntu 10.04</systemitem> Server(<ulink url="http://www.ubuntu.com/">http://www.ubuntu.com/</ulink>) since the installation instructions have been 
+			tested on these distributions. <systemitem class="osname">Debian</systemitem> and <systemitem class="osname">Ubuntu</systemitem> are free distributions of 
+			<systemitem class="osname">Linux</systemitem>.</para>
+		</tip>
+	</section>	  
+	<section xml:id="hardwareconfigurations">
+		<info>
+    			<title>Server Hardware Configurations and Clustering</title>
+			<indexterm><primary>hardware</primary><secondary>clustering</secondary></indexterm>
+		</info>
+		<para>The hardware requirements for running a functional <application>Evergreen</application> server are minimal. It is also possible to scale up your evergreen configuration to be 
+		spread your <application>Evergreen</application> resources and services over several or even many servers in a clustered approach for the purpose 
+		of system redundancy, load balancing and downtime reduction. This allows very large 
+		consortia to share one <application>Evergreen</application> system with hundreds of libraries with millions of records and millions of users, making the scalability of 
+		<application>Evergreen</application> almost infinite.</para>
+		<para>Here are some example scenarios for networked server configurations:</para>
+		<itemizedlist>
+			<listitem><para>A small library library with 1 location, under 25,000 items and a few thousand users could easily run Evergreen on a single server 
+			(1 machine).</para></listitem>
+			<listitem><para>A college or university with 1 million items and 20,000 users could run an <application>Evergreen</application> system using several servers balancing the 
+			load on their 
+			system by spreading services over multiple servers. It should host their <application>PostgreSQL</application><indexterm><primary>databases</primary>
+			<secondary>PostgreSQL</secondary></indexterm> 
+			database on a separate server. They could also cluster the Evergreen services 	
+			strategically to minimize or eliminate any necessary downtown when upgrading Evergreen or other server software. Moreover, system redundancy will reduce the chance of 
+			unplanned catastrophic downtime caused by system failure since <application>Evergreen</application> will be running over several machines.</para></listitem>			
+			<listitem><para>A large library consortium with several public library systems and/or academic libraries with millions of users and items could run an 
+			<application>Evergreen</application> 
+			system over many servers with clusters for <application>Evergreen</application> services as well as a cluster for the Postgresql Database.</para></listitem>
+		</itemizedlist>
+		<para>The key to <application>Evergreen</application> scalability is in the <application>OpenSRF</application> configuration files 
+		<filename>/openils/conf/opensrf.xml</filename><indexterm><primary>configuration files</primary><secondary>opensrf.xml</secondary></indexterm>  and 
+		<filename>/openils/conf/opensrf_core.xml</filename><indexterm><primary>configuration files</primary><secondary>opensrf_core.xml</secondary></indexterm>. 
+		By configuring these files, an administrator could cluster evergreen services over multiple hosts, change the host running a specific service 
+		or change the host of the <application>PostgreSQL</application> database.</para> 
+
+		<note><para>The default configuration of <application>Evergreen</application> in the installation instructions assumes a single <systemitem class="domainname">localhost</systemitem> 
+		server setup. For more complex 
+		multi-server clustered configurations, some server administration and database administration experience or knowledge will be required.</para></note>		
+	</section>    
+	<section xml:id="requirements_staffclient">
+		<info>
+		    <title>Staff Client Requirements</title>
+		</info>
+
+		<para> Staff terminals connect to the central database using the Evergreen staff client, available for download from 
+		<link xlink:href="http://www.open-ils.org/downloads.php">The Evergreen download page</link>. The staff client must be installed on each staff workstation and requires at 
+		minimum: </para>
+		<itemizedlist>
+    			<listitem><para><systemitem class="osname">Windows</systemitem>  (XP, Vista, or 7), <systemitem class="osname">Mac OS X</systemitem>,  
+		or <systemitem class="osname">Linux</systemitem> operating system</para></listitem>
+    			<listitem><para>a reliable high speed Internet connection</para></listitem>
+   			<listitem><para>512Mb of RAM</para></listitem>
+			<listitem><para>The staff client uses the <systemitem class="proptocol">TCP</systemitem> protocal on ports <systemitem>80</systemitem> and <systemitem>443</systemitem> to 
+			communicate with the Evergreen server.</para></listitem>
+		</itemizedlist>
+  		<simplesect>
+	    		<title>Barcode Scanners</title>   
+				<para><application>Evergreen</application> will work with virtually any barcode scanner<indexterm><primary>barcode scanner</primary></indexterm> – 
+				if it worked with your legacy system it should work on <application>Evergreen</application>.</para>
+    		</simplesect>
+		<simplesect>
+			<info>
+	    			<title>Printers</title>
+			</info>
+			<para><application>Evergreen</application> can use any printer configured<indexterm><primary>printers</primary></indexterm> for your terminal to print receipts, check-out slips, holds
+	    		lists, etc. The single exception is spine label printing, which is still under development. <application>Evergreen</application>
+	    		currently formats spine labels for output to a label roll printer. If you do not have a roll printer
+	   		 manual formatting may be required.  For more on configuring receipt printers, see <link linkend="lsa-printer">Printer Settings</link>.</para>    
+    		</simplesect>    
+ 	</section>
+</chapter>
-- 
2.11.0