The intention of these tutorials is to provide a quick glimpse into the Airavata middleware by exercising its features through the hosted version of Airavata Reference Gateway written in PHP hence called PGA (PHP Reference Gateway for Airavata). The user can follow the tutorials in order to experience general capabilities of the middleware.
Airavata Reference Gateway
Airavata PHP Gateway is set of user interfaces to demonstrate the core functionalities provided by Airavata. This tutorial provides step-by-step information for obtaining a complete science gateway experience for science and scholarly communities using Airavata as a middleware platform. Here we would also discuss main features and services provided for gateway communities via Airavata.
At the completion of the quick-start-tutorials you would know:
Gateway user registration and account verification steps
How to use projects
How to create, execute and monitor experiments.
How to share experiments and projects
How to set up own cluster accounts for job submissions.
How to seek assistance, submit issues and provide user feedback.
For more details on Airavata please visit Airavata site
Test/Demo Environment Details
- PHP Reference Gateway link;
https://testdrive.airavata.org - Download application input files from;
Generic sample application inputs
Sample application inputs for Gaussian and Gamess
Tutorial I - Gateway User Account
Create Account
- A new user has to create an account using ‘Create account’ link on top right-hand corner of the gateway top banner.
- To create an account;
- Please enter User information and submit.
- Important;
- Username cannot have spaces.
- Username & password must be longer than 5 characters.
- Password need to at least have (a) one lower case letter (b) one upper case letter (c) one number (d) One special character from !@#$%
- Enter all the mandatory fields indicated by a star; *.
- Account creation page
- Link:https://testdrive.airavata.org/create
- Account activation;
- The user will receive an email upon creating the account in the provided email address to confirm the account creation. The user needs to use the link in the email and provide the gateway username and password.
- When the user account is first created it is not active; the user cannot submit jobs to resources. Gateway admin has to activate the user account after validating each user request for a gateway account.
- If the account confirmation fails, please contact you gateway admin through the Contact us.
- Gateway user will receive an email notifying change of privileges in the gateway when the account is active.
- If already logged in, the gateway user needs to log out and log-in again.
Login to Account
- Once the account is created successfully; log in to the gateway using the created account.
- Gateway login screen link
- https://testdrive.airavata.org/login
Image Added
Image I - Login
Password Recovery
- Gateway user can recover the forgotten password using '(Forgot Password? Click here)' link in the login page.
- The user needs to provide the username then will receive an URL to add the new password.
Tutorial II - Using Projects
Create Project
- A Project is simply a grouping for experiments. Every user will have a 'Default Project' which exists when the user logs into the gateway for the first time.
- To create Projects navigate to ‘Project --> Create’ from the main menu. Enter Project Name (Mandatory) & Project Description (Optional) and save.
- Project creation screen
Image Added
Image II - Create Project - Upon successful creation, the user is directed to Project Summary page.
Browse Projects
- Navigation 'Project --> Browse' from the main menu.
- Search keys are;
- Project Name
- Project Description
- Browse Project page;
Image Added
Image III - Browse Project - The user can search for projects by using (*) as a wild character. The * can be used when searching either option; Project name or description.
- When projects are listed by clicking ‘View’ at the end of the row user can navigate to ‘Project Summary’ page.
- In 'Project Summary' all experiments created under the project will be listed along with the list of shared users.
Image Added
Image IV - Project Summary - The user can click on the experiment ‘Name’ and navigate to ‘Experiment Summary’ page.
Share Projects
- Projects are also used to share with other gateway users. e.g.: Sharing a project with another user will give him access to all his experiments in the project.
When sharing projects, the project owner can share with 'write' or 'read' access.
Once a project is shared with other users, they will be listed on the project summary page. Refer Image Image IV - Project Summary
Sharing with 'read' access will enable the users to view the project and experiment in the project. Only the owner can modify the project details and sharing.
Sharing with 'write' access will enable the users to view the project and experiment in the project, modify the project and create new experiments using this project. Still, only the owner can modify the project sharing.
The project owner can remove, modify sharing of existing users and share with new users at any given time.
Tutorial III - Configure Individual Account on Clusters
- Gateway user can use their own compute resource (cluster) allocation (if exists. if not can use the community allocation) within the gateway to launch jobs.
- Prior to using the allocation users need to set up the allocation account details in the gateway.
Add Allocation
- Navigate to User Settings (This is under gateway username in the menu on the righthand side.
Image Added
Image V - User Settings Navigation - User Settings screen
Image Added
Image VI - User Settings - Select 'Compute Resources' from above to add allocation details.
- Click 'Add a Compute Resource Account'
- Select the resource from the drop-down list.
- Provide the required information. NOTE: You may not have allocation project, QOS or Reservation. The minimum requirement is the login username and the scratch location and SSH key.
- When assigning SSH key by default the default SSH key will be assigned. If the user prefers, can generate a new key and assign here.
Credential Store
- For individual users to generate new SSH key navigate to User Settings → Credential Store
- In Credential store you will have the default key displayed and it can be copied to add to your account's 'authorized_keys' file.
- To generate a new key provide a description and add.
Image Added
Image VII - User Settings → Credential Store - User can delete keys and also tag any key as the 'default' SSH key.
Add SSH Key to Authorized Keys
- SSH keys are generated for secure communication between airavata middleware and compute resource.
- Once SSH key is generated, it needs to be added to the authorized keys file for the user in the respective compute resource/cluster.
- To add the SSH key login to your account in the cluster.
- Navigate to .SSH directory and open authorized_keys.
- Add the SSH key assigned in user settings and save.
- If you have don't have .ssh directory or the authorized_keys file, create them.
Tutorial IV - Create & Launch Experiment
Create Experiment
- Navigation to experiment creation page Main Menu --> Experiment --> Create Experiment
- Create Experiment Page - Experiment Information
Image Added
Image VIII - Create Experiment
- First enter/select given fields;
- Experiment Name (Mandatory)
- Experiment Description (Optional)
- Project (Select from the available LOV. Latest will be on top; auto selected)
- Application (Select from the available LOV)
and click ‘Continue’. At this point, the user can clear any entered fields by clicking ‘Reset Values’ before continuing. - Then continue entering Application configuration information.
- Experiment application input (Mandatory) - Application input can be in the form of entering data or uploading required input files.
NOTE: Uploading file validity is not checked by the gateway. User has the responsibility of uploading correct files. - Compute Resource (select from the available LOV. If the application is existing in a single resource, it will be the default value)
- Queue (a default value will be taken if not changed by the user)
- Node Count (If not entered default value will be taken as the input)
- Total Core Count (If not entered default value will be taken as the input)
- Wall Time Limit (If not entered default value will be taken as the input)
- Total Physical Memory (If not entered default value 0 will be taken as the input)
- Notifications: Add email address if required to receive job starting and completing notifications from compute resource itself.
NOTE: For some compute resources, above default values will not be correct. User needs to change the node count in such cases.
- Create Experiment - Application Configuration Part
Image Added
Image IX - Create Experiment Contd..
- While entering application configurations user can start over from the beginning using ‘Start Over’ button.
- Once saved or saved and launched user will be directed to ‘Experiment Summary’ page; from summary page can monitor experiment status changes.
- Experiment Summary Page
Image Added
Image X - Experiment Summary
Launch Experiment
- The experiment can be launched using 'Create Experiment' screen. Click 'Save & Launch' button to directly launch the experiment.
- If the experiment was just CREATED for a later launch, the user can launch from 'Experiment Summary' Page. For experiments that are 'launchable' 'Launch' button will be enabled in summary page.
NOTE: Experiments only in CREATED state can be launched.
Tutorial V - Browse Experiments
- User can search for experiment created by him/her through
- Experiments → Browse
OR - Browse Projects → View Project → View Experiment (by clicking on the status of the experiment) - Please refer Search Projects in "Tutorial II" above.
In Browe Experiments search keys are;
Experiment Name
Experiment Description
Application
Creation Time - User can provide 'From Date' and 'To Date'
Image Added
Image XI - Browse Experiments
All the experiments of the user will be listed; latest on top. The user can also search using provided keys with partial values, complete values, (*) wildcard. Above search can be narrowed by combining with experiment status as well.
By clicking on the 'Status' user will be navigated to ‘Experiment Summary’ screen of each experiment.
Experiment summary can be used to;
Launch experiment - Explained in above Tutorial III
Cancel experiment
Clone experiment
Edit experiment
View experiment data files (Inputs, outputs, archived files)
Tutorial VI - Modify, Cancel, Clone & Share Experiments
Modify Experiment
- Modify experiment by clicking on the edit icon (pencil) next to experiment name (In Browse Experiment, Project Summary) OR by clicking on ‘Edit’ button in Experiment Summary Page.
- User can modify all available fields except experiment status, project, application & experiment ID of experiments only in CREATED state.
Image Added
Image Added
Image XII - Edit Experiment
Cancel Experiment
- To cancel use 'Cancel' button in 'Experiment Summary’ screen.
- Experiment with statuses LAUNCHED and EXECUTING can only be canceled.
- When canceled, immediately the Experiment status will change to CANCELING.
- If the job is already processed in the remote resource (already COMPLETED in the resource) the job will have COMPLETE state and experiment status will change to CANCELLED. Since the user requested a cancellation generated output will not be provided back to the gateway.
- If the job was successfully CANCELLED upon changing the job state to CANCELLED experiment status will also change to CANCELED.
- Once canceled, experiments are only available for cloning, cannot resume.
Clone Experiment
- Experiments can be cloned irrespective of the experiment status by clicking ‘Clone’ in ‘Experiment Summary’ page.
- When clicks ‘Clone’ from experiment summary user will be navigated to ‘Edit Experiment’ page of the new experiment. The new experiment will have exact same information as the earlier existing experiment.
- The new experiment will have a new experiment ID and the status will always be CREATED.
New experiment name = Clone of + Old experiment name - The user can change existing information (except the Application) in ‘Edit Experiment’ page and save or save & launch.
Share Experiment
- A user can share his or her work with other gateway users at experiment level and at a project level. Project level sharing details
Tutorial VII - User Assistance
'Contact Us' in home page provides communication with the gateway admin via email. Gateway users can use this for all gateway related communications such as
- Report an issue
- Request for a feature
- Feature clarification
Apache Airavata is a middleware to simplify computation and data analysis in diverse computational resources. To illustrate the functionality of Airavata Middleware, a PHP Reference Gateway (PGA) is developed. The quick start tutorials are broken down into small segments so you can pick and choose which aspects you would like to focus on. Tutorials starts out as end users and slowly increase pace into gateway developers and middleware developers.
For:
- Science Gateway Users
- Science Enthusiasts
Learn:
- User experience with a hosted generic science gateway with hosted Apache SciGaP middleware.
- Launching/submitting experiments with applications residing in the gateway.
- Experiments can be launched with single application as well as multiple applications (a workflow using XBAYA).
- Creating and launching jobs (experiments) with existing applications, obtaining outputs and view or download them.
- Navigation through compete lifecycle of an application execution.
For:
- Science Gateway Administrators
- Science Communities in need of a Gateway
Learn;
- How to download and create your own gateway.
- A -->Z of Setting up a science gateway. Adding compute resources, applications, setting up security credentials, etc...
- How to perform administrator tasks for gateway end users.
For:
- Science Gateway Administrators
- Science Communities in need of a Gateway
- Potential Contributors/ Developers
...
- How to download and configure your own gateway.
- How to download and configure own hosted Airavata and link hosted gateway with own Airavata
- Plus all above lessons in Tutorial 1 & 2
...