Documentation: Difference between revisions

From Cheaha
Jump to navigation Jump to search
(add to the list of applications)
(Link to informaiton security guide)
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
The UABgrid Documentation provides an overview of content from specific interest perspectives.  
Docs is a an open documentation platform for UAB built on the [[wikipedia:MediaWiki|Mediawiki]] engine, the same wiki engine that powers [[wikipedia:|Wikipedia]].  Content contributions to docs are welcome and encouraged. The breadth, depth, and value of our documentation is directly attributable to those who participate in its development.  Please see the notes on [[Editing Docs]] for information on how to contribute to this wiki.


It is a work in progress.  As of 2009-11-11 it only includes pages already existing and provides guidance for how to structure collected information.
Caveat Emptor: Some of information is of historical nature. We are actively reviewing and tagging outdated content to ensure it is updated.
 
Caveat Emptor: Some of information is of historical nature, having been created early in the UABgrid Pilot (circa 2007Q3) before usage scenarios started shaping value.


= FAQ =
= FAQ =


* [[UABgrid_FAQ|FAQ]]
* [[FAQ]]


= User Guide =
= User Guide =


* Applications
* Applications
** [[BLAST]]
** Collaboration
** [[MatLab]]
*** [[Git]]
** [[FreeSurfer]]
*** [[Mediawiki]]
** [[CNS]]
*** [[Sympa]]
** [[MrBayes]]
*** [[Trac]]
** [[Impute]]
*** [[Wordpress]]
** [[SPPARKS]]
** Scientific
*** [[BLAST]]
*** [[CNS]]
*** [[FreeSurfer]]
*** [[FSL]]
*** [[Galaxy]]
*** [[Impute]]
*** [[MatLab]]
*** [[MrBayes]]
*** [[SPPARKS]]
*** [[NAMD]]
    
    
* [[Trust_UABgrid_CA|Using UABgrid Web Sites]]
* [[Trust_UABgrid_CA|Using UABgrid Web Sites]]
* [[Subversion]]


= Developer Guide =
= Developer Guide =


