Wednesday, April 28, 2010

Updated TeraGrid CA Files

(Reposting from general TeraGrid mailing lists)

Changes have been made to the list of Teragrid recognized Certificate Authorities.

The new CA tarball, v1.10, can be found on repo. This tarball adds the new PSC MyProxy CA, with hash value 4b2783ac. You can obtain a copy of the tarball and signatures file from the software WG site at:
http://software.teragrid.org/security/teragrid-certs.tar.gz
http://software.teragrid.org/security/teragrid-certs.tar.gz.asc

Please incorporate the new list as specified (RPs, Science Gateways and users within 24 hours)

Monday, April 26, 2010

New OGCE Discussion List, Google Group

We have created a new, open group for OGCE discussion questions and announcements.  The group URL is http://groups.google.com/group/ogce-discuss, and the group email address is ogce-discuss@googlegroups.com. This email address replaces the older discuss@ogce.org mailing list.

You are welcome to join, and we also allow anonymous viewing and moderated posts by group non-members.  Only project managers can see the member list.

The project RSS feed is http://groups.google.com/group/ogce-discuss/feed/rss_v2_0_msgs.xml.

Saturday, March 27, 2010

Build and Deploy to Maven2 Repo

OGCE components use Maven2 for build and Archiva for repository management. For legacy reasons some dependencies are exist in extreme lab maven repository. To upgrade these components and release a version and deploy a jar file to extreme lab maven 2 repository, add the following distributionManagement tag to the pom.xml.

<distributionmanagement>
<repository>
<uniqueversion>false</uniqueversion>
<id>xRepo</id>
<name>Extreme Lab Repository</name>
<url>scp://mneme.extreme.indiana.edu/l/extreme/java/repository</url>
<layout>default</layout>
</repository>
</distributionmanagement>

mvn deploy will deploy the generated jar files to the repository but will prompt to enter the password and will also assume local account name. To avoid password prompt and to specify a different user name the following settings.xml can be placed in the $HOME/.m2 directory. For security reasons, never include the settings.xml in any of the packages, this file should be protected by file system security and is strongly advised to set the file permissions to 600.

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xsi="http://www.w3.org/2001/XMLSchema-instance" schemalocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<servers>
<server>
<id>xRepo</id>
<username>smarru</username>
<privatekey>${user.home}/.ssh/id_dsa</privatekey> <!-- if ssh keys are not available the password can be set as <password>my_password</password> -->
<passphrase>some_passphrase</passphrase>
<filepermissions>664</filepermissions>
<directorypermissions>775</directorypermissions>
<configuration></configuration>
</server>
</servers>
</settings>

Friday, March 26, 2010

Gadget Container Theme Customization

The OGCE gadget container has been updated to simplify theme customization. See http://www.collab-ogce.org/ogce/index.php/OGCE_Gadget_Container_Theme_Customization for more information.

Wednesday, March 17, 2010

OGCE Messaging Service Released

We are pleased to announce the release of our Axis 2 based Messaging Service. This is a standalone publish/subscribe service that is also being integrated into the OGCE workflow suite.

For more information and download instructions, see http://www.collab-ogce.org/ogce/index.php/Messaging.

Thursday, March 11, 2010

OGCE Simple Monitoring Script

A simple perl based service monitoring script is available to check out from sourceforge svn at Service Monitoring Dashboard. This is a cleaned up version of the LEAD SOA Status Page authored by Suresh Marru and Marcus Christie.

The perl script periodically pings the registered services and if a service is done, sends an emails to the registered contacts. The scripts also writes our a html page with the following color convention:
  • Green - Service is up
  • Red - Service is down
  • Yellow - Request timed out (i.e., took longer than the default 20 seconds)
