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

1.1       raeburn     1: <h1>Installing LON-CAPA on a minimal SuSE Linux Enterprise Server (SLES) 15</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 15 (SLES 15) 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>
                     15: Installing Linux is straightforward.
                     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 15 installation media</a></li>
                     27:   <li><a href="#net">Determine Network Settings</a></li>
                     28:   <li><a href="#lin">Install SLES 15</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 15</a></h2>
                     38: <p>
1.3       raeburn    39: SLES15 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 either the SLE-15-SP2-Full-x86_64-GM-Media1.iso or the SLE-15-SP2-Online-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 15 Install</a></h2>
                     57: <p>
                     58: Installing SuSE Linux Enterprise Server is straightforward.
                     59: Some documentation is available from
1.3       raeburn    60: <a href="https://documentation.suse.com/sles/15-SP2/pdf/art-sle-installquick_color_en.pdf">
                     61: https://documentation.suse.com/sles/15-SP2/pdf/art-sle-installquick_color_en.pdf</a>.<br /><br />
1.1       raeburn    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:    <dt>Partitioning your Drive</dt>
                     69:    <dd>For a LON-CAPA library server (i.e., the main server used
                     70:        for permanent storage of course and user data),
                     71:        a separate partition is recommended for /home, as this
                     72:        simplifies future upgrades of the operating system.
                     73:        If you are adding an additional access server to an
                     74:        existing LON-CAPA domain, this does not apply as no
                     75:        permanent data are stored on an access server.
                     76:        As LON-CAPA resource files are stored in the /home directory,
                     77:        the majority of the disk space should be allocated here.
                     78:        If you have 20 GB of space for SLES15, /home should
                     79:        receive at least 10 to 12 GB. Since MySQL uses the /var
                     80:        filesystem to store its databases you should have as least
                     81:        4 gigs of space available on /var.  Be sure to
                     82:        include adequate swap space.  A minimum is 512 MB, but you should
                     83:        typically have 1 or 2x as much swap space as you do physical RAM.
                     84:        </dd>
                     85:    <dt>Network Configuration</dt>
                     86:    <dd>LON-CAPA will <b>not</b> work with a machine set up to use a dynamic
                     87:        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.
                     88:    </dd>
                     89:    <dt>Available Extensions and Modules</dt>
                     90:    <dd>Check the boxes for the following:<ul>
1.3       raeburn    91:        <li>SUSE Package Hub</i> 
1.1       raeburn    92:        <li>Basesystem Module</li>
                     93:        <li>Desktop Applications</li>
                     94:        <li>Development Tools</li>
                     95:        <li>Server Applications</li>
                     96:        </ul>
                     97:    </dd>
                     98:    <dt>System Role</dt>
                     99:    <dd>Select: Minimal</dd>
                    100:    <dt>Software Selection</dt>
                    101:    <dd>Check the boxes for the following:<ul>
                    102:        <li>Help and Support Documentation</li>
                    103:        <li>Minimal Base System</li>
                    104:        <li>YaST System Administration</li>
                    105:        </ul>
                    106:    </dd>
                    107:    <dt>Security</dt>
1.4     ! raeburn   108:    <dd>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</dd>
1.1       raeburn   109: </dl>
                    110: <p>
                    111: Finish installing your server, reboot and log in as root.
                    112: </p>
                    113: <h3>Firewall Configuration</h3>
                    114: <p>
                    115: Execute:
                    116: </p>
                    117: <pre>
                    118: yast
                    119: </pre>
                    120: Use "Security and Users" -> Firewall -> Zones -> public to enable access to standard web server ports for http and https.
                    121: </p>
                    122: <h2>4. <a name="upd">Add software sources</a></h2>
                    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.4     ! raeburn   128: zypper addrepo http://install.loncapa.org/suse/sles15/ 'LON-CAPA'
1.2       raeburn   129: zypper addrepo 'https://download.opensuse.org/repositories/devel:/languages:/R:/released/SLE_15/' 'R-released SLE_15'
                    130: zypper addrepo 'https://download.opensuse.org/repositories/devel:/languages:/R:/released/SLE_15_SP1/' 'R-released SLE_15_SP1'
1.1       raeburn   131: zypper refresh 
                    132: </pre>
                    133: <p>
                    134: Verify the required repositories are enabled:
                    135: </p>
                    136: <pre>
                    137: zypper lr -E
                    138: </pre>
                    139: <p>
                    140: The list of enabled repos should be as follows:
                    141: </p>
                    142: <table style="border: 0px; border-collapse: collapse;">
                    143: <tr><th>Alias</th><th>Name</th></tr>
