Configure web server to submit jobs » History » Revision 2
Revision 1 (Neil Voss, 05/19/2010 02:12 PM) → Revision 2/11 (Neil Voss, 05/19/2010 02:17 PM)
h1. Configure web server to submit jobs
h2. Remote Appion Processing through ssh
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.
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, imageuploader.py is typically 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.
h2. Install the php-ssh2 extension
bq. For newer systems the extension is available through the repository, e.g., on Fedora 12 type "@sudo yum install php-pecl-ssh2@"
This enables an ssh session initialized from appionweb
# Download and install the ssh2 extension for php as instructed at its download site:
* http://www.php.net/manual/en/ssh2.installation.php
Install openssl and compile libssh first before compiling php-ssh2 extension. Once you get the final ssh2.so, add it in your php.ini
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*
h2. configuration at web server side
*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_.
# Go to your_dbem_1_5_1/processing directory
# Copy *default_cluster.php* to _your_cluster.php_
# [[ClusterPhpSettings|Edit your_cluster.php]] to correspond to your cluster configuration.
# 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.
<pre>
$PROCESSING_HOSTS[]="your_stand-alone_processing_workstation";
$PROCESSING_HOSTS[]="your_cluster";
$CLUSTER_CONFIGS= array (
'your_cluster'
);
</pre>
[[Setup job submission server|< Setup job submission server]] | [[Testing job submission|Testing job submission >]]