The research computing system includes a collection of libraries designed to address a variety of needs.  The libraries you use and how you interact with them, depends on which aspect of the system you want to leverage.  It is possible to work exclusively with one library, using only it's default interface.  More evolved tool users might leverage many different libraries and combine them in novel ways to create new applications or additional services.  Nonetheless, even simple scripts that only tune a default feature are often the most appreciated.
Our goal is to get you started developing, a.k.a. creating, as quickly as possible. You will eventually want to become familiar with the system model so you can organize your work accordingly.
Generally speaking, as a developer, you will find yourself working in one of two areas of the system.  You are either building scripts to support data analysis or virtual experiments using the compute library or you are working on web accessible libraries or applications.  The compute library, a.k.a. the cluster Cheaha and all the tools it makes available, is very mature and is used autonomously by most developers today.  Web accessible resources are at the leading edge of our research computing platform. 
Developers building web accessible libraries and applications, typically, work closely with the core team since this part of the platform is under heavy construction and requires a higher level of coordination between team members.
The following guides provide a rough introduction to the environment. 
* Developer Tools
** Web -- As with all web development, you need to have an environment where you can run a web application and interact with it via a web browser.  For most  applications, this requires some light weight web server that will run you code and expose an HTTP interface to your browser.  Most web  applications have some basic instructions for getting the application set up in a personal development environment.  You can use these to get  started.
*** Cross Platform LAMP stack [[XAMPP]]
**** [[MediawikiDev]]
*** OpenSUSE LAMP stack [http://en.opensuse.org/SDB:Linux_Apache_MySQL_PHP]. Note: if this is a private dev environment, don't bother opening up the firewall as described.  You don't need it since a local web browser will be able to access everything by default. 
*** [[API]]
** Command-line -- The command line environment accessible via SSH to Cheaha provides a full service Linux environment where you can build any code that you need. Familiar command line tools are available and more can be discovered with the `module avail` command.
* Identity Management
* Identity Management
** [[IdentityPrimer]]
** [[IdentityPrimer]]
** [[UABgrid Web Applications|Identity for Web Apps]]
** [[UABgrid Web Applications|Identity for Web Apps]]
*** [[UABgrid_SP_Metadata]]
*** [[UABgrid_SP_Metadata]]
** [[Web Authentication]]
* Data Management
** [[Data Management Framework]]
* Application Frameworks
* Application Frameworks
** HPC Workflow Tools
** HPC Workflow Tools
Line 33: Line 63:
*** [[Swift Notes|Swift]]
*** [[Swift Notes|Swift]]
*** [[UsingGridWay|GridWay]]
*** [[UsingGridWay|GridWay]]
** caGrid/DASI Tools
*** [[HowtoInstallCagrid]]: Installation notes for caGrid stack
*** [[HowtoDataModelling]]: Data/Object modelling using EA/caAdapter
*** [[HowtoBuildDataService]]: Data service build process using caCORE-SDK
*** [[HowtoBuildGridDataService]]: Grid service build process using Introduce
*** [[HowtoDeployWebService]]: Deployment steps for web service
*** [[HowtoDeployGridService]]: Deployment steps for grid service
*** [[HowtoQueryDataService]]: Quering data service using CQL/DCQL


= System Administrator Guide =
= Administrator Guide =


* System Overview
* System Overview
** [[System Types]]
** [[System Types]]
* Managing Permissions
** [[File Access Control]]
= Information Security Guide =
A nascent [[Information Security Guide]] is under development.  The current information provides perspective on the priniciples and perspective guiding that effort.

Latest revision as of 16:37, 24 May 2013

Docs is a an open documentation platform for UAB built on the Mediawiki engine, the same wiki engine that powers Wikipedia. Content contributions to docs are welcome and encouraged. The breadth, depth, and value of our documentation is directly attributable to those who participate in its development. Please see the notes on Editing Docs for information on how to contribute to this wiki.

Caveat Emptor: Some of information is of historical nature. We are actively reviewing and tagging outdated content to ensure it is updated.

FAQ

User Guide

Developer Guide

The research computing system includes a collection of libraries designed to address a variety of needs. The libraries you use and how you interact with them, depends on which aspect of the system you want to leverage. It is possible to work exclusively with one library, using only it's default interface. More evolved tool users might leverage many different libraries and combine them in novel ways to create new applications or additional services. Nonetheless, even simple scripts that only tune a default feature are often the most appreciated.

Our goal is to get you started developing, a.k.a. creating, as quickly as possible. You will eventually want to become familiar with the system model so you can organize your work accordingly.

Generally speaking, as a developer, you will find yourself working in one of two areas of the system. You are either building scripts to support data analysis or virtual experiments using the compute library or you are working on web accessible libraries or applications. The compute library, a.k.a. the cluster Cheaha and all the tools it makes available, is very mature and is used autonomously by most developers today. Web accessible resources are at the leading edge of our research computing platform.

Developers building web accessible libraries and applications, typically, work closely with the core team since this part of the platform is under heavy construction and requires a higher level of coordination between team members.

The following guides provide a rough introduction to the environment.

  • Developer Tools
    • Web -- As with all web development, you need to have an environment where you can run a web application and interact with it via a web browser. For most applications, this requires some light weight web server that will run you code and expose an HTTP interface to your browser. Most web applications have some basic instructions for getting the application set up in a personal development environment. You can use these to get started.
      • Cross Platform LAMP stack XAMPP
      • OpenSUSE LAMP stack [1]. Note: if this is a private dev environment, don't bother opening up the firewall as described. You don't need it since a local web browser will be able to access everything by default.
      • API
    • Command-line -- The command line environment accessible via SSH to Cheaha provides a full service Linux environment where you can build any code that you need. Familiar command line tools are available and more can be discovered with the `module avail` command.
  • Identity Management
  • Data Management
  • Application Frameworks

Administrator Guide

Information Security Guide

A nascent Information Security Guide is under development. The current information provides perspective on the priniciples and perspective guiding that effort.