WebMO Home Page
   Features
   Pro Features
   Enterprise Features
   Compare Features
   System Requirements
   Screen Shots
   Working Demo
   Support & Tutorials
   Support Forum
   Testimonials
   Revision History
   Mailing List
   Educational Resources
   Workshops
   License Info
   Pricing
   Buy WebMO Pro/Ent
   Obtain Free License
   Download
WebMO - Computational chemistry on the WWW
Recent news

WebMO 18.1 is now available for free download!

WebMO 18.1 Pro and Enterprise have a variety of additional features and is available for purchase.

The WebMO app is now available for iOS and Android.

Signup for WebMO workshops this summer 2018

July 17, 2018
Installing WebMO on Google Cloud Platform

Google Cloud Platform (GCP) services allows one to create virtual machines in Google's computing cloud. One can choose the computer type (CPU's, RAM, disk) and OS (linux, Windows). While this is a commercial service, the cost can be surprisingly low (<$1/day), and even lower if the instance is run only when needed. There are many other advantages, such as zero initial capital cost and no hardware maintenance. We have found cloud computing to be an ideal solution for deploying WebMO and computational chemistry engines, especially for educational purposes.

Setup a Google Cloud Platform account

Log into your Google (gmail) account.

In a new tab, go to
      cloud.google.com
and sign up for a Google Cloud Platform free trial ($300 of credit or 60 days, whichever comes first). You will need to supply billing information to verify that you are a real person, but you will not be charged unless you upgrade your account after your trial ends.

Create a virtual machine instance

Go to
      cloud.google.com
and click the My console link (near top right) that brings you to the Developers Console, which is a web interface for managing and interacting with your virtual machines.

In the Projects dropdown menu (initially My First Project), select Create a project... and give your project a new name, e.g., WebMO, and click Create. Wait until it initializes.