The OGCE Team has deployed and will maintain the script. The status of the services can be viewed at Monitoring Dash Board. All services are pinged every 10 mins and the page is refreshed. Additionally, XSUL based services are instrumented with finer details like uptime and total requests served. In the future Axis2 based services will also be explored for more instrumented data. OGCE hosted gateway (demo/tutorial) services as well as gateway services will be monitored. To add a service to the monitoring list, send an email to {smarru or mpierce} at cs.indiana.edu (Note that only project supported gateways will be monitored).

Gateways can checkout the script and deploy and maintain on their own servers. To add a service to the script, use the following template:

push (@services, {
$NAME => "OGCE Gateway Portal",
$ID => "OGCEPortal",
$URL => "https://ogceportal.iu.teragrid.org:8443/gridsphere/gridsphere",
$CONTACTS => [admin@gateway.org],
$GATEWAYS_R_US => $OGCE
});

The GATEWAYS_R_US is a variable to categorize the services. For instance, to generate a separate listing of OGCE Hosted Services and a list of Gateway Services. The perl script is commented to explain these terminologies. The documentation is very naive but will be enhanced more.

Questions or comments, email smarru at cs.indiana.edu

Overview of OGCE Science Gateway Support

The slideshow below was presented at the Indiana University Pervasive Technology Institute and focuses on IU OGCE activities.  For fuller overviews, see for example http://www.collab-ogce.org/ogce/index.php/Tutorials  
OGCE's Advanced Science Gateway Support
View more presentations from marpierc.

Wednesday, March 10, 2010

Analytics Reports for OGCE Web Site

Images below are from our Google Analytics traffic tracking from March 1, 2009-March 1, 2010. The first shows overall site traffic. The second shows global traffic sources. Click the image to see a larger version.


Download Java Server Faces Components for Amazon Cloud Services

We have Amazon EC2 user interface components built with Java Server Faces available for download or SVN checkout.  


To check the code out from SVN, use the command

svn checkout  https://ogce.svn.sourceforge.net/svnroot/ogce/ogce-amazon-gadgets/awsGadget

This will create a directory $HOME/awsGadget.  To build the gadgets, use the command 

mvn clean install -Dcatalina.home=/path/to/your/tomcat

For example, if you download (separately) Apache Tomcat 6.0.18 and put it in your awsGadget directory, you would run the command

mvn clean install -Dcatalina.home=./apache-tomcat-6.0.18/  

Start your tomcat server and point your browser to http://localhost:8080/AWSGadget/index.jsp.

Note the login page requires your Amazon secret key, so you will need to run this over HTTPS.  This code is provided as is under our usual SourceForge license.  

Monday, March 01, 2010

OGCE Jira URL

We are opening up our Jira project and bug tracking system for anonymous viewing.  The URL is http://grids.ucs.indiana.edu:8080/jira.

Using GFac to wrap an application as a service

Launching applications on Super Computers and managing the application during its lifetime and its output after it ends are challenging tasks. GFac aims at being able to provide simple GUI tools that can help launch and manage the application on remote supercomputers.

This post aims at serving as a quickstart to configuring a XSul based GFac persistent service.

The first step is to install GFac and XRegistry components. Good documentation to do this can be found on the OGCE web pages.


After the installation is complete set the GFAC_HOME environment variable to point to the GFac's target/dist-bin folder:

export GFAC_HOME=/Users/archit/ogce/ogce-xsul-services-1.0-RC1/sgfac/target/dist-bin

Now create a folder to house the configuration files that will be used by our service.

cd ogce-xsul-services-1.0-RC1/sgfac
mkdir helloworld
cd helloworld

Now use your favorite editor to create the three XML configuration files needed by GFac to start the persistent service namely the App description document, the host description document and service description document.

Application Description File helloworldapp.xml:

