Annotation of doc/build/sles12_install.frag, revision 1.4

1.1       raeburn     1: <h1>Installing LON-CAPA on a minimal SuSE Linux Enterprise Server (SLES) 12</h1>
                      2: <p>
                      3: This document guides you through the process of setting up a new LON-CAPA
                      4: server running SuSE Linux Enterprise Server 12 (SLES 12) with a minimum of packages installed.
                      5: The computer will be configured solely as a LON-CAPA server and will be
                      6: expected to have no other services running.  Your server is expected to have
                      7: a reasonably fast connection to the internet.
                      8: </p><p>
                      9: More information is available at
                     10: <a href="http://install.lon-capa.org/">http://install.lon-capa.org/</a>.
                     11: </p>
                     12: 
                     13: <h2>Before you begin</h2>
                     14: <p>
1.2       raeburn    15: Installing Linux is straightforward.
1.1       raeburn    16: You will be required to log in to the machine and execute
                     17: some routine Unix commands.  Familiarity with the Apache web server, mod_perl,
                     18: perl, and MySQL are not required to install and run LON-CAPA.
                     19: </p>
                     20: 
                     21: <h2>Installation Overview</h2>
                     22: <p>
                     23: The installation process takes the following steps:
                     24: </p>
                     25: <ol>
                     26:   <li><a href="#obt">Obtain SLES 12 installation media</a></li>
                     27:   <li><a href="#net">Determine Network Settings</a></li>
                     28:   <li><a href="#lin">Install SLES 12</a></li>
                     29:   <li><a href="#upd">Update your system</a></li>
                     30:   <li><a href="#ilc">Install LON-CAPA</a></li>
                     31:   <li><a href="#cdc">Create a Domain Coordinator</a></li>
                     32:   <li><a href="#sts">Start/Restart services</a></li>
                     33:   <li><a href="#log">Log in to LON-CAPA</a></li>
                     34: </ol>
                     35: 
                     36: <hr>
                     37: <h2>1. <a name="obt">Obtain SuSE Linux Enterprise Server 12</a></h2>
                     38: <p>
1.2       raeburn    39: SLES12 ISO files can be obtained from the SuSE site: <a href="https://www.suse.com/download/sles/">https://www.suse.com/download/sles/</a>.  Download the SLE-12-SP5-Full-x86_64-GM-Media1.iso.
1.1       raeburn    40: </p>
                     41: 
                     42: <h2>2. <a name="net">Determine Network Settings</a></h2>
                     43: <p>
                     44: You will need to know the following network settings for your installation.
                     45: <b>Note:</b>You must have a static IP address to use LON-CAPA.
                     46: DHCP is <em>not</em> supported.
                     47: </p>
                     48: <ul>
                     49:   <li>ip address </li>
                     50:   <li>netmask </li>
                     51:   <li>hostname </li>
                     52:   <li>gateway </li>
                     53:   <li>domain name server(s) </li>
                     54: </ul>
                     55: 
                     56: <h2>3. <a name="lin">Minimal SLES 12 Install</a></h2>
                     57: <p>
                     58: Installing SuSE Linux Enterprise Server is quite easy if you've installed Linux products
                     59: before.  Some documentation is available from
                     60: <a href="http://www.novell.com/documentation/sles12/">
                     61: http://www.novell.com/documentation/sles12/</a>.<br><br>
                     62: Most of the installation screens are self explanatory.
                     63: There are a few steps that require comment and are dealt with below.
                     64: </p>
                     65: <dl style="list-style:square outside none">
                     66:    <dt>Installation Language</dt>
                     67:    <dd>Use English as your installation language.</dd>
                     68: 
                     69:    <dt>Partitioning your Drive</dt>
                     70:    <dd>For a LON-CAPA library server (i.e., the main server used
                     71:        for permanent storage of course and user data),
                     72:        a separate partition is recommended for /home, as this
                     73:        simplifies future upgrades of the operating system.
                     74:        If you are adding an additional access server to an
                     75:        existing LON-CAPA domain, this does not apply as no
                     76:        permanent data are stored on an access server.
                     77:        As LON-CAPA resource files are stored in the /home directory,
                     78:        the majority of the disk space should be allocated here.
                     79:        If you have 20 GB of space for SLES12, /home should
                     80:        receive at least 10 to 12 GB. Since MySQL uses the /var
                     81:        filesystem to store its databases you should have as least
                     82:        4 gigs of space available on /var.  Be sure to
                     83:        include adequate swap space.  A minimum is 512 MB, but you should
                     84:        typically have 1 or 2x as much swap space as you do physical RAM.
                     85:        </dd>
                     86:    <dt>Network Configuration</dt>
                     87:    <dd>LON-CAPA will <b>not</b> work with a machine set up to use a dynamic
                     88:        IP address.  When configuring your network card, you should include you static IP address, netmask, host name information (e.g., host name = tmp1, domain = lite.msu.edu), as well as name servers and gateway.
                     89:    </dd>