Open the Menu panel (near top left) and go to Compute Engine -> VM instances. Click Create instance or New instance. Supply the following options:
      Name: webmo-#
      Zone: change to a location near you (us-central#-#)
      Machine type: 1 vCPU, 3.75 GB Memory (n1-standard-1)
      Boot disk: CentOS 7.1.####
            Boot disk type: Standard persistent disk
            Size (GB): 50
      Firewall: select Allow HTTP traffic

Click Create. Let Google do its magic! When the green check comes up, the instance is up and running.

   

   

Verifiy SSH access

In the Developers Console, click the SSH link under Connect (near bottom right). When the terminal screen comes up, test some unix commands:
      $ ls
      $ pwd
      $ whoami

(Note: Ctrl-+ or Apple-+ will enlarge the text size in the terminal screen.)

   

Install WebMO

In your SSH session, download and run the Server in the Cloud (sitc) script:
      $ curl -O https://www.webmo.net/cloud/sitc.tar.gz
      $ tar xzf sitc.tar.gz
      $ ./sitc/install

Follow prompts to:

  • update the operating system and add some components
  • configure the operating system
  • install webmo
    • obtain and/or specify webmo license number
    • create a webmo user
  • install mopac7
   

Set a WebMO administrator password

In the Developers Console, click the ###.###.###.### link under External IP (near bottom right). In the newly opened tab, navigate to
      <External IP>/webmo
Log in with the username "admin" and a blank password. Set an administrative password when prompted. Enter your registration information. You are brought to the WebMO administration menu. Since a user was already created and mopac was already installed, simply click Logout.

       

Access and use WebMO

If a browser tab to your virtual machine is not displayed, click the External IP link for your virtual machine in the Developers Console. Navigate to
      <displayed IP address>/webmo

Log in with the username and password you supplied to the installation script. Run a test job.

   

Shutdown virtual machine

When WebMO is not being actively used, you will want to shut it down to avoid incurring CPU usage charges. From the Developers Console, select your virtual machine and click the Stop icon.

Note that you still incur disk storage charges ($2/month for 50GB) even if the virtual machine is not running.

Restarting virtual machine

To start up the machine again, login to your gmail account, go to cloud.google.com, click the My console link, select your project, From the menu navigate to Compute Engine -> VM instances, select your virtual machine, and click the Start icon. When the green check is displayed, the instance is up and running again.

Cost Examples

Assuming that one creates a 1 vCPU instance with a 50GB disk, the annual costs are
      CPU: $440/year * 70% * 1year = $308
      Disk: $2/month * 12 months = $24
      TOTAL: $332 for one year of continuous availability (<$1/day!)

If one runs the instance for just one month of the year (e.g., for a computational chemistry lab), then the cost would be
      CPU: $440/year * 1 year/12 = $37
      Disk: $2/month * 12 months = $24
      TOTAL: $61 for one month of use during the year ($2/day for one month!)

Very low-cost configurations can be built, e.g., a f1-micro with a 10 GB disk (runs mopac only):
      $49 + $5 = $54 for one year of continuous availability ($0.15 per day!)
      $6 + $5 = $11 for one month of use during the year (perfect for low cost computing!)

Alternatively, a research-level configuration could be built, e.g., a 4 vCPU with a 500GB disk for one summer:
      CPU: 4cpu * $440cpu/year * 70% * 1year/4 = $308
      Disk: $20/month * 3 months = $60
      TOTAL: $368 for three months of continuous availability (<$4/day)

Lowering Cost

CPU usage charges can be significantly lowered by stopping the virtual machine when it is not being used and then restarting the virtual machine when needed. See above.

Disk storage charges can be lowered by snapshotting the disk, deleting the disk, and then restoring the disk from the snapshot when needed.

   

   

Advanced Tips

Administering WebMO

To access the WebMO administration pages, log into WebMO as username "admin" with the administration password. You can now access the User Manager to add additional users, Job Manager to monitor jobs, Interface Manager to enable other engines (which need to be installed separately), etc.

Adding additional computational engines

Transfer the linux binary of your engine to the virtual machine and install the program. Login as the WebMO administrator (Username = "admin"), click Interface Manager, and click the Enable interface icon. Click the newly revealed Edit interface icon and supply any necessary setup parameters. Click Submit, Return, Return to Admin, and Logout. Login as a ordinary WebMO user and run a test job.

Upgrading WebMO to Pro or Enterprise

Upload the webmo distribution into /home/webmo/download. As the webmo system user,
      $ tar xzf WebMO.16.0.00Xe.tar.gz
      $ cd WebMO.install
      $ find /home/webmo -name globals.int
      $ perl upgrade.pl
            Have you backed up your present WebMO installation [y/n]:y
            Location: /home/webmo/public_html/cgi-bin/webmo/interfaces/globals.int
            Continue with upgrade [y/n]:y
            License number: ####-####-####
            Do you wish to purge deleted jobs? [y/n]:y

Logging in from a terminal session

The Developers Console handles setting up SSH keys when you click the SSH link. If you want to login from another terminal program, you need to either setup your own SSH key or enable password logins.

To enable SSH authentication, first generate a public-private key pair on your local computer if it doesn't already exist:
      % ssh-keygen -t rsa
Copy the local file ~/.ssh/id_rsa.pub to the virtual machine file ~/.ssh/authorized_keys. (If you can't access your local computer from the virtual machine, copy-and-pasting into a vi session is a good workaround.) Note that the .ssh directory must have 700 permission and that the authorized_keys file must have 600 permission. Make the following changes in /etc/ssh/sshd_config
      RSAAuthentication yes
      PubkeyAuthentication yes
and then reload (or restart) the sshd server
      $ sudo systemctl reload sshd

To enable password authentication, one must make the following change in /etc/ssh/sshd_config
      PasswordAuthentication yes
and then reload (or restart) the sshd server
      $ sudo systemctl reload sshd
Only regular users are allowed remote access unless PermitRootLogin is set to "yes".

Other Linux Distributions

The sitc.tar.gz script supports the following linux distributions on Google Cloud Platform:

  • CentOS 6.#
  • CentOS 7.#
  • Debian GNU/Linux 7.# (wheezy)
  • Debian GNU/Linux 8.# (jessie)
  • Red Hat Enterprise Linux 6.#
  • Red Hat Enterprise Linux 7.#
  • Ubuntu 12.## LTS
  • Ubuntu 14.## LTS
  • Ubuntu 15.#

Copyright © 2015, WebMO, LLC, all rights reserved.