1.3       raeburn   144: <tr><td>Basesystem_Module_15_SP2_x86_64:SLE-Module-Basesystem15-SP2-Pool</td><td>SLE-Module-Basesystem15-SP2-Pool</td></tr>
                    145: <tr><td>Basesystem_Module_15_SP2_x86_64:SLE-Module-Basesystem15-SP2-Updates</td><td>SLE-Module-Basesystem15-SP2-Updates</td></tr>
                    146: <tr><td>Desktop_Applications_Module_15_SP2_x86_64:SLE-Module-Desktop-Applications15-SP2-Pool</td><td>SLE-Module-Desktop-Applications15-SP2-Pool</td></tr>
                    147: <tr><td>Desktop_Applications_Module_15_SP2_x86_64:SLE-Module-Desktop-Applications15-SP2-Updates</td><td>SLE-Module-Desktop-Applications15-SP2-Updates</td></tr>
                    148: <tr><td>Development_Tools_Module_15_SP2_x86_64:SLE-Module-DevTools15-SP2-Pool</td><td>SLE-Module-DevTools15-SP2-Pool</td></tr>
                    149: <tr><td>Development_Tools_Module_15_SP2_x86_64:SLE-Module-DevTools15-SP2-Updates</td><td>SLE-Module-DevTools15-SP2-Updates</td></tr>
1.4     ! raeburn   150: <tr><td>LON-CAPA</td><td>LON-CAPA</td></tr>
1.2       raeburn   151: <tr><td>R-released SLE_15</td><td>R-released SLE_15</td></tr>
                    152: <tr><td>R-released SLE_15_SP1</td><td>R-released SLE_15_SP1</td></tr>
1.3       raeburn   153: <tr><td>SUSE_Linux_Enterprise_Server_15_SP2_x86_64:SLE-Product-SLES15-SP2-Pool</td><td>SLE-Product-SLES15-SP2-Pool</td></tr>
                    154: <tr><td>SUSE_Linux_Enterprise_Server_15_SP2_x86_64:SLE-Product-SLES15-SP2-Updates</td><td>SLE-Product-SLES15-SP2-Updates</td></tr>
                    155: <tr><td>SUSE_Package_Hub_15_SP2_x86_64:SLE-Module-Packagehub-Subpackages15-SP2-Pool</td><td>SLE-Module-Packagehub-Subpackages15-SP2-Pool</td></tr>
                    156: <tr><td>SUSE_Package_Hub_15_SP2_x86_64:SLE-Module-Packagehub-Subpackages15-SP2-Updates</td><td>SLE-Module-Packagehub-Subpackages15-SP2-Updates</td></tr>
                    157: <tr><td>SUSE_Package_Hub_15_SP2_x86_64:SUSE-PackageHub-15-SP2-Backports-Pool</td><td>SUSE-PackageHub-15-SP2-Backports-Pool</td></tr>
                    158: <tr><td>SUSE_Package_Hub_15_SP2_x86_64:SUSE-PackageHub-15-SP2-Pool</td><td>SUSE-PackageHub-15-SP2-Pool</td></tr>
                    159: <tr><td>Server_Applications_Module_15_SP2_x86_64:SLE-Module-Server-Applications15-SP2-Pool</td><td>SLE-Module-Server-Applications15-SP2-Pool</td></tr>
                    160: <tr><td>Server_Applications_Module_15_SP2_x86_64:SLE-Module-Server-Applications15-SP2-Updates</td><td>SLE-Module-Server-Applications15-SP2-Updates</td></tr>
1.1       raeburn   161: <tr><td>devel_languages_R_released</td><td>R core components, supplements (like rkward), and CRAN packages (SLE_15_SP1)</td></tr>
                    162: </table>
                    163: <h2>5. <a name="ilc">Installing LON-CAPA</a></h2>
                    164: <h3>Install prerequisites</h3>
                    165: <p> Execute: </p>
                    166: <pre>
                    167: zypper in LONCAPA-prerequisites
                    168: </pre>
                    169: <p>
                    170: This may take some minutes due to LON-CAPA's large number of dependencies.
                    171: </p>
                    172: <h3>Retrieve and execute LON-CAPA setup program</h3>
                    173: <p>
                    174: Retrieve the LON-CAPA setup with one of the following commands:
                    175: </p>
                    176: <pre>
                    177: wget http://install.loncapa.org/linux/install.tar
                    178: </pre>
                    179: <p>
                    180: Extract the archive with the following command:
                    181: </p>
                    182: <pre>
                    183: tar xf install.tar
                    184: </pre>
                    185: <p>
                    186: This creates a directory named <tt>installation</tt>.  Change to it and
                    187: execute the setup script with the following commands:
                    188: </p>
                    189: <pre>
                    190: cd installation
                    191: ./install.pl
                    192: </pre>
                    193: <p>
                    194: The script is used to prepare a Linux system to run LON-CAPA, and can also be
                    195: 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.
                    196: </p>
                    197: <p>
                    198: 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.
                    199: Once a choice has been entered for all nine possible actions, required changes will be made.
                    200: </p>
                    201: <p>The possible actions are:
                    202: <ul>
                    203: <li>Create the www user/group</li>
                    204: <li>Install the package LON-CAPA uses to authenticate users.</li>
                    205: <li>Set-up the MySQL database</li>
                    206: <li>Set-up MySQL permissions</li>
                    207: <li>Configure Apache web server</li>
                    208: <li>Configure start-up of services</li>
                    209: <li>Check firewall settings</li>
