SlideShare a Scribd company logo
1 of 46
Installing and Building GTLAB Marlon Pierce Indiana Univeristy
GTLAB and OGCE ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Overview and Examples
User’s Browser Portlet, Gadget Containers iGoogle, Facebook GTLAB Gadgets TeraGrid Services (GRAM, GridFTP, INCA) Google GData Services, Twitter Feeds, etc RPS, RDS, GPIR Services GTLAB’s Relationship to Other Components
Various GTLAB applications deployed as portlets:  Remote directory browsing, proxy management, and LoadLeveler queues.
GTLAB Applications as Google Gadgets: MOAB dashboard, remote directory browser, and proxy management.
MyProxy Example <h:form id=&quot;form&quot;>  <h:outputText value=&quot;Username:&quot;/> <h:inputText value=&quot;#{resource.username}&quot; required=&quot;true&quot;/> <h:outputText value=&quot;Password: &quot;/> <h:inputSecret value=&quot;#{resource.password}&quot; required=&quot;true&quot;/> <h:outputText value=&quot;MyProxy Server: &quot;/> <h:inputText value=&quot;#{resource.myproxyHostname}&quot; required=&quot;true&quot;/> <o:submit id=&quot;submit&quot; value=&quot;Submit&quot; binding=&quot;#{builder.body}&quot;    action=&quot;#{builder.junkAction}&quot; > <o:multitask id=&quot;multi&quot; persistent=&quot;true&quot; taskname=&quot;#{resource.taskname}&quot;> <o:myproxy id=&quot;mypr&quot; hostname=&quot;#{resource.myproxyHostname}&quot;  lifetime=&quot;2&quot; password=&quot;#{resource.password}&quot; port=&quot;7512&quot;  username=&quot;#{resource.username}&quot;/> </o:multitask> </o:submit>  </h:form>
Executing Multiple Task <o:submit id=&quot;submit&quot; value=&quot;Submit&quot; binding=&quot;#{builder.body}&quot;  action=&quot;#{builder.junkAction}&quot; > <o:multitask id=&quot;multi&quot; persistent=&quot;true&quot;  taskname=&quot;#{resource.taskname}&quot;>   < o:jobsubmit   id=&quot;js&quot;  myfaces=&quot;true&quot;  arguments=&quot;#{resource.arguments}&quot;  executable=&quot;#{resource.executable}&quot;  hostname=&quot;#{resource.hostname}&quot;  provider=&quot;#{resource.provider}&quot;  stdout=&quot;#{resource.stdout}&quot;/>   < o:filetransfer   id=&quot;ft&quot;  myfaces=&quot;true&quot;  from=&quot;#{resource.from}&quot; to=&quot;#{resource.to}&quot; />   <o:dependency id=&quot;dep&quot; task=&quot;ft&quot; dependsOn=&quot;js&quot;/> </o:multitask> </o:submit>
Resource Prediction Service Client with GTLAB <o:submit id=&quot;submit&quot; value=&quot;Submit&quot;  binding=&quot;#{builder.body}&quot;  action=&quot;#{builder.junkAction}&quot;> <o:multitask id=&quot;multi&quot;  persistent=&quot;true&quot;  taskname=&quot;#{resources.taskname”>     <o:rpsOptimal  resource=&quot;task1-resources&quot;      id=&quot;rpsoptimal-exec&quot;  myfaces=&quot;true&quot;/>   </o:multitask>   </o:submit>
Example with Dependency <o:submit id=&quot;submit” …> <o:multitask id=&quot;multi” …>     <o:rpsAddModel resource=&quot;task1-resources&quot;      id=&quot;rpsAddModel-exec&quot;    myfaces=&quot;true&quot;/>     <o:rpsManager resource=&quot;task1-resources&quot;      id=&quot;rpsManager-exec&quot;    myfaces=&quot;true&quot;/>   <o:dependency id=&quot;deps-rpsstuff”   task=&quot;rpsManager-exec&quot;  dependsOn=&quot;rpsAddModel-exec&quot;/>   </o:multitask>   </o:submit>
More Detail: Available Tags and Features
GTLAB Features ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Getting GTLAB ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
No SVN?  Get the TAR ,[object Object],[object Object],[object Object]
Levels of Abstraction in GTLAB code ,[object Object],[object Object],[object Object],[object Object],You can use prepackaged gadgets/portlets. You can develop new applications using existing tag libraries. You can make new tags for your services You can hack or steal the code
Tag Description MyProxy Gets a proxy credential (COG) JobSubmit Runs remote commands (COG) FileOperation Create, delete, list remote files and dirs (COG) FileTransfer GridFTP downloads, 3 rd  party transfers (COG) XSubmissionOutput Format outputs of job and file operations ResourceDiscovery Clients for the RDS ResourcePrediction Clients for the RPS MyCommunityProxy Get and decorate TG Community credentials with Grid Shib Community Log Log use of TG Community credentials
These will work as gadgets, portlets, or standalone applications GTLAB Example Description MyProxyExample Get a credential and store in OGCE global proxy store. JobSubmitExamples Various examples showing how to submit a grid job and get output. Dashboard Examples Runs showq on Big Red, Cobalt, and Mercury and formats output. DirectoryBrowser Displays and downloads files on a remote host via GridFTP MultipleTaskExample Shows how to couple file transfers, operations, and
Gadgets and Portlets
GTLAB Gadgets  Code Base GTLAB Portlets Code Base Tomcat  Web  Server Tomcat Web Server +  Portlet Container iGoogle Client  Aggregator Compile and deploy into server Decorate with bridge and  container jars, xml config files.  GTLAB gadgets can also run as portlets with no code changes by using the JSF portlet bridge.
Making GTLAB Google Gadgets ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example Gadget Config File  <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?>  <Module> <ModulePrefs title=&quot;MyProxy Gadget Example&quot;    scrolling=&quot;true&quot;    height=&quot;500&quot;/>  <Content type=&quot;url&quot;  href=&quot;http://…/:8080/GTLAB/examples/MyProxyExample.jsf&quot;> </Content>  </Module> Save this as MyProxy.xml and place in a Web accessible place.
Other Gadgets Providers Tomcat + GTLAB Gadgets Grid and Web Services (TeraGrid, OSG, etc) Other Gadgets Providers Social Network  Services (Orkut, LinkedIn,etc) RSS Feed, Cloud, etc Services Gadget containers aggregate content from  multiple providers .  Content is aggregated  on the client  by the user.  Nearly any web application can be a  simple gadget  (as Iframes)
Click “Add stuff” and then “Add feed or gadget”. Type the URL of your gadget.
GTLAB Applications as Google Gadgets: MOAB dashboard, remote directory browser, and proxy management.
Tomcat  + Portlets and Container Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) HTML/HTTP SOAP/HTTP Common science gateway architecture.  Aggregation is in the portlet container.  Users have limited selections of components.
Making GTLAB Gadgets into Portlets ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Various GTLAB applications deployed as portlets:  Remote directory browsing, proxy management, and LoadLeveler queues.
Getting Started with GTLAB
GTLAB Directory Structure
Build GTLAB ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],<properties> <portal.server.ip> 156.56.104.143 </portal.server.ip> <host.base.url> http://${portal.server.ip}:8080/ </host.base.url> <project.home> ${env.HOME}/GTLAB </project.home> <tomcat.version> apache-tomcat-5.5.27 </tomcat.version> <catalina.home> ${project.home}/portal_deploy/${tomcat.version}/ </catalina.home> <dot.globus.home> ${env.HOME}/.globus/ </dot.globus.home> </properties>
Run Examples ,[object Object],[object Object],[object Object],[object Object]
Next Steps ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Making New Tags and Examples
Making a New JSF Page from Tags ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Making a New Tag ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Implementing a Tag ,[object Object],[object Object],[object Object],[object Object],[object Object]
Suggested Tags: A Wish List ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
INCA Tags: An Extended Example
Example: Make an INCA Dashboard ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
First, Create a New, Empty Tag ,[object Object],[object Object],[object Object],[object Object]
Second, Implement the Bean ,[object Object],[object Object],[object Object]
Third, Implement a JSF Page ,[object Object],[object Object],[object Object],<o:incastatus id=”mytest&quot;  resource=&quot;task1-resources”      myfaces=&quot;true&quot;/>
Here’s the resulting page. You can make into a portlet in a couple of steps.  You can also tie to other tags in a pipeline.
Next Steps: Make a Pipeline ,[object Object],[object Object],[object Object],[object Object],[object Object],Find Running Hosts (INCA or RDS) Find Best Host for YourJob (RPS) Find Host with Shortest Wait Time (QBETS) Submit Job
 
