Changes between Version 5 and Version 6 of ServerIntro

May 9, 2007, 1:42:02 PM (15 years ago)



  • ServerIntro

    v5 v6  
    11= Setting up a BOINC server =
    3 You can potentially use any Unix system as a BOINC server. Our recommendations are:
     3== Using a virtual machine ==
    5  * '''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 [MultiHost multiple server hosts]. However, we recommend that you not do this initially. In most cases one host is enough.
    6  * '''Software''': use a recent Linux release.
     5The easiest (and recommended) way to set up a BOINC server is
     6in a virtual machine that we've created for that purpose,
     7with all the necessary software already installed.
    8 == Groups and permissions ==
     9== Using a real machine ==
     11You can potentially use any Unix system as a BOINC server.
     12We recommend using a recent Linux release.
     13Then set up the machine as follows.
     15=== Groups and permissions ===
    916BOINC server programs run as two different users:
    1017 * The scheduler and file upload handler are CGI programs, so they run as the same user as the web server (typically user 'apache', group 'apache').
    1320By default, the directories created by user apache are not world-writeable. This causes problems: for example, when the file upload handler creates a directory in the [DirHierarchy upload hierarchy], it's owned by (apache, apache), and the [ file deleter] (which runs as boincadm) won't be able to delete the files there.
    15 == Recommended solution ==
    17 Edit /etc/group so that apache belongs to group boinc, i.e. the line:
     22To solve this problem, edit /etc/group so that apache belongs to group boinc, i.e. the line:
    2833When you create a BOINC project using [MakeProject make_project], the critical directories are owned by boincadm and have the set-GID bit set; this means that any directories or files created by apache in those directories will have group boinc (not group apache). The BOINC software makes all directories group read/write. Thus, both apache and boinc will have read/write access to all directories and files, but other users will have no access.
    30 On an existing project, do:
     35To fix permissions on an existing project, do:
    44 == Installing BOINC software ==
     49=== Installing BOINC software ===
    4550 * Download and install whatever [SoftwarePrereqsUnix software prerequisites] are needed on your system.
    4651 * [SourceCode Download the BOINC software].
    4752 * [BuildSystem Configure and build] the BOINC software.
    49 == Operating system configuration ==
     54=== Operating system configuration ===
    5055Some 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 [ here].
    52 == MySQL notes ==
     57=== MySQL notes ===
    5358 * 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.
    6974 * Set your LD_LIBRARY_PATH to refer to the correct library.
    71 == Apache notes ==
     76=== Apache notes ===
    7277 In httpd.conf, set the default MIME type as follows (otherwise you'll get file upload signature verification errors):
    7984To limit denial-of-service attacks, we recommend turning off directory indexing by adding -Indexes to the Options directive.
    81 == PHP notes ==
     86=== PHP notes ===
    8388 * Make sure 'magic quotes' are enabled (this is the default). The file /etc/php.ini should contain