<ApplicationDescription xmlns="http://www.extreme.indiana.edu/namespaces/2004/01/gFac" xmlns:lead="http://www.extreme.indiana.edu/lead">
<applicationName
targetNamespace="http://www.extreme.indiana.edu/lead">HelloWorldApp</applicationName>
<jobType>single</jobType>
<project> <projectName>TG-XXXXXXXXXX</projectName>
<projectDescription>
TG staff
</projectDescription>
</project>
<queue>
<queueName>SERIAL</queueName>
<queueDescription>
BigRed queue
</queueDescription>
</queue>
<maxWallTime>30</maxWallTime>
<count>1</count>
<rslparm name="project">TG-XXXXXXXXXX</rslparm>
<rslparm name="queue">SERIAL</rslparm>
<deploymentDescription>
<hostName>
bigred.iu.teragrid.org
</hostName>
<executable>/N/u/tg-archi/BigRed/helloworld</executable>
<workdir>
/N/u/tg-archi/BigRed/gfactmp
</workdir>
<!-- Tmp directory for this application.
if not specified, the tmp directory of the host will be used-->
<tmpDir>
/N/u/tg-archi/BigRed/gfactmp
</tmpDir>
<applicationEnv>
<name>FIRST_NAME</name>
<value>Archit
</value>
</applicationEnv>
</deploymentDescription>
</ApplicationDescription>

ServiceDescription file: helloworldsvc.xml

<ServiceMap xmlns="http://www.extreme.indiana.edu/namespaces/2004/01/gFac"
xmlns:lead="http://www.extreme.indiana.edu/lead">

<service>
<serviceName targetNamespace="http://www.extreme.indiana.edu/lead">HelloWorldService</serviceName>
</service>
<lifeTime>
<notAfterInactiveMinutes>-1</notAfterInactiveMinutes>
</lifeTime>
<portType>
<method stageOutputDataFiles="true" forceFileStagingToWorkDir="true">
<methodName>Run</methodName>
<application paramValuesOnly="true" useLEADNameListFile="true">
<applicationName targetNamespace="http://www.extreme.indiana.edu/lead">HelloWorldApp</applicationName>
</application>
<inputParameter>
<parameterName>lastname
</parameterName>
<parameterType>String</parameterType>
</inputParameter>
<inputParameter>
<parameterName>inputfile</parameterName>
<parameterType>URI</parameterType>
</inputParameter>

<outputParameter>
<parameterName>friendCount</parameterName>
<parameterType>String</parameterType>
</outputParameter>
<outputParameter>
<parameterName>friendListFile</parameterName>
<parameterType>URI</parameterType>
</outputParameter>
</method>
</portType>
</ServiceMap>

Host Description File: bigred.xml
<HostDescription xmlns="http://www.extreme.indiana.edu/namespaces/2004/01/gFac" xmlns:lead="http://www.extreme.indiana.edu/lead">
<documentInfo>
<documentName targetNamespace="http://www.extreme.indiana.edu/lead">BigRed</documentName>
</documentInfo>
<hostName>bigred.iu.teragrid.org</hostName>
<hostConfiguration>
<tmpDir>/N/u/tg-archi/BigRed/gfactmp</tmpDir>
<globusGatekeeper wsGram="true">
<endPointReference>
https://gatekeeper.bigred.iu.teragrid.org:8443/wsrf/services/ManagedJobFactoryService
</endPointReference>
<jobmanagertype>Loadleveler</jobmanagertype>
</globusGatekeeper>

<gridFTP>
<endPointReference>gridftp.bigred.iu.teragrid.org:2811</endPointReference>
</gridFTP>
</hostConfiguration>
</HostDescription>