More Stuff about GTLAB ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Иван Бурмистров "Строго ориентированная последовательность временных событий"...
Иван Бурмистров "Строго ориентированная последовательность временных событий"...Иван Бурмистров "Строго ориентированная последовательность временных событий"...
Иван Бурмистров "Строго ориентированная последовательность временных событий"...
it-people
 

What's hot (20)

Dataservices: Processing Big Data the Microservice Way
Dataservices: Processing Big Data the Microservice WayDataservices: Processing Big Data the Microservice Way
Dataservices: Processing Big Data the Microservice Way
 
Kubernetes Security with Calico and Open Policy Agent
Kubernetes Security with Calico and Open Policy AgentKubernetes Security with Calico and Open Policy Agent
Kubernetes Security with Calico and Open Policy Agent
 
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Milan 2017 - D...
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Milan 2017 - D...Monitoring Big Data Systems Done "The Simple Way" - Codemotion Milan 2017 - D...
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Milan 2017 - D...
 
Biomart Update
Biomart UpdateBiomart Update
Biomart Update
 
Java Persistence Frameworks for MongoDB
Java Persistence Frameworks for MongoDBJava Persistence Frameworks for MongoDB
Java Persistence Frameworks for MongoDB
 
Microservices observability
Microservices observabilityMicroservices observability
Microservices observability
 
