Project

General

Profile

Setup Remote Processing » History » Version 5

Neil Voss, 05/13/2010 10:46 AM

1 1 Amber Herold
h1. Setup Remote Processing
2
3
h2. Remote Appion Processing through ssh
4
 
5
A more advanced way to run appion script is done through an ssh session.  This is equivalent of having you ssh into a computer and starting the appion processes.
6
7
There are two kinds of appion processes.  The first is a single-node process that can be run on a stand-alone workstation or the head-node of a computer cluster without PBS.  The second is a multiple-node process that requires PBS to run on the cluster.  When you use "Just Show Command" option, it is always a single-node process, but if you run through ssh it could be either, depending on the demand of the process.  For example,
8
imageuploader.py is always run as single-node process while maxlikeAlignment.py is either run on single-node with "Just Show Command" or as a PBS job submission when you run through ssh.
9
10 5 Neil Voss
h2. Install and setup ssh2 extension for php at your web-server 
11 1 Amber Herold
12
This enables an ssh session initialized from appionweb
13
# Download and install the ssh2 extension for php as instructed at its download site:
14
* http://www.php.net/manual/en/ssh2.installation.php
15
    Install openssl and compile libssh first before compiling php-ssh2 extension. Once you get the final ssh2.so, add it in your php.ini
16
17
The extension module is added to php in the same way as does the php-mrc module we distribute for the viewing mrc images through php.  To check whether it worked and for alternative way to make php recognize the module used in newer php, see http://emg.nysbc.org/documentation/leginon/bk02ch04s07.php under the section *Check php information* and *Alternative approach if mrc module does not show up in info.php output*
18
19 5 Neil Voss
h2. configuration at web server side 
20 1 Amber Herold
21
*IMPORTANT*: What we refer here as _your_cluster.php_ should not be taken literally.  For example, if you access your cluster through network with a name "bestclusterever", you should name your cluster configuration php file *bestclusterever.php*, not _your_cluster.php_.
22
# Go to your_dbem_1_5_1/processing directory
23
# Copy *default_cluster.php* to _your_cluster.php_
24
# [[ClusterPhpSettings|Edit your_cluster.php]] to correspond to your cluster configuration.
25
# Edit *config_processing.php* to add your cluster and, if desired, a stand-alone workstation as processing_host and register the _your_cluster.php_ you just created.
26
27
<pre>
28
$PROCESSING_HOSTS[]="your_stand-alone_processing_workstation";
29
$PROCESSING_HOSTS[]="your_cluster";
30
$CLUSTER_CONFIGS= array (
31
  'your_cluster'
32
);
33
</pre>
34
35
36 5 Neil Voss
h2. Setting up PBS on processing server side 
37 1 Amber Herold
38 2 Amber Herold
Follow these instructions to [[Install PBS|setup PBS]].
39 1 Amber Herold
40 5 Neil Voss
h2. Testing 
41 1 Amber Herold
42 5 Neil Voss
h3. Testing php-ssh2 installation
43 1 Amber Herold
44
Check your info.php as you did with mrctool installation.  Corrected installed extension should show up in the output of info.php.  Reference http://emg.nysbc.org/documentation/leginon/bk02ch04s07.php under the section *Check php information* and *Alternative approach if mrc module does not show up in info.php output*.
45
46 5 Neil Voss
h3. Testing ssh log in 
47 1 Amber Herold
48
Use the top right form on the processing page to log in as if doing an ssh session. The page will acknowledge that you have been logged in if the setup is correct.  You will be able to edit description of a run and to hide failed runs when logged in. The option for submitting the job appears at the bottom of the processing form whenever available.
49
50 5 Neil Voss
h3. Testing simple appion processing job submission 
51 1 Amber Herold
52
Upload template is a good example to try:
53
# Create a small mrc image as your template to be uploaded.
54
# Select Upload template in Import tools in the appionweb processing menu of an existing session.
55
# Type in the needed information.
56
# When you finish filling the form, instead of clicking on "Just show command", choose your processing host and run the job by clicking "Upload Template".
57
# For simple process such as this, the webpage will take a little while to refresh until the job is completed.
58
# If you get the message "Template is uploaded", the process is successful and if you refresh the page you will find the template in the available list. 
59
60 5 Neil Voss
h3. Testing PBS-required appion processing job submission 
61 1 Amber Herold
62
Particle selection such as DogPicker is a good example to try:
63
# Click on DoG Picking under Particle Selection menu
64
# Enter the required parameters
65
# When you finish filling a form for an appion processing, choose your processing host and run the job.  Pages for monitoring the job become available after the job is queued and subsequently begins running. If the status appears as "Running or Queued" at first, the setup is likely correct.
66
# After a while, the process will be completed and the status becomes "Done" when you click to have the Status updated on the page.
67
68 5 Neil Voss
h3. Check _your_cluster.php_ setup 
69 1 Amber Herold
70
For reconstructions involving iterations of different parameters such as EMAN reconstruction by refinement, the _your_cluster.php_ is used to generate the script.  Examine the script created on the web form and modify _your_cluster.php_  You can copy the script to your cluster and test run/modify it until it is correct.
71 3 Amber Herold
72
73
______
74
75
[[Create a Test Project|< Create a Test Project]]
76 4 Amber Herold
77
______