The System Manager allows the admin user to control the operation and enable various features of WebMO.
WebMO System Manager
Starting/Stopping the WebMO daemon: The WebMO daemon is a background process that monitors jobs while they are running. The status of the WebMO daemon ("Running" or "Not running") is displayed on the System Manager page. It is automatically started or stopped when jobs are submitted or there are no jobs running, respectively, and normally requires no administrative intervention. It is also possible for the admin user to manually start or stop the daemon if the need arises. If the daemon is stopped, then all currently running jobs are killed! If the daemon is started, it will begin to process any queued jobs. If the daemon is started when there are no queued jobs, it will automatically exit since the job queue is empty. The most common situation for manually starting or stopping the WebMO daemon would be before or after a scheduled system shutdown or WebMO upgrade.
Enabling/Disabling the WebMO queue: The WebMO built-in queue submits jobs to computational engines as CPU cores become available. The status of the WebMO built-in queue is normally "Enabled". Disabling the built-in queue allows currently running jobs to complete, but does not start any new jobs. This capability is useful if the computer needs to be taken down for maintenance while jobs are still queued. After the computer is brought back up, the queue should be enabled and the WebMO daemon should be manually started, so that queued jobs are run.
No jobs should be running when updating WebMO. First, disable the WebMO queue. Then stop all running jobs by allowing any running jobs to complete, killing any running jobs, or stopping the daemon. After the upgrade, enable the WebMO queue and then start the daemon to begin processing any queued jobs.
Maintaining the Job Database
Purge database of deleted dobs: WebMO maintains a job database for efficiently displaying and filtering jobs in Job Manager. When jobs are deleted from the file system by a user, they are marked as deleted but not removed from the job database so as to be available for accounting purposes. To increase the efficiency of the database, the admin user can manually initiate the process which also removes deleted jobs from the database by clicking the Purge icon ().
Deleted jobs can also be removed from the database when upgrading WebMO or from the command line by running the clean_jobsdb.pl script.
Identifying the Installation
The admin user can specify various informational text strings that are displayed on the Login page.
Server name: an arbitrary string, which is typically the name of the WebMO server or instance
Registered user: an arbitrary string, which is typically the group or organization responsible for the WebMO server
Login message: an arbitrary string, which is typically blank but can be used to communicate information to WebMO users , e.g., an upcoming scheduled downtime
Configuring the System
CPU cores: number of cores available for WebMO usage; used by the built-in queue on WebMO Pro and Enterprise when submitting jobs so that all available cores are assigned to specific jobs
Jupyter notebook URL: website of Jupyter server included in Jupyter Calculation Templates
- "http://localhost:8888" is the default for Jupyter servers installed on ther user's local machine
- "https://mybinder.org/v2/gh/<github_user>/<github_repository>/master" is used to access mybinder.org web-hosted Jupyter servers
System scratch directory: location where WebMO stores all scratch files created by computational engines; it should be a directory with large amounts of free space that is writable by all computer users, e.g., /tmp or /scratch
Queuing system (Pro and Enterprise): built-in or external queuing system. WebMO includes a built-in simple FIFO ("First In, First Out") queuing system that submits jobs as CPU cores become available. Because the WebMO queuing system is not aware of other tasks on the computer, an alternative is for WebMO to submit jobs through a system-wide batch job queuing system, e.g., PBS, SGE, etc. (Note: the free version of WebMO runs one job at a time in the order they were submitted, i.e., uses the built-in queue with 1 CPU core.)
Built-in authentication: WebMO maintains usernames and their hashed passwords; usernames are authenticated against these hashed passwords
External authentication (Enterprise): WebMO usernames are authenticated against an external authentication service, typically LDAP provided by the university or company.
Working with System Users
WebMO normally maintains its own database of users that is independent of computer system users. It is possible to externally authenticate as a system user (/etc/password, PAM+shadow, etc.). In this case, WebMO can be configured to use the resources of the system user rather than its own resources. This can allow for more appropriate monitoring and sharing of computer resources in high usage systems.
Running jobs as a system user (Enterprise): WebMO normally runs jobs either as the webserver system user (typically "apache") or as the system user in whose directory the webmo software has been installed (typically "webmo"). Checking Enable sudo usage runs jobs as the system user that has been authenticated against the system's user database.
Storing jobs in the user home directory (Enterprise): WebMO normally stores jobs within the home directory where the webmo software has been installed (typically "/home/webmo/webmo"). If jobs are being run as a system user, then checking Store user job files in $HOME/webmo stores WebMO jobs with the system user's directory (typically /home/user/webmo).
See the System Users documentation for details on configuring the system for these options.