Log everything! @DC13
Log everything! @DC13Log everything! @DC13
Log everything! @DC13
 
MongoDB World 2018: Building a New Transactional Model
MongoDB World 2018: Building a New Transactional ModelMongoDB World 2018: Building a New Transactional Model
MongoDB World 2018: Building a New Transactional Model
 
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
Monitoring Big Data Systems Done "The Simple Way" - Codemotion Berlin 2017
 
MongoDB World 2018: MongoDB for High Volume Time Series Data Streams
MongoDB World 2018: MongoDB for High Volume Time Series Data StreamsMongoDB World 2018: MongoDB for High Volume Time Series Data Streams
MongoDB World 2018: MongoDB for High Volume Time Series Data Streams
 
How Thermo Fisher is Reducing Data Analysis Times from Days to Minutes with M...
How Thermo Fisher is Reducing Data Analysis Times from Days to Minutes with M...How Thermo Fisher is Reducing Data Analysis Times from Days to Minutes with M...
How Thermo Fisher is Reducing Data Analysis Times from Days to Minutes with M...
 
Performance monitoring and call tracing in microservice environments
Performance monitoring and call tracing in microservice environmentsPerformance monitoring and call tracing in microservice environments
Performance monitoring and call tracing in microservice environments
 
CloudBurst 2019 - Indexing and searching NuGet.org with Azure Functions and S...
CloudBurst 2019 - Indexing and searching NuGet.org with Azure Functions and S...CloudBurst 2019 - Indexing and searching NuGet.org with Azure Functions and S...
CloudBurst 2019 - Indexing and searching NuGet.org with Azure Functions and S...
 
Managing your black friday logs - Code Europe
Managing your black friday logs - Code EuropeManaging your black friday logs - Code Europe
Managing your black friday logs - Code Europe
 
MongoDB .local Bengaluru 2019: New Encryption Capabilities in MongoDB 4.2: A ...
MongoDB .local Bengaluru 2019: New Encryption Capabilities in MongoDB 4.2: A ...MongoDB .local Bengaluru 2019: New Encryption Capabilities in MongoDB 4.2: A ...
MongoDB .local Bengaluru 2019: New Encryption Capabilities in MongoDB 4.2: A ...
 
Open Policy Agent (OPA) と Kubernetes Policy
Open Policy Agent (OPA) と Kubernetes PolicyOpen Policy Agent (OPA) と Kubernetes Policy
Open Policy Agent (OPA) と Kubernetes Policy
 
MongoDB World 2016: The Best IoT Analytics with MongoDB
MongoDB World 2016: The Best IoT Analytics with MongoDBMongoDB World 2016: The Best IoT Analytics with MongoDB
MongoDB World 2016: The Best IoT Analytics with MongoDB
 
Docker Logging and analysing with Elastic Stack
Docker Logging and analysing with Elastic StackDocker Logging and analysing with Elastic Stack
Docker Logging and analysing with Elastic Stack
 
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
 
Иван Бурмистров "Строго ориентированная последовательность временных событий"...
Иван Бурмистров "Строго ориентированная последовательность временных событий"...Иван Бурмистров "Строго ориентированная последовательность временных событий"...
Иван Бурмистров "Строго ориентированная последовательность временных событий"...
 

