Changes between Initial Version and Version 1 of ServerIntro


Ignore:
Timestamp:
Apr 24, 2007, 6:53:54 PM (15 years ago)
Author:
Nicolas
Comment:

Converted by an automated script - manual changes will follow.

Legend:

Unmodified
Added
Removed
Modified
  • ServerIntro

    v1 v1  
     1= Setting up a BOINC server =
     2
     3      You can potentially use any Unix system as a BOINC server. Our recommendations are:  * '''Hardware''': use a host with good CPU capacity (dual Xeon or Opteron), at least 2 GB of RAM, and at least 40 GB of free disk space. Do whatever you can to make it highly reliable (UPS power supply, RAID disk configuration, hot-swappable spares, tempurature-controlled machine room, etc.). If you anticipate a high-traffic project, use a machine whose RAM capacity is 8 GB or more, and that uses 64-bit processors. If your server capacity is exceeded, you can increase capacity using [http://boinc.berkeley.edu/multi_host.php multiple server hosts]. However, we recommend that you not do this initially. In most cases one host is enough.
     4 * '''Software''': use a recent Linux release.
     5
     6== Groups and permissions ==
     7 We recommend that you create a separate user and group for the BOINC server, and add the web-server user to this group. Details are [http://boinc.berkeley.edu/groups.php here].
     8
     9== Installing BOINC software ==
     10  * Download and install whatever [http://boinc.berkeley.edu/trac/wiki/SoftwarePrereqsUnix software prerequisites] are needed on your system.
     11 * [http://boinc.berkeley.edu/source_code.php Download the BOINC software].
     12 * [http://boinc.berkeley.edu/build_system.php Configure and build] the BOINC software.
     13
     14== Operating system configuration ==
     15  Some parts of the BOINC server (the feeder and scheduling server) use shared memory. Hosts where these run must have shared memory enabled, with a maximum segment size of at least 32 MB. How to do this depends on the operating system; some information is [http://developer.postgresql.org/docs/postgres/kernel-resources.html here].   == MySQL notes ==
     16  * After installing and running the server, grant permissions for your own account and for the account under which Apache runs ('nobody' in the following; may be different on your machine). All mysql accounts should be password protected including root.
     17{{{
     18    mysql -u root
     19    grant all on *.* to yourname@localhost identified by 'password';
     20    grant all on *.* to yourname identified by 'password';
     21    grant all on *.* to nobody@localhost identified by 'password';
     22    grant all on *.* to nobody identified by 'password';
     23}}}
     24 * Set your PATH variable to include MySQL programs (typically /usr/local/mysql and /usr/local/mysql/bin).
     25 * You'll need to back up your database. Generally this requires stopping the project, making a copy or snapshot, and restarting. An example is [http://boinc.berkeley.edu/mysql_backup.txt here].
     26 * BOINC gets MySQL compiler and linker flags from a program called mysql_config which comes with your MySQL distribution. This sometimes references libraries that are not part of your base system installation, such as -lnsl or -lnss_files. You may need to install additional packages (often you can use something called 'mysql-dev' or 'mysql-devel') or fiddle with Makefiles.
     27 * MySQL can be the bottleneck in a BOINC server. To optimize its performance, read about [http://boinc.berkeley.edu/mysql_config.php configuring MySQL for BOINC].
     28 * [http://boinc.berkeley.edu/mysql_cluster.txt Notes on running MySQL on a cluster].
     29
     30== MySQLclient notes ==
     31  * Configure mysql with the --enable-thread-safe-client switch.
     32 * Set your LD_LIBRARY_PATH to refer to the correct library.
     33
     34== Apache notes ==
     35 In httpd.conf, set the default MIME type as follows (otherwise you'll get file upload signature verification errors):
     36
     37
     38{{{
     39DefaultType application/octet-stream
     40}}}
     41 To limit denial-of-service attacks, we recommend turning off directory indexing by adding -Indexes to the Options directive.   == PHP notes ==
     42  * Make sure 'magic quotes' are enabled (this is the default). The file /etc/php.ini should contain
     43{{{
     44magic_quotes_gpc = On
     45}}}
     46 * By default, BOINC uses PHP's mail function to send email to participants. This uses sendmail. If this doesn't work, you can use [http://phpmailer.sourceforge.net/ PHPMailer] instead, which is a very flexible mail-sending mechanism. To do this:   * Download PHPMailer and put it under PROJECT/html/inc/phpmailer.
     47  * Set the following variables in your PROJECT/html/project/project.inc file (substitute your own values):
     48{{{
     49 = true;
     50 = "xxx.xxx.xxx";
     51 = "smtp";
     52}}}
     53