1.2       raeburn    90:    <dt>Available Extensions and Modules</dt>
                     91:    <dd>Register the system with suse.com, and then check boxes for the following<ul>
                     92:        <li>SuSE Linux Enterprise Software Development Kit</li>
                     93:        <li>SUSE Package Hub</li>
                     94:        </ul>
                     95:    </dd>
                     96:    <dt>System Role</dt>
                     97:    <dd>Select: Default System</dd>
                     98:    <dt>Software Selection</dt>
                     99:    <dd>Customize by clicking "Software" on the Installation Settings screen
                    100:        Uncheck the boxes for "GNOME Desktop Environment" and X Window System.<br />
                    101:        Check the boxes for the following:<ul>
                    102:        <li>Help and Support Documentation</li>
                    103:        <li>Base System</li>
                    104:        <li>AppArmor</li>
                    105:        <li>Minimal System (Appliances)  
                    106:        <li>YaST2 configuration packages</li>
                    107:        </ul>
                    108:    </dd>
                    109:    <dt>Security</dt>
                    110:    <dd>The following should be set on the Installation Settings screen:
                    111:     <ul>
                    112:      <li>Firewall will be enabled>/li>
                    113:      <li>SSH service will be enabled</li>
                    114:     </ul>
                    115:     If you will need command line access other than via the console, click the link to toggle the setting for the SSH port so it will be open.
                    116:   </dd>
1.1       raeburn   117: </dl>
                    118: <p>
1.2       raeburn   119: Finish installing your server, reboot and log in as root.
1.1       raeburn   120: </p>
                    121: 
1.2       raeburn   122: <h2>4. <a name="upd">Add software sources for your system</a></h2>
1.1       raeburn   123: <p>
1.2       raeburn   124: Use zypper to add package repositories for LON-CAPA and the statistics package: R.<br />
1.1       raeburn   125: Execute:
                    126: </p>
                    127: <pre>
1.2       raeburn   128: zypper addrepo http://install.loncapa.org/suse/sles12/ 'LON-CAPA'
1.3       raeburn   129: zypper addrepo 'https://download.opensuse.org/repositories/devel:/languages:/R:/released/SLE_12/' 'R-released SLE_12'
1.2       raeburn   130: zypper refresh
1.1       raeburn   131: </pre>
                    132: <p>
1.2       raeburn   133: Verify the required repositories are enabled:
                    134: </p>
1.1       raeburn   135: <pre>
1.2       raeburn   136: zypper lr -E
1.1       raeburn   137: </pre>
                    138: <p>