Similar to GTLAB Installation Tutorial for SciDAC 2009

SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
Fred Sauer
 
Ta Javaserverside Eran Toch
Ta Javaserverside Eran TochTa Javaserverside Eran Toch
Ta Javaserverside Eran Toch
Adil Jafri
 

Similar to GTLAB Installation Tutorial for SciDAC 2009 (20)

OGCE Project Overview
OGCE Project OverviewOGCE Project Overview
OGCE Project Overview
 
Grails and Dojo
Grails and DojoGrails and Dojo
Grails and Dojo
 
Flex_rest_optimization
Flex_rest_optimizationFlex_rest_optimization
Flex_rest_optimization
 
Grails Introduction - IJTC 2007
Grails Introduction - IJTC 2007Grails Introduction - IJTC 2007
Grails Introduction - IJTC 2007
 
Spring Surf 101
Spring Surf 101Spring Surf 101
Spring Surf 101
 
IPhone Web Development With Grails from CodeMash 2009
IPhone Web Development With Grails from CodeMash 2009IPhone Web Development With Grails from CodeMash 2009
IPhone Web Development With Grails from CodeMash 2009
 
GTLAB Overview
GTLAB OverviewGTLAB Overview
GTLAB Overview
 
Jsp
JspJsp
Jsp
 
Cocoon OSGi CocoonGT2007
Cocoon OSGi CocoonGT2007Cocoon OSGi CocoonGT2007
Cocoon OSGi CocoonGT2007
 
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Accelerated Adoption: HTML5 and CSS3 for ASP.NET DevelopersAccelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
Accelerated Adoption: HTML5 and CSS3 for ASP.NET Developers
 
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
 
GWT Extreme!
GWT Extreme!GWT Extreme!
GWT Extreme!
 
Ta Javaserverside Eran Toch
Ta Javaserverside Eran TochTa Javaserverside Eran Toch
Ta Javaserverside Eran Toch
 
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるIt is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
 
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With DeadlinesJBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
JBUG 11 - Django-The Web Framework For Perfectionists With Deadlines
 
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
IE 8 et les standards du Web - Chris Wilson - Paris Web 2008
 
Introduction to Alfresco Surf Platform
Introduction to Alfresco Surf PlatformIntroduction to Alfresco Surf Platform
Introduction to Alfresco Surf Platform
 
Javazone 2010-lift-framework-public
Javazone 2010-lift-framework-publicJavazone 2010-lift-framework-public
Javazone 2010-lift-framework-public
 
Client-side JavaScript Vulnerabilities
Client-side JavaScript VulnerabilitiesClient-side JavaScript Vulnerabilities
Client-side JavaScript Vulnerabilities
 
Introduction To ASP.NET MVC
Introduction To ASP.NET MVCIntroduction To ASP.NET MVC
Introduction To ASP.NET MVC
 

More from marpierc

OREChem Services and Workflows
OREChem Services and WorkflowsOREChem Services and Workflows
OREChem Services and Workflows
marpierc
 
Ogce about-sc10
Ogce about-sc10Ogce about-sc10
Ogce about-sc10
marpierc
 

More from marpierc (18)

Scientific
Scientific Scientific
Scientific
 
IWSG2014: Developing Science Gateways Using Apache Airavata
IWSG2014: Developing Science Gateways Using Apache AiravataIWSG2014: Developing Science Gateways Using Apache Airavata
IWSG2014: Developing Science Gateways Using Apache Airavata
 
XSEDE14 SciGaP-Apache Airavata Tutorial
XSEDE14 SciGaP-Apache Airavata TutorialXSEDE14 SciGaP-Apache Airavata Tutorial
XSEDE14 SciGaP-Apache Airavata Tutorial
 
Sgg crest-presentation-final
Sgg crest-presentation-finalSgg crest-presentation-final
Sgg crest-presentation-final
 
ACES QuakeSim 2011
ACES QuakeSim 2011ACES QuakeSim 2011
ACES QuakeSim 2011
 
GCE11 Apache Rave Presentation
GCE11 Apache Rave PresentationGCE11 Apache Rave Presentation
GCE11 Apache Rave Presentation
 
TG11 ORPS Poster
TG11 ORPS PosterTG11 ORPS Poster
TG11 ORPS Poster
 
