e-infrastructure shared between europe and latin america genius portal valeria ardizzone...

28
E-infrastructure shared between Europe and Latin America GENIUS PORTAL Valeria Ardizzone INFN-Catania 1° EELA Grid School Itacuruçà Island, State of Rio De Janeiro, Brazil

Upload: anthony-lamb

Post on 13-Dec-2015

216 views

Category:

Documents


2 download

TRANSCRIPT

E-infrastructure shared between Europe and Latin America

GENIUS PORTAL

Valeria ArdizzoneINFN-Catania1° EELA Grid SchoolItacuruçà Island, State of Rio De Janeiro, Brazil

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: how it works

Apache + Tomcat

EnginFrame

GENIUShttps+java/xml+rfb

WEB Browser

gLiteUI

LocalWS

the GridM/W+GSI

3-tier model

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

The GENIUS hourglass model

OS & Net services

Basic Services

High level GRID middleware

ALICE ATLAS CMS LHCbApplications’specific layer

Other apps

GLOBUS

toolkit

EGEE (LCG/gLite) architectur

e

GENIUS web portal

GENIUS

Grid Enabled web eNvironment for site Independent

User job Submission

INFN / NICE Collaboration

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: layout restyling

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: https://egris216.eela.ufrj.br

SSL Encryption !

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: files management

Remote File Browser

On the User Interface

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: files management

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: files management

HTML fragment for better grouping of options

in a service, i.e. <table>

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: Grid Authentication with Myproxy

myproxy-get-delegation

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

Grid authentication with MyProxy

UI

LocalWS

MyProxyServer

GENIUSServer

(UI)

myproxy-init

any grid service

myproxy-get-delegation

output

the Grid

execution

WEB Browser

Now, VOMS Extensions needed to run jobs on the

GRID ( --voms

<voms_vo_name>)

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: security

Transparent VOMS Support

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: preferences

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: preferences

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: preferences

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: preferences

Custom MyProxy

Server List Management

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: preferences

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

How to create a SERVICE on GENIUS PORTAL

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

GENIUS: files management

<ef:service id="edit-file"> <ef:name>View/Edit a File</ef:name> <ef:info>With this service you may edit

a file in your home directory. </ef:info> <ef:option id="filetoedit"

label="Select File to View/Edit" type="rfb" base="${HOME}" target="@genius"/>

<ef:action id="view" label="View"> $EF_ROOT/plugins/genius/bin/geniusgrid.sh view-file <ef:result type="text/html"/> </ef:action> <ef:action id="edit" label="Edit"> $EF_ROOT/plugins/genius/bin/geniusgrid.sh edit-file <ef:result type="text/xml"/> </ef:action> </ef:service>

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

Services Creations StepsThe steps you have to follow in order to make your new service accessible

to the users, are:

• Choose the Service Definition File that will include the new service;

• Write the <ef:service> tag and give it an unique identifier. This identifier must be located in the id attribute of the tag;

• Add a <ef:name> tag which will be used as the readable text for the hyper-link in the page containing the services. Clicking on the hyper-link will execute the service;

• Add an <ef:action> tag;

• As a text node of the <ef:action> tag, add the command that must be executed. for example, ${EF_ROOT}/plugins/ef/bin/ef.test. Note the use of the ${EF_ROOT} syntax: this makes your Genius services independent from the Genius installation directory;

• As a child node of the <ef:action> tag, add the <ef:result> tag. The attribute type of <ef:result> suggests to the Genius Server what kind of output it should expect. (XML, HTML or Simple Text);

• Finally, close the <ef:action> and the <ef:service> tags.

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

<ef:agent> in Detail.. • Sub tags of <ef:agent>

– [optional] <ef:name> – title of the web page– [optional] <ef:info> – welcome message of the opening

page– [optional] <ef:location> – location of Remote Agent(s)

[required] host – hostname/IP address of EF Agent host [required] port – TCP port used by EF Agent

– [optional] <ef:include> – external XML libraries of functions [required] xml – path to an SDF which contains XML libraries

– [optional] <ef:spooler> – definition of default data [required] server – server-side absolute path of spoolers [optional] agent – agent-side absolute path of spoolers [optional] ttl – defines how long the spoolers will be

accessibleformat: [DD]d[HH]h[MM]m[SS]s, 0(remove immediately), -

1(not create)

– [required] <ef:folder id="root"> – first folder of the service tree.

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

Skeleton of any your services<?xml version="1.0" encoding="iso-8859-1"?><?xml-stylesheet href="layout.xsl" type="text/xsl"?>

