-
Notifications
You must be signed in to change notification settings - Fork 6
Quickstart
It describes the first steps with configuration, user-, pool-, and host creation.
The installation is described here.
##Initial Configuration
If once you have successfully installed Jarifa like described in the installation procedure, you have to configure it.
The central (and only) place where Jarifa is configured is the file "jarifa.conf.template" that you have to copy with the name jarifa.conf in the ./conf subfolder. Here is a commented example of this file:
<?xml version="1.0" encoding="UTF-8"?>
<conf>
<db>
<user>jarifa</user> <!-- User name of the MySQL account -->
<password>jarifa</password>
<host>localhost</host> <!-- Server name of the MySQL host -->
<name>jarifa</name> <!-- Name of the Jarifa database that holds the Jarifa tables -->
</db>
<!-- Uncomment the <proxy> section if you are using a proxy-->
<!--
<proxy>
<name>127.0.0.1</name>
<port>3128</port>
<request_fulluri>1</request_fulluri>
</proxy>
-->
<account_manager>
<name>Jarifa</name> <!-- Descriptive name of your Jarifa server, it will be displayed in BOINC Manager-->
<language>en_US.utf8</language> <!-- Language for Jarifa, en_US.utf8 for English or es_ES.utf8 for Spanish-->
<logo>img/logo.png</logo> <!-- Logo for the Jarifa web page-->
<master_url>http://127.0.0.1/jarifa</master_url> <!--The Master URL of Jarifa-->
<min_passwd_length>8</min_passwd_length> <!-- Minimum password length -->
<usernames>1</usernames> <!--Allows the employment of user names instead of emails for user credentials-->
<repeat_sec>280</repeat_sec> <!--Polling time for clients-->
<public_signature> <!--Public signature created with BOINC server crypt_prog program for signing projects and ensure security among Jarifa and BOINC clients-->
</public_signature>
<boinc_user_email>jarifa@unex.es</boinc_user_email> <!--BOINC user e-mail that you want to use for Jarifa (it could be an existing one)-->
<boinc_user_name>jarifa</boinc_user_name> <!--BOINC user name that you want to use for Jarifa (it could be an existing one)-->
<boinc_passwd>jarifa</boinc_passwd> <!--BOINC password that you want to use for Jarifa (it could be an existing one)-->
<min_core_client_version>600</min_core_client_version> <!--Minimum BOINC core client version required for working with Jarifa. By default 6.0-->
<volunteer>1</volunteer> <!--Enables (1) or Disables (0) the Volunteer Role-->
</account_manager>
<gmap> <!--Google Maps integration. Add your country and a Google Map Key to enable this feature-->
<country>Spain</country>
<key>GOOGLE-MAP-KEY</key>
</gmap>
<projects>
<poll>0</poll> <!-- The poll system for projects is disabled by default -->
<password>poll</password> <!-- Password for protecting the attachment of projects based on the polls -->
</projects>
<!-- Identi.ca microblogging service to post updates automatically. Change source value to show the name of the
application that publishes the information in Identi.ca. Un comment the <identica> section to enable it -->
<!-- <identica>
<username>jarifa</username>
<password>password</password>
<source>Jarifa</source>
</identica>
-->
<rss_feeds> <!-- RSS Feed for submit news to BOINC clients. By default, BOINC RSS feed. -->
<rss_feed>
<url>http://boinc.berkeley.edu/rss_main.php</url>
<poll_interval>3600</poll_interval>
</rss_feed>
</rss_feeds>
</conf>
##Remarks
- This Quickstart assumes, that you have both, Jarifa and MySQL, on the same host (localhost).
- The public key must be created with BOINC's crypt_prog:
- The cryp_prog application has to be compiled from the BOINC source code.
- /usr/local/src/boinc/lib/./crypt_prog -genkey 1024 folder/priv.key folder/pub.key
- The pub.key file has the public key that must be copied to the jarifa.conf file in the section
<public_signature>
. - If you change values in the config file, you have to restart your Jarifa web server.
##First Start First of all copy the file jarifa.conf.template to the file jarifa.conf and set up the DB (please check the installation page for more details). Once you have set up correctly the DB, you will be able to open the URL http://localhost/jarifa with your browser.
You should see the login page:
Jarifa by default provides a root account with the following credentials:
- user name: root
- password: root
Once you have logged in, you should be able to see the welcome page with the full menu at the left (as it is expected for Jarifa's root account).
##User Creation
You can now start to create your first user. To make things work, you need at least one supplier or if you prefer a volunteer.
##Adding a Supplier
Click on Users link, and then in New User. Fill in the form, select the role supplier and add a name for the supplier, for example: "Lab01". This name will be used to set up the preferences of all the hosts that belong to this supplier.
As you can see in the screen shot below, Jarifa has automatically created a default pool for the supplier.
For the moment we do not change any of the pool's attributes.
##Adding a Volunteer
A volunteer is a user that trusts the organization that runs Jarifa, and wants to collaborate with the BOINC projects chosen by this institution. Thus, the volunteer has all the control over his computers and hence BOINC preferences. To create a volunteer, just go to the front page of Jarifa, and click on "Join us", and fill in the form. Once the volunteer user has been successfully created, the volunteer can log in, and change his profile as well as see his position among the other volunteers.
##Adding Projects
The next step is adding a BOINC project to Jarifa. This could be any BOINC project of the world, your own, or another. Remember, that the BOINC user account credentials given in the config file (jarifa.conf) are used to contact the projects, and create the user for the first time.
Add the BOINC project by filling up the new-project form (I've chosen Einstein@home for this example, be free to choose another project). To fill all the fields of the form, you have to create a signature for the project URL. For this you have to use again BOINC's crypt_prog: crypt_prog -sign_string BOINCURL priv.key
Thus, in our case it should be:
crypt_prog -sign_string http://einstein.phys.uwm.edu/ priv.key
The obtained string, has to be copy and pasted into the signature box. Finally, if the BOINC project requires the employment of an Invitation Code, introduce it in the form. The Share box is used to set up the priority of different projects. By default all the projects share the same amount of resources. Nevertheless, it is possible to establish that a BOINC project uses the 90% of the time and the rest the 10% by introducing in this box the percentage that we want for each BOINC project.
##Attaching Hosts
Now it is time to attach a host to the Jarifa account manager. You can use BOINC Manager's graphical interface or use the boinc_cmd program. For this tutorial I will demonstrate this on the command line. It is assume, that you have BOINC core client running as a background process.
Open a console, change to the BOINC installation directory and type in the following command:
./boinccmd --join_acct_mgr http://localhost/jarifa testuser password
You can control the success of this operation by calling
cat stdoutdae.txt
The resulting last lines should similar to this:
23-Sep-2008 11:50:35 [---] Contacting account manager at http://localhost/jarifa
23-Sep-2008 11:50:36 [---] Account manager contact succeeded
23-Sep-2008 11:50:36 [---] General prefs: from http://localhost/jarifa (last modified 01-Jan-1970 01:00:00)
23-Sep-2008 11:50:36 [---] Host location: none
Now you should look at the host page of Jarifa and you should get something similar to the following picture (this one has more than one computer):
##Generating statistics
Jarifa includes a statistic generator, that produces statistics charts for granted credits and achieved GFLOPS:
Host statistics are retrieved by remote calling the allocated project's get_credit_info WebRPC and analyzing the replied data. Simply call php stats.php in the Jarifa root folder. The generated images will be saved in img/stats subfolder. It's recommended creating a cron-job, that will do this task periodically (e.g. once every day).
Your statistics can also be consulted in different BOINC stats pages like BAM!, as Jarifa employs the standard protocols and mechanisms of BOINC.