SC11 Science Gateway Group Overview
SC11 Science Gateway Group OverviewSC11 Science Gateway Group Overview
SC11 Science Gateway Group Overview
 
Experiences with the Apache Software Foundation
Experiences with the Apache Software Foundation Experiences with the Apache Software Foundation
Experiences with the Apache Software Foundation
 
PNNL April 2011 ogce
PNNL April 2011 ogcePNNL April 2011 ogce
PNNL April 2011 ogce
 
OGCE RT Rroject Review
OGCE RT Rroject ReviewOGCE RT Rroject Review
OGCE RT Rroject Review
 
OGCE SC10
OGCE SC10OGCE SC10
OGCE SC10
 
Building Science Gateways with Gadgets and OpenSocial
Building Science Gateways with Gadgets and OpenSocialBuilding Science Gateways with Gadgets and OpenSocial
Building Science Gateways with Gadgets and OpenSocial
 
OGCE TeraGrid 2010 Science Gateway Tutorial Intro
OGCE TeraGrid 2010 Science Gateway Tutorial IntroOGCE TeraGrid 2010 Science Gateway Tutorial Intro
OGCE TeraGrid 2010 Science Gateway Tutorial Intro
 
OGCE SciDAC2010 Tutorial
OGCE SciDAC2010 TutorialOGCE SciDAC2010 Tutorial
OGCE SciDAC2010 Tutorial
 
OREChem Services and Workflows
OREChem Services and WorkflowsOREChem Services and Workflows
OREChem Services and Workflows
 
Ogce about-sc10
Ogce about-sc10Ogce about-sc10
Ogce about-sc10
 
Indiana University's Advanced Science Gateway Support
Indiana University's Advanced Science Gateway SupportIndiana University's Advanced Science Gateway Support
Indiana University's Advanced Science Gateway Support
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