Create the service properties file:
Finally, create the GFac service property file: helloworld.properties. This will tell GFac where to get the service, application, and host description files you just made.
serviceMapFile = helloworld/helloworldsvc.xml
appDescFile = helloworld/helloworldapp.xml
hostDescFile = helloworld/bigred.xml
port = 12346
#Comment this to make Factory and Services starts up without https
#transportSecurity=true
#private key used by the GFac to connect to other services, and start https socket, if it is enabled
ssl.hostcertsKeyFile=/home/ogce/ogce-xsul-services-1.0-RC1/sgfac/target/dist-bin/conf/ogce_services_key.pem
ssl.trustedCertsFile=/home/ogce/ogce-xsul-services-1.0-RC1/sgfac/target/dist-bin/conf/trusted_cas.pem
registryURL=https://<yourip>:6666/xregistry?wsdl
#Ask Gfac to go to local mode, so it can work without credentails. Comment if you need a remote installation
installation=local
myproxyServer=myproxy.teragrid.org
myproxyUserName=XXXXX
myproxyLifetime=86400
myproxyPasswd=XXXXXX
#gfac.prefferedProvider=Local|Gram|WSGram|SSH|ResourceBroker
wsgramPrefered=true


Now with your JAVA_HOME and GFAC_HOME set start the persisitent HelloWorldService using the run.sh provided with GFac as foolows:

./run.sh helloworld/helloworld.properties

This will start the service on port 12345 and you are ready to submit HelloWorld jobs.

Thursday, December 17, 2009

Web Server DNS Updates Complete

The DNS entry for the host server of the OGCE and GCE Workshop websites has been updated.  The usual URLs (http://www.collab-ogce.org, etc) should work correctly.

Wednesday, December 16, 2009

OGCE Web Site Problems

We are changing the IP address of the Web server that virtually hosts the www.collab-ogce.org web site.  You can access the OGCE site with this URL:  

http://gf18.ucs.indiana.edu/ogce/index.php/Main_Page

The GCE08 and 09 workshops can be reached at

http://gf18.ucs.indiana.edu/gce08/index.php/Main_Page

and

http://gf18.ucs.indiana.edu/gce09/index.php/Main_Page

OGCE Cyberaide JavaScript Release

The SC09 stable release of Cyberaide JavaScript is available from http://www.collab-ogce.org/ogce/index.php/JavaScript_COG.  You can either check the code out from SVN or download the tar:

SVN Checkout Command: svn checkout https://cyberaide.googlecode.com/svn/tags/cyberaide-javascript-SC09

Tar download link: http://www.collab-ogce.org/ogce/downloads/cyberaide-javascript-SC09.tar.gz

Tuesday, December 08, 2009

OGCE Gadget Container Added to Nightly Build and Test

The OGCE Gadget Container has been added to the NMI nightly build and test system.  To see a dashboard of all tests, go to http://nmi-s003.cs.wisc.edu/nmi/index.php?page=results%2Foverview&opt_project=OGCE.

Monday, December 07, 2009

OGCE Gadget Container REST API

Notes by Gerald Guo, the developer of the gadget container. We are developing a REST API for the gadget container that allows you to work with it programmatically.  The following example shows how to add a gadget to a layout using curl.  If you prefer, a tool like the Firefox plugin Poster can be used.

Curl example:
1) Authentication
    curl -H Connection:keep-alive -d "screenname=testuser&password=testuser"
-v -k -o output.txt -c cookies
https://gf13.ucs.indiana.edu:7443/ishindig-webapp/signin

2) Add a new gadget (Calender gadget)

