Title: Grid Computing and the Globus Toolkit
1Grid Computing and the Globus Toolkit
- Jennifer M. Schopf
- Argonne National Lab
- National eScience Centre
- http//www.mcs.anl.gov/jms/Talks/
2What is a Grid?
- Resource sharing
- Computers, storage, sensors, networks,
- Sharing always conditional issues of trust,
policy, negotiation, payment, - Coordinated problem solving
- Beyond client-server distributed data analysis,
computation, collaboration, - Dynamic, multi-institutional virtual orgs
- Community overlays on classic org structures
- Large or small, static or dynamic
3Why Is this Hard or Different?
- Lack of central control
- Where things run
- When they run
- Shared resources
- Contention, variability
- Communication
- Different sites implies different sys admins,
users, institutional goals, and often strong
personalities
4So Why Do It?
- Computations that need to be done with a time
limit - Data that cant fit on one site
- Data owned by multiple sites
- Applications that need to be run bigger, faster,
more - Size and/or complexity of the problem requires
that people in several organizations collaborate
and share computing resources, data, instruments
5The Role of the Globus Toolkit
- A collection of solutions to problems that come
up frequently when building collaborative
distributed applications - Heterogeneity
- A focus, in particular, on overcoming
heterogeneity for application developers - Standards
- We capitalize on and encourage use of existing
standards (IETF, W3C, OASIS, GGF) - GT also includes reference implementations of
new/proposed standards in these organizations
6Globus is an Hour Glass
Higher-Level Services and Users
- Local sites have an their own policies, installs
heterogeneity! - Queuing systems, monitors, network protocols, etc
- Globus unifies
- Build on Web services
- Use WS-RF, WS-Notification to represent/access
state - Common management abstractions interfaces
Standard GT4 Interfaces
Local heterogeneity
7On April 29, 2005 the Globus Alliance
releasedthe finest version of the Globus Toolkit
to date!
Dont take our word for it! Read the UK eScience
Evaluation of GT4 www.nesc.ac.uk/technical_papers/
UKeS-2005-03.pdf (Reachable from www.globus.org,
under News)
8Globus is Grid Infrastructure
- Software for Grid infrastructure
- Service enable new existing resources
- E.g., GRAM on computer, GridFTP on storage
system, custom application service - Uniform abstractions mechanisms
- Tools to build applications that exploit Grid
infrastructure - Registries, security, data management,
- Open source open standards
- Each empowers the other
- Enabler of a rich tool service ecosystem
9Globus is a Building Block
- Basic components for grid functionality
- Highest-level services are often application
specific, we let applications concentrate there - Easier to reuse than to reinvent
- Compatibility with other Grid systems comes for
free - We provide basic infrastructure to get you one
step closer
10Globus is a Tool
- A Grid development environment
- Develop new OGSA-compliant Web Services
- Develop applications using Java or C/C Grid
APIs - Secure applications using basic security
mechanisms - A set of basic Grid functionality
- Services and clients
- Libraries
- Development tools and examples
- The prerequisites for many Grid community tools
11GT Domain Areas
- Core runtime
- Infrastructure for building new services
- Security
- Apply uniform policy across distinct systems
- Execution management
- Provision, deploy, manage services
- Data management
- Discover, transfer, access large data
- Monitoring
- Discover monitor dynamic services
12Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
13Our Goals for GT4
- Usability, reliability, scalability,
- Web service components have quality equal or
superior to pre-WS components - Documentation at acceptable quality level
- Consistency with latest standards (WS-, WSRF,
WS-N, etc.) and Apache platform - WS-I Basic Profile compliant
- WS-I Basic Security Profile compliant
- New components, platforms, languages
- And links to larger Globus ecosystem
14WSRF vs XML/SOAP
- The definition of WSRF means that the Grid and
Web services communities can move forward on a
common base - Why Not Just Use XML/SOAP?
- WSRF and WS-N are just XML and SOAP
- WSRF and WS-N are just Web services
- Benefits of following the specs
- These patterns represent best practices that have
been learned in many Grid applications - There is a community behind them
- Why reinvent the wheel?
- Standards facilitate interoperability
15GT2 Evolution To GT4
- ALL of GT2 functionality is in GT4
- What happened to the GT2 key protocols?
- Security Adapted X.509 proxy certs to integrate
with emerging WS standards - GRAM Took ad hoc protocols away and now use
WS-RF standards (ManagedJobFactory and related
service definitions) - GridFTP Using GridFTP standard from GGF,
Reliable File Transfer (RFT) supplies the
WSRF-compliant interface - MDS/LDAP Replaced LDAP extensions with WSRF
standards for notification, subscription, and
registration
16GT2 vs GT4
- Pre-WS Globus is in GT4 release
- Both WS and pre-WS components (ala 2.4.3) are
shipped - These do NOT interact, but both can run on the
same resource independently - Basic functionality is the same
- Run a job
- Transfer a file
- Monitoring
- Security
- Code base is completely different
17Why Use GT4?
- Performance and reliability
- Literally millions of tests and queries run
against GT4 services - Scalability
- Many lessons learned from GT2 have been addressed
in GT4 - Support
- This is our active code base, much more attention
- Additional functionality
- New features are here
- Additional GRAM interfaces to schedulers, MDS
Trigger service, GridFTP protocol interfaces, etc - Easier to contribute to
184.0 is not a typical .0 release,but the
culmination of months of testing
3.0.2
3.2.1
3.0.1
4.0.1
3.0.0
3.2.0
4.0.0
3.9.4
3.9.2
3.9.0
3.9.5
3.9.3
3.9.1
3.3.0
CVS trunk
Stable release branch
Development release
Stable release
19Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
20GT4 Web Services Runtime
- Supports both GT (GRAM, RFT, Delegation, etc.)
user-developed services - Redesign to enhance scalability, modularity,
performance, usability - Leverages existing WS standards
- WS-I Basic Profile WSDL, SOAP, etc.
- WS-Security, WS-Addressing
- Adds support for emerging WS standards
- WS-Resource Framework, WS-Notification
- Java, Python, C hosting environments
- Java is standard Apache
21What does Core give you?
- Reference implementation of WSRF and WS-N
functions - Naming and bindings (basis for virtualization)
- Every resource can be uniquely referenced and has
one or more associated services for interacting - Lifecycle (basis for resilient state management)
- Resources created by svcs following a factory
pattern - Resource destroyed immediately or scheduled
- Information model (basis for monitoring
discovery) - Resource properties associated with resources
- Operations for querying and setting this info
- Asynchronous notification of changes to
properties - Service groups (basis for registries collective
svcs) - Group membership rules and membership management
- Base fault type
22Apache Axis Web Services Container
- Good news for Java WS developers GT4.0 works
with standard Axis and Tomcat - GT provides Axis-loadable libraries, handlers
- Includes useful behaviors such as inspection,
notification, lifetime mgmt (WSRF) - Others implement GRAM, etc.
- Major Globus contributions to Apache
- 50 of WS-Addressing code
- 15 of WS-Security code
- Many bug fixes
- WSRF code a possible next contribution
GT bits
App bits
Security Addressing
Axis
Modulo Axis and Tomcat release cycle issues
23GT4 Web Services Runtime
24Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
25Globus Security
- Control access to shared services
- Address autonomous management, e.g., different
policy in different work-groups - Support multi-user collaborations
- Federate through mutually trusted services
- Local policy authorities rule
- Allow users and application communities to set up
dynamic trust domains - Personal/VO collection of resources working
together based on trust of user/VO
26Virtual Organization (VO) Concept
- VO for each application or workload
- Carve out and configure resources for a
particular use and set of users
27GT4 Security
Users
28GT4 Security
- Public-key-based authentication
- Transport- and message-level authentication
- Extensible authorization framework based on Web
services standards - SAML-based authorization callout
- Integrated policy decision engine
- XACML policy language, per-operation policies,
pluggable
29Security Tools
- Basic Grid Security Mechanisms
- Certificate Generation Tools
- Certificate Management Tools
- Getting users registered to use a Grid
- Getting Grid credentials to wherever theyre
needed in the system - Authorization/Access Control Tools
- Storing and providing access to system-wide
authorization information - Credential management service
- MyProxy (One time password support)
30Other Security Services Include
- MyProxy
- Simplified credential management
- Web portal integration
- Single-sign-on support
- KCA kx.509
- Bridging into/out-of Kerberos domains
- SimpleCA
- Online credential generation
- CAS
- Community Authorization Service
31A Cautionary Note
- Grid security mechanisms are tedious to set up
- If exposed to users, hand-holding is usually
required - These mechanisms can be hidden entirely from end
users, but still used behind the scenes - These mechanisms exist for good reasons.
- Many useful things can be done without Grid
security - It is unlikely that an ambitious project could go
into production operation without security like
this - Most successful projects end up using Grid
security, but using it in ways that end users
dont see much
32GT4s Use of Security Standards
Supported, Supported, Fastest,
but slow but insecure so default
33GT-XACML Integration
- eXtensible Access Control Markup Language
- OASIS standard, open source implementations
- XACML sophisticated policy language
- Globus Toolkit ships with XACML runtime
- Included in every client and server built on GT
- Turned-on through configuration
- that can be called transparently from runtime
and/or explicitly from application - and we use the XACML-model for our Authz
Processing Framework
34GT Authorization Framework
35Globus Certificate Service
- An online service that issues low-quality GSI
certificates - Intended for people who want to experiment with
Grid components that require certificates but do
not have any other means of acquiring
certificates. - These certificates are not to be used on
production systems. - Not a true Certificate Authority (CA)
- No revoking or reissuing certificates
- No verification of identities
- The service itself is not especially secure.
36Simple CA
- A convenient method of setting up a certificate
authority (CA). - The Certificate Authority can then be used to
issue certificates for users and services that
work with GSI and WS-Security. - Simple CA is intended for operators of small Grid
testing environments and users who are not part
of a larger Grid. - Most production Grids will not accept
certificates that are not signed by a well-known
CA, so the certificates generated by Simple CA
will usually not be sufficient to gain access to
production services.
37MyProxy
- MyProxy is a remote service that stores user
credentials. - Users can request proxies for local use on any
system on the network. - Web Portals can request user proxies for use with
back-end Grid services. - Grid administrators can pre-load credentials in
the server for users to retrieve when needed. - Greatly simplifies certificate management!
38CAS Community Authorization Service
- CAS allows resource providers to specify
course-grained access control policies in terms
of communities as a whole. - Fine-grained access control is delegated to the
community. - Resource providers maintain ultimate authority
over their resources (including per-user control
and auditing) but are spared most day-to-day
policy administration tasks.
39VOMS
- A community-level group membership system
- Database of user roles
- Administrative tools
- Client interface
- voms-proxy-init
- Uses client interface to produce an attribute
certificate (instead of proxy) that includes
roles capabilities signed by VOMS server - Works with non-VOMS services, but gives more info
to VOMS-aware services - Allows VOs to centrally manage user roles
40Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
41Execution Management (GRAM)
- Common WS interface to schedulers
- Unix, Condor, LSF, PBS, SGE,
- More generally interface for process execution
management - Lay down execution environment
- Stage data
- Monitor manage lifecycle
- Kill it, clean up
- A basis for application-driven provisioning
42GRAM - Basic Job Submission and Control Service
- A uniform service interface for remote job
submission and control - Includes file staging and I/O management
- Includes reliability features
- Supports basic Grid security mechanisms
- Available in Pre-WS and WS
- GRAM is not a scheduler.
- No scheduling
- No metascheduling/brokering
- Often used as a front-end to schedulers, and
often used to simplify metaschedulers/brokers
43GT4 WS GRAM
- 2nd-generation WS implementation optimized for
performance, flexibility, stability, scalability - Streamlined critical path
- Use only what you need
- Flexible credential management
- Credential cache delegation service
- GridFTP RFT used for data operations
- Data staging streaming output
- Eliminates redundant GASS code
44GRAM
- Intended for jobs where arbitrary programs,
stateful monitoring, credential management, and
file staging are important - If the application is lightweight, with modest
input/output, may be a better candidate for
hosting directly as a WSRF service
45GT4 WS GRAM Architecture
Service host(s) and compute element(s)
SEG
Job events
GT4 Java Container
Compute element
GRAM services
Local job control
GRAM services
Local scheduler
Job functions
sudo
GRAM adapter
Delegate
Transfer request
Client
Delegation
Delegate
GridFTP
User job
RFT File Transfer
FTP control
FTP data
Remote storage element(s)
GridFTP
46GT4 WS GRAM Architecture
Service host(s) and compute element(s)
SEG
Job events
GT4 Java Container
Compute element
GRAM services
Local job control
GRAM services
Local scheduler
Job functions
sudo
GRAM adapter
Delegate
Transfer request
Client
Delegation
Delegate
GridFTP
User job
RFT File Transfer
FTP control
FTP data
Remote storage element(s)
GridFTP
Delegated credential can be Made available to
the application
47GT4 WS GRAM Architecture
Service host(s) and compute element(s)
SEG
Job events
GT4 Java Container
Compute element
GRAM services
Local job control
GRAM services
Local scheduler
Job functions
sudo
GRAM adapter
Delegate
Transfer request
Client
Delegation
Delegate
GridFTP
User job
RFT File Transfer
FTP control
FTP data
Remote storage element(s)
GridFTP
Delegated credential can be Used to authenticate
with RFT
48GT4 WS GRAM Architecture
Service host(s) and compute element(s)
SEG
Job events
GT4 Java Container
Compute element
GRAM services
Local job control
GRAM services
Local scheduler
Job functions
sudo
GRAM adapter
Delegate
Transfer request
Client
Delegation
Delegate
GridFTP
User job
RFT File Transfer
FTP control
FTP data
Remote storage element(s)
GridFTP
Delegated credential can be Used to authenticate
with GridFTP
49Submitting a Sample Job
- Specify a remote host with F
- globusrun-ws submit F host2 c /bin/true
- The return code will be the jobs exit code if
supported by the scheduler
50Data Staging and Streaming
- Simplest stage-in/stage-out example is
stdout/stderr - globusrun-ws S s c /bin/date
- -S is short for -submit
- -s is short for streaming
- The output will be sent back to the terminal,
control will not return until the job is done
51Resource Specification Language
- ltjobgt
- ltexecutablegt/bin/echolt/executablegt
ltdirectorygt/tmplt/directorygt ltargumentgt12lt/argument
gt - ltenvironmentgtltnamegtPIlt/namegt ltvaluegt3.141lt/valuegtlt
/environmentgt - ltstdingt/dev/nulllt/stdingt
- ltstdoutgtstdoutlt/stdoutgt
- ltstderrgtstderrlt/stderrgt
- lt/jobgt
52Submitting Using XML
- Create the file containing the RSL
- You may validate the RSL ahead of time
- globusrun-ws validate f rslfile.xml
- If the file validates, submit using
-submit
53At Most Once Submission
- You may specify a UUID with your job submission
- If youre not sure the submission worked, you may
submit the job again with the same UUID - If the job has already been submitted, the new
submission will have no effect - If you do not specify a UUID, one will be
generated for you
54WS GRAM Performance
- Time to submit a basic GRAM job
- Pre-WS GRAM lt 1 second
- WS GRAM 2 seconds
- Concurrent jobs
- Pre-WS GRAM 300 jobs
- WS GRAM 32,000 jobs
55Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
56GT4 Data Management
- Stage/move large data to/from nodes
- GridFTP, Reliable File Transfer (RFT)
- Alone, and integrated with GRAM
- Locate data of interest
- Replica Location Service (RLS)
- Replicate data for performance/reliability
- Distributed Replication Service (DRS)
- Provide access to diverse data sources
- File systems, parallel file systems, hierarchical
storage GridFTP - Databases OGSA DAI
57GridFTP
- A high-performance, secure, reliable data
transfer protocol optimized for high-bandwidth
wide-area networks - FTP with well-defined extensions
- Uses basic Grid security (control and data
channels) - Multiple data channels for parallel transfers
- Partial file transfers
- Third-party (direct server-to-server) transfers
- Reusable data channels
- Command pipelining
- GGF recommendation GFD.20
58Striped GridFTP Service
- A distributed GridFTP service that runs on a
storage cluster - Every node of the cluster is used to transfer
data into/out of the cluster - Head node coordinates transfers
- Multiple NICs/internal busses lead to very high
performance - Maximizes use of Gbit WANs
59GridFTP in GT4
Disk-to-disk onTeraGrid
- 100 Globus code
- No licensing issues
- Stable, extensible
- IPv6 Support
- XIO for different transports
- Striping ? multi-Gb/sec wide area transport
- Pluggable
- Front-end e.g., future WS control channel
- Back-end e.g., HPSS, cluster file systems
- Transfer e.g., UDP, NetBLT transport
60Copying Files (in a nutshell)
- globus-url-copy options srcURL dstURL
- guc gsiftp//localhost/foo file///bar
- Client/server, using FTP stream mode
- guc vb dbg tcp-bs 1048576 p 8
gsiftp//localhost/foo gsiftp//localhost/bar - 3rd party transfer, MODE E
- guc https//host.domain.edu/foo
ftp//host.domain.gov/bar - from secure http to ftp server
61The Options Improving Performance
- -p (parallelism or number of streams)
- rule of thumb 4-8, start with 4
- -tcp-bs (TCP buffer size)
- use either ping or traceroute to determine the
RTT between hosts - buffer size BW (Mbs) RTT (ms)
1000/8/lt(parallelism value 1)gt - If that is still too complicated use 2MB
- -vb if you want performance feedback
- -dbg if you have trouble
62Tuning GridFTP
- Many ways you can tune the performance
- Two sources of data are
- http//www.globus.org/toolkit/docs/4.0/data/gridft
p/rn01re01.html - http//www.nsf-middleware.org/OnTheGrid/
2004-09-MaxGridFTP.pdf
63RFT - File Transfer Queuing
- A WSRF service for queuing file transfer requests
- Server-to-server transfers
- Checkpointing for restarts
- Database back-end for failovers
- Allows clients to requests transfers and then
disappear - No need to manage the transfer
- Status monitoring available if desired
64Reliable File TransferThird Party Transfer
- Fire-and-forget transfer
- Web services interface
- Many files directories
- Integrated failure recovery
- Has transferred 900K files
RFT Client
SOAP Messages
Notifications(Optional)
RFT Service
GridFTP Server
GridFTP Server
65Replica Location Service
- Identify location of files via logical to
physical name map - Distributed indexing of names, fault tolerant
update protocols - GT4 version scalable stable
- Managing 40 million files across 10 sites
Index
Index
66OGSA-DAI
- Provide service-based access to structured data
resources as part of Globus - Specify a selection of interfaces tailored to
various styles of data accessstarting with
relational and XML
67OGSA-DAI
- Grid Interfaces to Databases
- Data access
- Relational XML Databases, semi-structured files
- Data integration
- Multiple data delivery mechanisms, data
translation - Extensible Efficient framework
- Request documents contain multiple tasks
- A task execution of an activity
- Group work to enable efficient operation
- Extensible set of activities
- gt 30 predefined, framework for writing your own
- Moves computation to data
- Pipelined and streaming evaluation
- Concurrent task evaluation
68OGSA-DAI A Framework for Building Applications
- Supports data access, insert and update
- Relational MySQL, Oracle, DB2, SQL Server,
Postgres - XML Xindice, eXist
- Files CSV, BinX, EMBL, OMIM, SWISSPROT,
- Supports data delivery
- SOAP over HTTP
- FTP GridFTP
- E-mail
- Inter-service
- Supports data transformation
- XSLT
- ZIP GZIP
- Supports security
- X.509 certificate based security
69OGSA-DAI Other Features
- A framework for building data clients
- Client toolkit library for application developers
- A framework for developing functionality
- Extend existing activities, or implement your own
- Mix and match activities to provide functionality
you need - Highly extensible
- Customise our out-of-the-box product
- Provide your own services, client-side support,
and data-related functionality
70Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
71Monitoring and Discovery System(MDS4)
- Grid-level monitoring system used most often for
resource selection - Aid user/agent to identify host(s) on which to
run an application - Uses standard interfaces to provide publishing of
data, discovery, and data access, including
subscription/notification - WS-ResourceProperties, WS-BaseNotification,
WS-ServiceGroup - Functions as an hourglass to provide a common
interface to lower-level monitoring tools
72Information Users Schedulers, Portals, Warning
Systems, etc.
WS standard interfaces for subscription,
registration, notification
Standard Schemas (GLUE schema, eg)
73MDS4 Components
- Information providers
- Monitoring is a part of every WSRF service
- Non-WS services are also be used
- Higher level services
- Index Service a way to aggregate data
- Trigger Service a way to be notified of changes
- Both built on common aggregator framework
- Clients
- WebMDS
- All of the tool are schema-agnostic, but
interoperability needs a well-understood common
language
74Information Providers
- Data sources for the higher-level services
- Every WS-RF service is an information provider
- Service type, start time, version number
- Most GT4 services have extra data as well
- Other data sources have been made into
information providers - Interfaces to cluster monitoring, queues
- File scraping
- Any executable can be used, just need to produce
a valid XML document
75Cluster Data
- Provide data at the subcluster level
- Sys admin defines a subcluster, we query one node
of it to dynamically retrieve relevant data - Can also list per-host details
- Interfaces to Ganglia, Hawkeye, CluMon, and
Nagios available now - Other cluster monitoring systems can write into a
.html file that we then scrape
76Cluster Info
- UniqueID
- Benchmark/Clock speed
- Processor
- MainMemory
- OperatingSystem
- Architecture
- Number of nodes in a cluster/subcluster
- StorageDevice
- Disk names, mount point, space available
- TG specific Node properties
77Queue Data
- LRMSType
- LRMSVersion
- DefaultGRAMVersion and port and host
- TotalCPUs
- Status (up/down)
- TotalJobs (in the queue)
- RunningJobs
- WaitingJobs
- FreeCPUs
- MaxWallClockTime
- MaxCPUTime
- MaxTotalJobs
- MaxRunningJobs
78MDS4 Index Service
- Index Service is both registry and cache
- Datatype and data provider info, like a registry
(UDDI) - Last value of data, like a cache
- Subscribes to information providers
- In memory default approach
- Can be set up for a site or set of sites, a
specific set of project data, or for
user-specific data only - Can be a multi-rooted hierarchy
79MDS4 Trigger Service
- Subscribe to a set of resource properties
- Evaluate that data against a set of
pre-configured conditions (triggers) - When a condition matches, action occurs
- Email is sent to pre-defined address
- Website updated
- ESG has been using this functionality for the
last 2 years
80How will the data be accessed?
- Java and command line APIs to any Index
- Index stores most recent value with a time to
live (TTL), so fast access - If TTL is out of date, information provider is
queried - You can also set up your own subscription to the
data to receive updates from an information
provider
81WebMDS
- Uses standard resource property queries and XSLT
transforms - Customized pages are simply done by using HTML
form options and creating your own XSLT
transforms
82(No Transcript)
83(No Transcript)
84GT4 Monitoring Discovery
Clients (e.g., WebMDS)
GT4 Container
WS-ServiceGroup
Index
Registration WSRF/WSN Access
adapter
GT4 Cont.
GT4 Container
Index
Index
Custom protocols for non-WSRF entities
Automated registration in container
GridFTP
RFT
GRAM
User
85Globus Toolkit Open Source Grid Infrastructure
Globus Toolkit v4 www.globus.org
Data Replication
Replica Location
Grid Telecontrol Protocol
CredentialMgmt
Data Access Integration
Community Scheduling Framework
Delegation
Python Runtime
WebMDS
Reliable File Transfer
CommunityAuthorization
Trigger
C Runtime
Workspace Management
GridFTP
Authentication Authorization
Grid Resource Allocation Management
Index
Java Runtime
Data Mgmt
Security
CommonRuntime
Execution Mgmt
Info Services
86Testing Overview
- Nightly builds and tests
- TestGrid at USC/ISI
- Stand up services for several weeks
- Perform stress tests
- TestGrid at LBNL
- Focus on WS Core performance and interoperability
tests - Performance and reliability testing is a major
focus - Component-specific approaches mostly
- Calls for Community Testing near release time -
we welcome new testing help!
87Tested Platforms
- Debian
- Fedora Core
- FreeBSD
- HP/UX
- IBM AIX
- Red Hat
- Sun Solaris
- SGI Altix (IA64 running Red Hat)
- SuSE Linux
- Tru64 Unix
- Apple MacOS X (no binaries)
- Windows Java components only
- List of binaries and known platform-specific
install bugs at - http//www.globus.org/toolkit/docs/4.0/admin/
docbook/ ch03.html
88Documentation
- Current document significantly more detailed than
earlier versions - http//www.globus.org/toolkit/docs/4.0/
- Tutorials available for those of you building a
new service - http//www-unix.globus.org/toolkit/tutorials/BAS/
- Globus Toolkit 4 Programming Java Services (The
Morgan Kaufmann Series in Networking), by Borja
Sotomayor, Lisa Childers (Available through
Amazon, 19.99 or 20)
89Installation in a nutshell
- Quickstart guide is very useful
- http//www.globus.org/toolkit/docs/4.0/
admin/docbook/quickstart.html - Verify your prereqs!
- Security check spellings and permissions
- Globus is system software plan accordingly
90Versioning and Support
- Versioning
- Evens are production (4.0.x, 4.2.x),
- Odds are development (4.1.x)
- We support this version and the one previous
- Currently were at 4.0.1 so we support3.2 and
4.0
91Several Possible Next Versions
- 4.0.2 stable release
- 100 same interfaces, bug fixes only
- Expected in 4-8 weeks?
- 4.1 development release
- New functionality
- Expected in 6-10 weeks?
- 4.2 - stable release
- When 4.1 has enough new functionality, and is
stable - 5.0 substantial code base change
- With any luck, not for years )
92The Globus Ecosystem
- Globus components address core issues relating to
resource access, monitoring, discovery, security,
data movement, etc. - GT4 being the latest version
- A larger Globus ecosystem of open source and
proprietary components provide complementary
components - A growing list of components
- These components can be combined to produce
solutions to Grid problems - Were building a list of such solutions
93Many Tools Build on, or Can Contribute to,
GT4-Based Grids
- Condor-G, DAGman
- MPICH-G2
- GRMS
- Nimrod-G
- Ninf-G
- Open Grid Computing Env.
- Commodity Grid Toolkit
- GriPhyN Virtual Data System
- Virtual Data Toolkit
- GridXpert Synergy
- Platform Globus Toolkit
- VOMS
- PERMIS
- GT4IDE
- Sun Grid Engine
- PBS scheduler
- LSF scheduler
- GridBus
- TeraGrid CTSS
- NEES
- IBM Grid Toolbox
-
94GlobalCommunity
95Example Solutions
- Portal-based User Reg. System (PURSE)
- VO Management Registration Service
- Service Monitoring Service
- TeraGrid TGCP Tool
- Lightweight Data Replicator
- GriPhyN Virtual Data System
96The Globus Commitment to Open Source
- Globus was first established as an open source
project in 1996 - The Globus Toolkit is open source to
- allow for inspection
- for consideration in standardization processes
- encourage adoption
- in pursuit of ubiquity and interoperability
- encourage contributions
- harness the expertise of the community
- The Globus Toolkit is distributed under the
(BSD-style) Apache License version 2
97The FutureStructure
- NSF Community Driven Improvement of Globus
Software (CDIGS) project - 5 years of funding for GT enhancement
- Regular Globus roadmaps outlining plans
- GlobDev http//dev.globus.org
- Apache-like community development site
- Community governance of components
- Globus Toolkit other related software
- Open for business early 2006
- Globus Alliance GlobDev committers
98GlobDev
- The current set of Globus components will be
organized into several Globus Projects - Projects release products
- Each project will have its own group of
Committers - Committers are responsible for governance on
matters relating to their products - The Globus Management Committee will
- provide overall guidance and conflict resolution
- approve the creation of new Globus Projects
99The FutureContent
- We now have a solid and extremely powerful Web
services base - Next, we will build an expanded open source Grid
infrastructure - Virtualization
- New services for provisioning, data management,
security, VO management - End-user tools for application development
- Etc., etc.
- And of course responding to user requests for
other short-term needs
100Upcoming Tutorials
- International Summer School for Grid Computing
- July 9-21, 2006
- Terme, Ischia, Italy (near Naples)
- Globus World
- Joint with GGF
- Sept 11-15, DC
- Possibly a EU Globus week?
101General Globus Help and Support
- Globus-discuss list
- discuss_at_globus.org
- http//www.globus.org/subscriptions.php
- Bugzilla
- Bugzilla.globus.org
- Each component also has mailing lists
- -user_at_globus.org for user issues
- -dev_at_globus.org for developer issues
102Credits
- Globus Toolkit v4 is the work of many talented
Globus Alliance members, at - Argonne Natl. Lab U.Chicago
- USC Information Sciences Corporation
- National Center for Supercomputing Applns
- U. Edinburgh
- Swedish PDC
- Univa Corporation
- Other contributors at other institutions
- Supported by DOE, NSF, UK EPSRC, and other sources
103For More Information
- Jennifer Schopf
- jms_at_mcs.anl.gov
- www.mcs.anl.gov/jms
- Globus Alliance
- www.globus.org
- UK ETF GT4 report
- www.nesc.ac.uk/technical_papers/
- UKeS-2005-03.pdf
- GlobusWORLD 2006
- September 10-14
- Washington, D.C.