GTLAB Installation Tutorial for SciDAC 2009

  • 1. Installing and Building GTLAB Marlon Pierce Indiana Univeristy
  • 2.
  • 4. User’s Browser Portlet, Gadget Containers iGoogle, Facebook GTLAB Gadgets TeraGrid Services (GRAM, GridFTP, INCA) Google GData Services, Twitter Feeds, etc RPS, RDS, GPIR Services GTLAB’s Relationship to Other Components
  • 5. Various GTLAB applications deployed as portlets: Remote directory browsing, proxy management, and LoadLeveler queues.
  • 6. GTLAB Applications as Google Gadgets: MOAB dashboard, remote directory browser, and proxy management.
  • 7. MyProxy Example <h:form id=&quot;form&quot;> <h:outputText value=&quot;Username:&quot;/> <h:inputText value=&quot;#{resource.username}&quot; required=&quot;true&quot;/> <h:outputText value=&quot;Password: &quot;/> <h:inputSecret value=&quot;#{resource.password}&quot; required=&quot;true&quot;/> <h:outputText value=&quot;MyProxy Server: &quot;/> <h:inputText value=&quot;#{resource.myproxyHostname}&quot; required=&quot;true&quot;/> <o:submit id=&quot;submit&quot; value=&quot;Submit&quot; binding=&quot;#{builder.body}&quot; action=&quot;#{builder.junkAction}&quot; > <o:multitask id=&quot;multi&quot; persistent=&quot;true&quot; taskname=&quot;#{resource.taskname}&quot;> <o:myproxy id=&quot;mypr&quot; hostname=&quot;#{resource.myproxyHostname}&quot; lifetime=&quot;2&quot; password=&quot;#{resource.password}&quot; port=&quot;7512&quot; username=&quot;#{resource.username}&quot;/> </o:multitask> </o:submit> </h:form>
  • 8. Executing Multiple Task <o:submit id=&quot;submit&quot; value=&quot;Submit&quot; binding=&quot;#{builder.body}&quot; action=&quot;#{builder.junkAction}&quot; > <o:multitask id=&quot;multi&quot; persistent=&quot;true&quot; taskname=&quot;#{resource.taskname}&quot;> < o:jobsubmit id=&quot;js&quot; myfaces=&quot;true&quot; arguments=&quot;#{resource.arguments}&quot; executable=&quot;#{resource.executable}&quot; hostname=&quot;#{resource.hostname}&quot; provider=&quot;#{resource.provider}&quot; stdout=&quot;#{resource.stdout}&quot;/> < o:filetransfer id=&quot;ft&quot; myfaces=&quot;true&quot; from=&quot;#{resource.from}&quot; to=&quot;#{resource.to}&quot; /> <o:dependency id=&quot;dep&quot; task=&quot;ft&quot; dependsOn=&quot;js&quot;/> </o:multitask> </o:submit>
  • 9. Resource Prediction Service Client with GTLAB <o:submit id=&quot;submit&quot; value=&quot;Submit&quot; binding=&quot;#{builder.body}&quot; action=&quot;#{builder.junkAction}&quot;> <o:multitask id=&quot;multi&quot; persistent=&quot;true&quot; taskname=&quot;#{resources.taskname”> <o:rpsOptimal resource=&quot;task1-resources&quot; id=&quot;rpsoptimal-exec&quot; myfaces=&quot;true&quot;/> </o:multitask> </o:submit>
  • 10. Example with Dependency <o:submit id=&quot;submit” …> <o:multitask id=&quot;multi” …> <o:rpsAddModel resource=&quot;task1-resources&quot; id=&quot;rpsAddModel-exec&quot; myfaces=&quot;true&quot;/> <o:rpsManager resource=&quot;task1-resources&quot; id=&quot;rpsManager-exec&quot; myfaces=&quot;true&quot;/> <o:dependency id=&quot;deps-rpsstuff” task=&quot;rpsManager-exec&quot; dependsOn=&quot;rpsAddModel-exec&quot;/> </o:multitask> </o:submit>
  • 11. More Detail: Available Tags and Features
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Tag Description MyProxy Gets a proxy credential (COG) JobSubmit Runs remote commands (COG) FileOperation Create, delete, list remote files and dirs (COG) FileTransfer GridFTP downloads, 3 rd party transfers (COG) XSubmissionOutput Format outputs of job and file operations ResourceDiscovery Clients for the RDS ResourcePrediction Clients for the RPS MyCommunityProxy Get and decorate TG Community credentials with Grid Shib Community Log Log use of TG Community credentials
  • 17. These will work as gadgets, portlets, or standalone applications GTLAB Example Description MyProxyExample Get a credential and store in OGCE global proxy store. JobSubmitExamples Various examples showing how to submit a grid job and get output. Dashboard Examples Runs showq on Big Red, Cobalt, and Mercury and formats output. DirectoryBrowser Displays and downloads files on a remote host via GridFTP MultipleTaskExample Shows how to couple file transfers, operations, and
  • 19. GTLAB Gadgets Code Base GTLAB Portlets Code Base Tomcat Web Server Tomcat Web Server + Portlet Container iGoogle Client Aggregator Compile and deploy into server Decorate with bridge and container jars, xml config files. GTLAB gadgets can also run as portlets with no code changes by using the JSF portlet bridge.
  • 20.
  • 21. Example Gadget Config File <?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?> <Module> <ModulePrefs title=&quot;MyProxy Gadget Example&quot; scrolling=&quot;true&quot; height=&quot;500&quot;/> <Content type=&quot;url&quot; href=&quot;http://…/:8080/GTLAB/examples/MyProxyExample.jsf&quot;> </Content> </Module> Save this as MyProxy.xml and place in a Web accessible place.
  • 22. Other Gadgets Providers Tomcat + GTLAB Gadgets Grid and Web Services (TeraGrid, OSG, etc) Other Gadgets Providers Social Network Services (Orkut, LinkedIn,etc) RSS Feed, Cloud, etc Services Gadget containers aggregate content from multiple providers . Content is aggregated on the client by the user. Nearly any web application can be a simple gadget (as Iframes)
  • 23. Click “Add stuff” and then “Add feed or gadget”. Type the URL of your gadget.
  • 24. GTLAB Applications as Google Gadgets: MOAB dashboard, remote directory browser, and proxy management.
  • 25. Tomcat + Portlets and Container Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) HTML/HTTP SOAP/HTTP Common science gateway architecture. Aggregation is in the portlet container. Users have limited selections of components.
  • 26.
  • 27. Various GTLAB applications deployed as portlets: Remote directory browsing, proxy management, and LoadLeveler queues.
  • 30.
  • 31.
  • 32.
  • 33. Making New Tags and Examples
  • 34.
  • 35.
  • 36.
  • 37.
  • 38. INCA Tags: An Extended Example
  • 39.
  • 40.
  • 41.
  • 42.
  • 43. Here’s the resulting page. You can make into a portlet in a couple of steps. You can also tie to other tags in a pipeline.
  • 44.
  • 45.  
  • 46.