<ef:agent id="FILENAME" authority="os"

xmlns:ef="http://www.enginframe.com/2000/EnginFrame">

<ef:location host="127.0.0.1" port="9999"/> <ef:include xml="${EF_LIB}/xml/com.enginframe.system.xml"/> <ef:name>GENIUS Grid Portal</ef:name> <ef:info><H1>Welcome to the demo

services...</H1></ef:info>

<ef:spooler server="${EF_SPOOLER_DIR}" ttl="1d"/>

<ef:folder id="root"> <ef:name>DEMO Services</ef:name>

<!-- Services go here --></ef:folder>

</ef:agent>

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

My Service file: vardizzo.grid.xml<?xml version="1.0"?><?xml-stylesheet href="layout.gilda.xsl" type="text/xsl"?> <ef:agent id="vardizzo.grid" authority="os"

xmlns:ef="http://www.enginframe.com/2000/EnginFrame"> <ef:location host="egris216.eela.ufrj.br" port="9999"/>

<ef:name>Services</ef:name><ef:info><center> <H1>Welcome to Valeria Home</H1> </center> </ef:info>

<ef:spooler server="${EF_SPOOLER}" ttl="1d"/> <ef:include xml="${EF_LIB}/xml/com.enginframe.system.xml"/> <ef:include xml="../com.enginframe.genius.xml"/>

<ef:folder id="root"> <ef:name>Valeria</ef:name>

<ef:folder id="root-folder"> <ef:name>Services</ef:name>

<ef:service id="1_Service" authority="genius"><ef:name>1. Service</ef:name>

<ef:info>Hello Valeria.<br/> </ef:info>

</ef:service></ef:agent>

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

My script: vardizzo.sh

#!/bin/sh### valeria Services Functionshome() { echo "<ef:redirect>\"vardizzo.grid.xml\"</ef:redirect>" }

### Main Procedure COMMAND="$1"shift

case "$COMMAND" in

home) home $* ;;#################################################################*

) error "Unrecognized command $COMMAND" ;;

esac

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America2 Service

<ef:service id="2_Service" authority="genius"> <ef:name>2. Service</ef:name> <ef:option id="file" label="File to compress" type="rfb" /> <ef:action id="submit" label="ZIP"> /home/vardizzo/EGRIS_1/bin/vardizzo.sh zip <ef:result type="text/plain" /> </ef:action> </ef:service >

#!/bin/sh…zip(){ gzip $file echo "Your file was succefully zipped!"}...zip) zip $* ;;

In vardizzo.grid.xml:

In vardizzo.sh:

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

3 Service

<ef:option id="file" label="File to compress" type="rfb" multi="true" target="file" />

<ef:option id="dir" label="Chose directory" type="rfb" target="directory" />

<ef:option id="filename" label="filename" type="text" /><ef:option id="level" label="Compression level" type="list"> <ef:option id="9">maximum</ef:option> <ef:option id="4">medium</ef:option> <ef:option id="1">minimum</ef:option></ef:option><ef:action id="submit" label="NEXT"> $EF_ROOT/plugins/genius/bin/demo.service.sh <ef:result type="text/plain" />

In vardizzo.grid.xml:

#!/bin/shzip2(){ gzip -$level -c $file > $dir$filename.gz echo "Your file was succefully zipped again!“ }...zip2) zip2 $* ;;

In vardizzo.sh:

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

Practical Session

• GENIUS SERVER: https://egris216.eela.ufrj.br

The following users’ accounts have been made:(Users,Passwd_Account, Passwd_certificate): (climate, GridCLIMATE, ITACURUCA)(distsim, GridDISTSIM, ITACURUCA)(emboss,GridEMBOSS, ITACURUCA)(lemdist, GridLEMDIST, ITACURUCA)(lms, GridLMS, ITACURUCA)(satyrus,GridSATYRUS, ITACURUCA)(seghidro, GridSEGHIDRO, ITACURUCA)(vod, GridVOD, ITACURUCA)

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

• Modify properly the file <appname>.sh that you find on your account, under this directory:

$ ls EGRIS_1/bin/

vardizzo_ok.sh vardizzo.sh

• And the SDF (service Description File), here:

$ vi /opt/genius/enginframe/plugins/genius/WEBAPP/gilda/vardizzo.grid.xml

1° EELA Grid School, Itacuruçà Island, State of Rio De Janeiro (Brazil), 04-15.12.2006

E-infrastructure shared between Europe and Latin America

Questions…