1.2       raeburn   210: <li>Stop services not used by LON-CAPA<br />
1.1       raeburn   211:     e.g., services for a print server: cups daemon</li>
                    212: <li>Download LON-CAPA source code in readiness for installation</li>
                    213: </ul>
                    214: </p>
                    215: 
                    216: <h3>Determine LON-CAPA Settings</h3>
                    217: <p>
                    218: LON-CAPA requires a number of identifying parameters to be set in order
                    219: for it to function at all.  Below is a list with descriptions.
                    220: </p>
                    221: <dl>
                    222:   <dt>Host Type (library or access)</dt>
                    223:   <dd>The server must be designated a 'library' or an 'access' server.  In
                    224:       general you should have a library server for your instructors to create
                    225:       their course content on and run their courses.  Students should connect
                    226:       to access servers.  If you are doing the first install of LON-CAPA at
                    227:       your site, or if you are playing with it for your own edification you
                    228:       should make your machine a 'library' server.</dd>
                    229:   <dt>LON-CAPA domain</dt>
                    230:   <dd>Each site or school which installs LON-CAPA needs its own domain.
                    231:       Here at MSU we use 'msu'.  You should choose something short but
                    232:       meaningful.  <i>Restriction: one word. Permitted characters 
                    233:       (lower case preferred) are letters and numbers and . and - </i> 
                    234:   </dd>
                    235:   <dt>LON-CAPA host id</dt>
                    236:   <dd>Each LON-CAPA server requires a unique internal name.  We use names
                    237:       such as "msul1" for the first library server. <i>Restriction: One word.
                    238:       Permitted characters (lower case preferred) are letters and numbers and . and -
                    239:       </i>
                    240:   </dd>
                    241:   <dt>Host administrator email</dt>
                    242:   <dd>The amount of email sent to this address is relatively minimal.  Messages
                    243:       are sent every time the system starts up, or if the system is in
                    244:       serious trouble. On a laptop, make this <tt>root@localhost</tt>.
                    245:   </dd>
                    246: </dl>
                    247: 
                    248: <h3>Configuring LON-CAPA</h3>
                    249: <p>
                    250: To configure and install LON-CAPA, execute the following commands:
                    251: </p>
                    252: <pre>
                    253: cd /root/loncapa-X.Y.Z     (X.Y.Z should correspond to a version number like '2.11.3')
                    254: ./UPDATE
                    255: </pre>
                    256: <p>
                    257: You will need to enter the LON-CAPA configuration information you determined
                    258: in the previous section.
                    259: </p>
                    260: 
                    261: <h2>6. <a name="cdc">Creating a Domain Coordinator</a></h2>
                    262: <p>
                    263: You will need at least one user at your site who has the role of
                    264: 'domain coordinator'.  This user creates accounts for other users and
                    265: grants them additional privileges.  The make_domain_coordinator.pl script
                    266: invoked below requires that you enter the user's password.
                    267: Feel free to use the "passwd username" command to change it later.
                    268: Replace USERNAME and DOMAIN with an appropriate user name and your domain.
                    269: </p>
                    270: <pre>
                    271: cd /root/loncapa-X.Y.Z/loncom/build
                    272: perl make_domain_coordinator.pl USERNAME DOMAIN
                    273: </pre>
                    274: 
                    275: <h2>7. <a name="sts">Start/Restart Services</a></h2>
                    276: <p>
                    277: The LON-CAPA network services take a moment to start.  Most misconfigurations
                    278: will be apparent at this step.
                    279: </p>
                    280: <pre>
1.3       raeburn   281: /home/httpd/perl/loncontrol start
1.1       raeburn   282: systemctl start apache2
                    283: </pre>
                    284: <p>
                    285: If you receive warnings when starting apache2 about missing perl modules,
                    286: please make sure you followed the instructions in
                    287: <b>Installing LON-CAPA Dependencies</b>.  If you still have errors, please
                    288: contact the LON-CAPA group.
                    289: </p>
                    290: 
                    291: <h2>8. <a name="log">Log in to your LON-CAPA Machine</a></h2>
                    292: <p>
                    293: Point a web browser at your new machine and log in as the domain
                    294: coordinator.  Congratulations!
                    295: </p>
                    296: 
                    297: <hr>
                    298: <h2>If things aren't working right</h2>
                    299: <p>
                    300: If you've followed the steps above and the server doesn't start or you think
                    301: there's something wrong, please get in touch with the LON-CAPA group.
1.2       raeburn   302: You can submit a help request using our web form:<br />
                    303: <a href="http://help.loncapa.org/help/">http://help.loncapa.org/help/</a><br />
1.1       raeburn   304: If there were errors in installation of the dependency RPMs or during the
                    305: automatic setup, please send us as much information as possible.
                    306: If some part of this document is unclear please let us know.
                    307: </p>

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