First, create a file named "gadget.json" with following content:
{ "gadgetname":"Embedded Calendar",
"gadgetspecsrc":"https://gf13.ucs.indiana.edu:7443/gadgets-repo/EmbeddedCale
ndar.xml"}

Then execute this command:
curl -d @gadget.json -H Content-Type:application/json -H
Connection:keep-alive -v -k -c cookies -b cookies
'https://gf13.ucs.indiana.edu:7443/ishindig-webapp/rest/users/@self/layouts/
index/0/tabs/index/0/columns/index/2/gadgets/index/-1'

In the long POST URL, position (consisting of tuple
gadget index>) of the new gadget is specified.
    layouts/index/0  : this specifies the layout the gadget will be added to
    tabs/index/0     : this specifies the tab the gadget will be added to
    columns/index/2  : this specifies the column the gadget will be added to
    gadgets/index/-1 : this specifies position of the gadget within
containing column. -1 means appending.

Then you can log in OGCE gadget container via web interface
(https://gf13.ucs.indiana.edu:7443/ishindig-webapp/www/sign.jsp) to check
whether it has been added. 


This feature is currently only available in the SVN trunk.  It is not part of the SC09 tagged release.

XBaya Workflow Composer as Mashup Builder

WS02 is using and extending XBaya to work as a mashup composer: http://kkpradeeban.blogspot.com/2009/11/this-screen-cast-shows-development-of.htm.

 

Tuesday, November 24, 2009

OGCE Gadget Container Release

The SC09 tagged release of the OGCE Gadget Container is now available.  See http://www.collab-ogce.org/ogce/index.php/OGCE_Gadget_Container for download links and more information.  Features include
  • Several gadgets pre-configured in the build, including RSS readers, GMail, Google Talk, TeraGrid status monitoring gadgets, and more.
  • Support for Social Networking using Google Friend Connect.
  • Embedded Apache Shindig container.  
  • Support for OAuth-secured gadgets.
  • Support for OpenID login.
  • Administration interfaces.
  • Alternate layouts and skins.
  • Drag-and-drop gadget layouts.

Friday, November 13, 2009

Using Friend Connect Gadgets in OGCE Gadget Container

Google Friend Connect allows you to easily develop social applications using Open Social, OAuth, and OpenID without requiring detailed knowledge of specifications or software tools.  FriendConnect applications are just HTML and JavaScript and can be easily converted into Google Gadgets.

The OGCE Gadget Container comes configured to run FriendConnect applications.  However, you must do a few additional steps outside of our build process.  These instructions refer to actions you should take at the Friend Connect website.
  1. Register with FriendConnect.  Click "Get Started" and check the agreement.
  2. Register your URL.  If you are just testing things on localhost, there is no need to do this.  The OGCE gadget container comes with a site ID for localhost.  This gives you a social network of 1.
  3. After registering, you will be redirected to your FriendConnect management dashboard.  It will have a URL similar to
    http://www.google.com/friendconnect/admin/site/overview?id=02963187904381158078
  4. The number 02963187904381158078 in this example is your site ID.
  5. Go to the OGCE Gadget Container's config/ishindig.properties file and change the value of site.friendconnectID to your new site ID.
  6. If you have already built the OGCE Gadget Container before, you will need to redeploy the gadgets.   Use the command mvn clean install -f third_party_gadgets/pom.xml.    
  7. You will also need to reload your browser to see the changes if you were logged into the portal.
If you have registered and configured everything correctly, the Friend Connect tab should look like the page below.




Wednesday, November 11, 2009

OGCE Gadget Container and OpenID

The OGCE Gadget Container lets you associate an OpenID with your login account.  You can do this in one of two ways.  We will assume you have an OpenID already. Chances are you do, even if you don't realize it. For more information, see http://openid.net/get-an-openid/. For a concrete example, you can use Blogger blogs as OpenID URLs.  If you were an owner of this blog, you would type http://collab-ogce.blogspot.com in the OpenID URL fields of the images below.

Your first option is to associate your openID with your gadget portal account when you create first it.  Before creating the account, log into your OpenID account by typing its URL in the lower left text field of the login page.




You will be redirected to your OpenID login page.  Login and you will be redirected back to the gadget login page (above).  Now fill out the form on the right to create a new account.

From now on, you can just type your OpenID URL in the gadget login page and use your OpenID account to login.  It will be associated with your user account.

Your second option is to add or update your OpenID URL after you have created an account.  To do this, first create an account and login with your portal user name.  Then click the the "User Info" button on the upper right tool bar area.  You'll get a popup like the one below. 


Type your OpenID URL in the field provided (next to last in the image).  You can then use your OpenID for future logins instead of your portal password.