1.2       raeburn   139: The list of enabled repos should be as follows:
1.1       raeburn   140: </p>
1.2       raeburn   141: <table style="border: 0px; border-collapse: collapse;">
                    142: <tr><th>Alias</th><th>Name</th></tr>
                    143: <tr><td>LON-CAPA</td><td>LON-CAPA</td></tr>
                    144: <tr><td>R-released SLE_12</td><td>R-released SLE_12</td></tr>
                    145: <tr><td>SUSE_Linux_Enterprise_Server_12_SP5_x86_64:SLE-Product-SLES12-SP5-Pool</td><td>SLES12-SP5-Pool</td></tr>
                    146: <tr><td>SUSE_Linux_Enterprise_Server_12_SP5_x86_64:SLE-Product-SLES12-SP5-Updates</td><td>SLES12-SP5-Updates</td></tr>
                    147: <tr><td>SUSE_Linux_Enterprise_Software_Development_Kit_12_SP5_x86_64:SLE-SDK12-SP5-Pool</td><td>SLE-SDK12-SP5-Pool</td></tr>
                    148: <tr><td>SUSE_Linux_Enterprise_Software_Development_Kit_12_SP5_x86_64:SLE-SDK12-SP5-Updates</td><td>SLE-SDK12-SP5-Updates</td></tr>
                    149: <tr><td>SUSE_Package_Hub_12_SP5_x86_64:SUSE-PackageHub-12-SP5-Pool</td><td>SUSE-PackageHub-12-SP5-Pool</td></tr>
                    150: <tr><td>SUSE_Package_Hub_12_SP5_x86_64:SUSE-PackageHub-12-SP5-Standard-Pool</td><td>SUSE-PackageHub-12-SP5-Standard-Pool</td></tr>
                    151: </table>
1.1       raeburn   152: <h2>5. <a name="ilc">Installing LON-CAPA</a></h2>
                    153: <h3>Install prerequisites</h3>
                    154: <p> Execute: </p>
                    155: <pre>
1.2       raeburn   156: zypper in LONCAPA-prerequisites
1.1       raeburn   157: </pre><p>
                    158: This may take some minutes due to LON-CAPA's large number of dependencies.
                    159: </p>
                    160: <h3>Configure Firewall Settings</h3>
                    161: <p>After installing the prerequisites you should start yast, and select Security and Users -> Firewall. At step 2 include the following services: HTTP, HTTP with SSL, and Secure Shell.
                    162: </p>
                    163: <h3>Retrieve and execute LON-CAPA setup program</h3>
                    164: <p>
                    165: Retrieve the LON-CAPA setup with one of the following commands:
                    166: </p>
                    167: <pre>
                    168: wget http://install.loncapa.org/linux/install.tar
                    169: </pre>
                    170: <p>
                    171: Extract the archive with the following command:
                    172: </p>
                    173: <pre>
                    174: tar xf install.tar
                    175: </pre>
                    176: <p>
                    177: This creates a directory named <tt>installation</tt>.  Change to it and
                    178: execute the setup script with the following commands:
                    179: </p>
                    180: <pre>
                    181: cd installation
                    182: ./install.pl
                    183: </pre>
                    184: <p>
                    185: The script is used to prepare a Linux system to run LON-CAPA, and can also be
                    186: used to check the configuration of a system on which LON-CAPA has already been installed.  Typically, though, you will run this script only once, when you first install LON-CAPA.
                    187: </p>
                    188: <p>
                    189: The script will analyze your system to determine which actions are recommended.  The script will then prompt you to choose the actions you would like taken.
1.4     ! raeburn   190: Once a choice has been entered for all ten possible actions, required changes will be made.
1.1       raeburn   191: </p>
                    192: <p>The possible actions are:
                    193: <ul>
                    194: <li>Create the www user/group</li>
                    195: <li>Install the package LON-CAPA uses to authenticate users.</li>
                    196: <li>Set-up the MySQL database</li>
                    197: <li>Set-up MySQL permissions</li>
                    198: <li>Configure Apache web server</li>
1.4     ! raeburn   199: <li>Configure systemd security settings for Apache web server</li>
1.1       raeburn   200: <li>Configure start-up of services</li>
                    201: <li>Check firewall settings</li>
                    202: <li>Stop services not used by LON-CAPA,<br>
                    203:     e.g., services for a print server: cups daemon</li>
                    204: <li>Download LON-CAPA source code in readiness for installation</li>
                    205: </ul>
                    206: </p>
                    207: 
                    208: <h3>Determine LON-CAPA Settings</h3>
                    209: <p>
                    210: LON-CAPA requires a number of identifying parameters to be set in order
                    211: for it to function at all.  Below is a list with descriptions.
                    212: </p>
                    213: <dl>
                    214:   <dt>Host Type (library or access)</dt>
                    215:   <dd>The server must be designated a 'library' or an 'access' server.  In
                    216:       general you should have a library server for your instructors to create
                    217:       their course content on and run their courses.  Students should connect
                    218:       to access servers.  If you are doing the first install of LON-CAPA at
                    219:       your site, or if you are playing with it for your own edification you
                    220:       should make your machine a 'library' server.</dd>
                    221:   <dt>LON-CAPA domain</dt>
                    222:   <dd>Each site or school which installs LON-CAPA needs its own domain.
                    223:       Here at MSU we use 'msu'.  You should choose something short but
                    224:       meaningful.  <i>Restriction: One word, no hyphens, underscores, or
                    225:       special characters.</i>
                    226:   </dd>
                    227:   <dt>LON-CAPA host id</dt>
                    228:   <dd>Each LON-CAPA server requires a unique internal name.  We use names
                    229:       such as "msul1" for the first library server. <i>Restriction: One word,
                    230:       no hyphens, underscores, or special characters.</i>
                    231:   </dd>
                    232:   <dt>Host administrator email</dt>
                    233:   <dd>The amount of email sent to this address is relatively minimal.  Messages
                    234:       are sent every time the system starts up, or if the system is in
                    235:       serious trouble. On a laptop, make this <tt>root@localhost</tt>.
                    236:   </dd>
                    237: </dl>
                    238: 
                    239: <h3>Configuring LON-CAPA</h3>
                    240: <p>
                    241: To configure and install LON-CAPA, execute the following commands:
                    242: </p>
                    243: <pre>
                    244: cd /root/loncapa-X.Y.Z     (X.Y.Z should correspond to a version number like '2.10.0')
                    245: ./UPDATE
                    246: </pre>
                    247: <p>
                    248: You will need to enter the LON-CAPA configuration information you determined
                    249: in the previous section.
                    250: </p>
                    251: 
                    252: <h2>6. <a name="cdc">Creating a Domain Coordinator</a></h2>
                    253: <p>
                    254: You will need at least one user at your site who has the role of
                    255: 'domain coordinator'.  This user creates accounts for other users and
                    256: grants them additional privileges.  The make_domain_coordinator.pl script
                    257: invoked below requires that you enter the user's password.
                    258: Feel free to use the "passwd username" command to change it later.
                    259: Replace USERNAME and DOMAIN with an appropriate user name and your domain.
                    260: </p>
                    261: <pre>
                    262: cd /root/loncapa-X.Y.Z/loncom/build
                    263: perl make_domain_coordinator.pl USERNAME DOMAIN
                    264: </pre>
                    265: 
                    266: <h2>7. <a name="sts">Start/Restart Services</a></h2>
                    267: <p>
                    268: The LON-CAPA network services take a moment to start.  Most misconfigurations
                    269: will be apparent at this step.
                    270: </p>
                    271: <pre>
                    272: /etc/init.d/loncontrol start
                    273: /etc/init.d/apache2 start
                    274: </pre>
                    275: <p>
                    276: If you receive warnings when starting the httpd about missing perl modules,
                    277: please make sure you followed the instructions in
                    278: <b>Installing LON-CAPA Dependencies</b>.  If you still have errors, please
                    279: contact the LON-CAPA group.
                    280: </p>
                    281: 
                    282: <h2>8. <a name="log">Log in to your LON-CAPA Machine</a></h2>
                    283: <p>
                    284: Point a web browser at your new machine and log in as the domain
                    285: coordinator.  Congratulations!
                    286: </p>
                    287: 
                    288: <hr>
                    289: <h2>If things aren't working right</h2>
                    290: <p>
1.4     ! raeburn   291: If you've followed the steps above and the server doesn't start or you think 
        !           292: there's something wrong, please contact the LON-CAPA helpdesk.
        !           293: Installation/update support is available from: helpdesk at loncapa.org
        !           294: (replace " at " with @).
        !           295: If there were errors in installation of the dependency RPMs or errors during the
1.1       raeburn   296: automatic setup, please send us as much information as possible.
                    297: If some part of this document is unclear please let us know.
                    298: </p>

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>