SlideShare a Scribd company logo
1 of 81
Download to read offline
(Or: What do Wombats and Grid have
in common?)
UK OGSA Evaluation Project
(UCL, Imperial, Newcastle,
Edinburgh)
UCL Project Members: Paul Brebner,
Wolfgang Emmerich
University College London
P.Brebner@cs.ucl.ac.uk
Grid Middleware – Principles, Practice and Potential
What do Wombats and Grid have in common?
A They are secretive and misunderstood creatures?
B They live in complex underground burrows?
C You wouldn’t want to meet one in a confined
space in the dark?
D All of the above?
?
Grid – Abstract
• Principles
– What are the principles of Grid middleware?
• Practice (and pitfalls)
– How easy is it to use in practice? What are the pitfalls?
• Potential
– What potential does Grid middleware have to
• (1) provide insight into different ways of using Service
Oriented Architectures, and
• (2) support automatic deployment and debugging?
Grid – Principles
• Principles
– What are the principles of Grid middleware?
• Practice (and pitfalls)
– How easy is it to use in practice? What are the pitfalls?
• Potential
– What potential does Grid middleware have to
• (1) provide insight into different ways of using Service
Oriented Architectures, and
• (2) support automatic deployment and debugging?
Grid Principles – cluster, enterprise, internet
Grid Principles – Grid vs Enterprise
• What’s the difference between Grid and
Enterprise? (Typical generalisations…)
• Grid
– Crosses firewalls and organisational boundaries
– Resource and code focussed
• scientist has some code, and wants to execute it on as many
resources as possible, to solve ever bigger problems
– Developer, deployer and user may be the same person
Grid Principles – Grid
Code
New
Data
Data
User wants: Infinite resources, scalability, monitoring
Code
Data
Organisations want:
Fair sharing,
ease of maintenance?
Grid Principles – Grid vs Enterprise
• Enterprise
– Code developed, deployed and maintained by
enterprises behind firewall
– Exposed as web services for intra and inter
organisational interoperability
– Users don’t develop or deploy code
Grid Principles – Enterprise
User wants:
Response time,
availability
Query or
Transaction
Response
Service developer
Enterprise wants:
Interoperability,
scalability,
security
Grid Principles – Grid vs Enterprise
• Grid (User view)
– I have some code, make it run fast for me.
– Concerns: Finding resources, platform portability,
deploying, running and monitoring “jobs”, security,
data management.
• Enterprise (Enterprise owner view)
– I have some business logic exposed as Web service –
ensure internal and external users get required QoS.
– Concerns: QoS, interoperability, transactional,
performance/scalability, security, multiple applications
sharing services.
Grid Principles – Just another component model?
• Inspight of these differences, they have something
in common
• OGSI has J2EE origins
– “What does it mean to ship a J2EE-based Grid environment,
something that can deliver OGSI-compliant services? It means that
you provide a server programming environment that makes it very
easy for service writers to implement services that conform to the
set of standards that are OGSI.”
– Containers, lifecycle management
– Goal: Easy to write services and interoperability at
interface level
Grid Principles – OGSA vs OGSI
Grid Principles – OGSA without OGSI
Grid Principles – OGSA and ?
?
Grid Principles - Architecture
J2EE – n-tiered architecture
Grid Principles - Architecture
OGSA – semi-layered, or “sum of services”
Grid Principles - Architecture
GT3 – (core) server side components
Grid Principles – OGSA Services
• Infrastructure services
• Execution Management services
• Data Services
• Resource Management Services
• Security Services
• Self-Management Services
• Information Services
Grid Principles – J2EE cf OGSI
Feature J2EE OGSI
Containers Multiple (4) One
Components Multiple One (+inheritance)
Roles Explicit Implicit
Implementations Many 1-2 (sort of)
Component
purpose
Presentation/Business
logic/persistence
High-level grid
services
Grid Principles - State
• Treatment of stateful instances?
– J2EE has stateful session and entity beans
• CMP Entity beans: lifecycle management
(passivation/activation/pooling), caching, and automatic
persistence support
• Typically accessed via Stateless Session Beans or MDBs
– GT3 has stateful instances (created by Factories)
• Accessed via SOAP and handles
• No automatic passivation/activation or persistence
Grid Principles - Roles
• J2EE
– Component developer
– Application assembler
– Deployer
– System Administrator
• Not to mention product and tool providers, system architect,
and database designer and administrator, etc
• Many products provide distributed/remote tool
support
Grid Principles - Roles
• Grid?
– Increasing number of roles in practice
– But, no explicit definition of Grid roles, and
– Poor tool support for cross-organisational
support of roles
Grid Principles - Deployment
• Treatment of deployment?
– J2EE has explicit deployment role, and
typically good tool support for remote
deployment
– Support for product independent deployment
(JSR-88 since J2EE 1.4)
– GT3 has built-in support for remote
“code/executable” deployment (staging), but
none for remote “service” deployment
Grid Principles – Confusion/alternatives
• How is Globus intended to be used?
– 1: Science as first-order services
• Middleware for building and hosting Grid
Applications, by exposing science code as Grid
services.
– 2: High-level grid services
• Middleware for building a set of high level Grid
services, composed to provide new Grid
functionality. Science isn’t first-order service, but
executed and managed by Grid services.
Grid Principles – Science services or Grid services
Client
E=mc2
1
Science services:
Directly callable, described
Grid Principles – Science services or Grid services
Client
E=mc2
1
D=A+2B+C2
Science services:
Directly callable, described
Grid Principles – Science services or Grid services
Client
2
D=A+2B+C2
E = mc2
E=mc2
1
D=A+2B+C2
Data
Execution
Science services:
Directly callable, described
discoverable
Science: Indirectly callable, not
directly described or discoverable
Grid – Practice
• Principles
– What are the principles of Grid middleware?
• Practice (and pitfalls)
– How easy is it to use in practice? What are the pitfalls?
• Potential
– What potential does Grid middleware have to
• (1) provide insight into different ways of using Service
Oriented Architectures, and
• (2) support automatic deployment and debugging?
Grid Practice – What to evaluate?
• OGSA > OGSI > GT3.2 – Grid SOA exemplar
– Initially evaluate installation, configuration, and
security
– Then performance and scalability, deployment,
architectural choices, etc.
• What’s the point? What are we trying to learn?
– What are some of the s/w engineering and architectural
issues surrounding Grid infrastructure? Across
organisational boundaries?
– What improvements are required before it is suitable
for production environments?
Grid Practice –”Realistic” test-bed
• Heterogeneous platforms
– Linux, Solaris, Windows
• Cross-organisational
– Four nodes
– Independently administered
– Firewalls and access restrictions
• Security
– UK e-Science CA
Grid Practice – Incremental
• Start with Core Package (Just container and basic
services – e.g. container registry service)
• Add Security
• Then try “All Services”
• Simple enough – in theory
– Relationship between packages not well understood
– Java and non-Java components
– Poor integration between some parts
Grid Practice – single node
Install
OS/HW
GT3
Install
Grid Practice – single node
Install
Configure
OS/HW
GT3
Install
Grid Practice – single node
Install
Configure
Deploy
OS/HW
GT3
Install
Grid Practice – single node
Install
Configure
Deploy
Run
OS/HW
GT3
Install
Grid Practice – Multiple sites
GT3
Grid Practice – Multiple sites
GT3 GT3 GT3 GT3
Grid Practice – Multiple sites
GT3 GT3 GT3 GT3
Interoperate
Grid Practice – Multiple sites
GT3 GT3 GT3 GT3
Interoperate
GT3 GT3
Secure
Grid Practice – Multiple sites
GT3 GT3 GT3 GT3
Interoperate
GT3 GT3
Secure
Manage
Grid Practice – What we found
• Port number management (conflicts, discovery)
• Host access (requirements and site policies)
• Remote visibility of installation, container,
services (what, configuration, version)
• Installation by System Administrators (role
division, extra effort)
• Tomcat or Test container (different configuration)
• Linux is the only well supported platform
• Exponential increase in testing complexity as
number of nodes increases.
Grid Practice – Security
• Grid Security Infrastructure (GSI)
– X.509 certificates
– Mutual authentication (client/host)
– Proxy certificates (delegation and single sign-on)
• Authentication (Who are you?)
– Secure Message (Basic)
– Secure Conversation
• Signing or Encryption (prevent unauthorised altering/reading)
• Authorisation (Who is authorised to use container,
factory, service, method)
– Gridmap file (Access Control List – maps Grid to Local
identifies)
Grid Practice – Security
• In theory just have to
– obtain (and update) host, client, and CA certificates
– convert
– install
– configure (server, client side, container, services, etc)
– generate (and update) proxies.
• However, parts of “All Services” package also
needed.
Grid Practice – Security
• Interactions between security for multiple
installations
• Essential to test non-secure interoperability first
• Windows client-side security
• Testing and viewing security configuration
• Debugging secure calls
• Client side security is programmatic
• Security management scalability
– Construction and maintenance of user accounts and
grid-map file entries.
Grid Practice – Security
• Interactions between security for multiple
installations
– For testing may want
• multiple versions, or duplicates (with different
configurations) of same versions.
• One container with no security, and another
container with security
– May want test/production environments
Grid Practice – Security
• Essential to test non-secure interoperability
first
– Trying to test interoperability and security
simultaneously wasn’t fun
Grid Practice – Security
• Windows client-side security
– Not obvious exactly what parts of Globus are
needed for client side code with security (no
“client side + security” package).
Grid Practice – Security
• Testing and viewing security configuration
– View/edit and check security configuration for
containers and services
– Confusion about hierarchical security settings
• Virtual Organisations, clusters, servers, containers,
factories, services, methods, and instances.
– Remotely
– Validate security deployment before run-time
Grid Practice – Security
• Debugging secure calls (or any stateful service)
– Proxy interceptor approach (e.g. TCPMON) won’t
work with stateful services
• As grid handle returned to client contains the port number of
the instance, not the proxy
– But proxies are an important design pattern for SOAs…
– GT4/WS-RF may be different
• Handle resolvers, WS-Addressing and WS-
RenewableReferences
Grid Practice – Security
• Client side security is programmatic
– Client side code modifications required to call
services/methods with required protocols
– Should be declarative
– Sensitive to server side security credentials
Grid Practice – Security
• Security management scalability
– Construction and maintenance of user accounts and grid-map file
entries.
– For each server, each user needs an account, and an entry in the
container gridmap file (mapping client certificate to account)
– May also need service specific gridmap files
– Not scalable for large numbers of users, servers, services.
– Revocation of certificates, host certificate expiry problem
• Alternatives?
– Tool support
– Role based authentication
– Shared accounts or certificates (probably evil)
Grid Practice - Performance
• First approach (initial results)
– Scientific benchmark (SciMark2.0) modified to
measure throughput, and invoked as a Stateful Grid
Service
– Metric is Calls Per Minute (CPM) – one unit of work.
– No large-scale data movement, just SOAP parameters
and result, and computation/memory load.
• Good performance and scalability
– Minimal overhead cf standalone benchark
– Security has minimal overhead
– Sustained 4200 “jobs” an hour throughput
– Problem with client side timeouts as response times
increase
Grid Practice - Performance
ART (s)
0
50
100
150
200
0 10 20 30 40 50 60 70
Threads
Time(s)
UCL (4 cpu Sun)
Newcastle (2 cpu Intel)
Imperial (2 cpu Intel)
Edinburgh (4 hyperthread cpu Intel)
All
Tomcat
Fastest: 3.6s (Edinburgh)
Slowest: 25s (UCL)
Grid Practice - Performance
Throughput (CPM)
0
10
20
30
40
50
60
70
80
0 20 40 60 80
Threads
CPM
UCL (4 cpu Sun)
Newcastle (2 cpu Intel)
Imperial (2 cpu intel)
Edinburgh (4 hyperthread cpu Intel)
All (12 cpus)
Theoretical Maximum
95% of predicted maximum throughput
Grid Practice - Performance
• Tomcat vs Test container
– No difference on 3 out of 4 nodes
– But 67% faster on one node (Newcastle, slowest Intel
box)
• Attachments will work with GT3 and Tomcat
– But not with security
– Limit of 1GB (DIME)
– Bug in Axis – doesn’t clean up temporary files.
Grid Practice - Performance
• Stateful instances visible externally can be
problematic
– Intermittent unreliability
• On some runs, 1 exception in 300 calls (reliability of .9967)
– But non-repeatable, SOAP/network related?
• What is the safe response to exceptions? Can’t just retry.
– Possible to kill container (relies on clients being well
behaved):
• By invoking same instance/method more than once.
• By consuming container resources
– But instances can be passivated/activated in theory
– Could be used to enable fine-grain (per instance) control over
resource usage.
Grid Practice - Pitfalls
• Production quality Grid middleware needs
(“What this bike needs is …”)
• Support for
– Remote
– location independent
– cross-organisational
– multiple role scenarios
– Such as…
Grid Practice - Pitfalls (continued)
– Platform independent, automatic, installation.
– Tool support for configuration and deployment
creation, validation, viewing and editing.
– Management console for grid, nodes, globus packages,
containers and services.
– Remote deployment and management of services.
– Remote distributed debugging of grid installations,
services, and applications.
– Tool support, and more scalable processes for security.
Grid – Potential
• Principles
– What are the principles of Grid middleware?
• Practice (and pitfalls)
– How easy is it to use in practice? What are the pitfalls?
• Potential
– What potential does Grid middleware have to
• (1) provide insight into different ways of using Service
Oriented Architectures, and
• (2) support automatic deployment and debugging?
Grid Potential – Architectural alternatives
• Evaluate the two approaches in more detail
– Science exposed as services, vs science code managed
by higher level grid services.
• Explore alternative mechanisms for:
– Executing science code
– Load balancing and scheduling/resource management
– Directory services (service and resource discovery)
– Data movement (e.g. SOAP Attachments vs GridFTP)
Grid Potential – Architectural evaluation
• Evaluation approach
– Loosely based on ATAM + mechanisms
– Clarify the role of different GT3 mechanisms,
and quantify pros/cons
– Two versions of application
– Evaluate with
• Architecture
• Roles
• Scenarios (to quantify quality attributes)
Grid Potential – Architectural evaluation
• Pick a number of roles of interest
– Define attributes of interest, and scenarios to exercise
and measure them
• Deployment
– Consistency of deployment, and time to deploy
• Debugging
– Ability to locate root cause of problem and rectify
• Security admin
– Cost/time to secure increasing number of clients/nodes
• Grid owner
– Scalability and ease of management
Grid Potential – Architectural evaluation
• Hypothesis
– Both approaches to using Grid are identical
– But won’t be surprised by some differences – e.g.
scalability, discovery, deployment
• Problems with
– MDS3 (Directory and resource discovery service)
working with aggregated service data across sites
– GridFTP
– Wrapping Science code with MMJFS
Grid Potential - Deployment
• How to install and configure Grid infrastructure
and services - scalably and securely?
• Install GT3 infrastructure and security manually
– MMJFS allows executable code to be staged
automatically (But not services - could provide a
deployment service).
• Install bootstrapping code, and then install and
deploy all other code and security automatically.
– Using SmartFrog (HP) in the lab, and then test-bed.
– Firewalls, platform specific configurations, user sand-
boxing, configuring GT3 security remotely, and “trust”
with System Administrators are open issues.
Grid Potential – Deployment Speculation
• Explicit deployment-flows?
– In Enterprise applications are increasingly represented
as work-flows.
• Good for distributed execution, and comprehensibility.
– What if deployment plans are also represented
explicitly as flows (deployment-flows)?
– Some work on work-flow aware resource management
(for Grid).
– Deployment-flows could even be auto-magically
generated from work-flows, and executed to ensure
resources are deployed correctly JIT for work-flow
execution.
Grid Potential – Deployment Speculation
• For example:
– Work-flow with two tasks
• 1st task requires 10 nodes, 2nd task 100 nodes.
– Produce deployment-flow which is interleaved
with work-flow to:
• Deploy 1st service for first task to 10, and start
execution
• Deploy 2nd service to 100 nodes concurrent with
execution of 1st task, and ready for execution of 2nd.
Grid Potential – Deployment Speculation
T1 x 10
T2 x 100
Execute T1 Execute T2
S1S1S1S1S1S1S1
Deploy S1 x 10
S1S1S1S1S1S1S2
Deploy S2 x 100
Could also include
un-deploymentS2S2S2S2S2
Grid Potential - Deployment + Debugging
• Debugging distributed systems is tricky
– Need better support for cross-cutting non-functional concerns such
as deployment and debugging.
– (One) problem with debugging services is not knowing the context
of errors (to aid diagnosis or cure) – a service is just a black box
with an interface.
• Deployment aware debugging:
– Starting from functional work-flows, generate deployment-flows,
which are executed prior to, or concurrent with, functional work-
flows.
• This ensures that deployment is done consistently and automatically
with respect to application execution.
– If failure in functional work-flow, then corresponding deployment-
flow is examined to determine likely causes, and parts are re-
executed.
– Failure in deployment-flow can also possibly be managed.
Grid Potential - Deployment + Debugging
• Three phases of Debugging
• Debug deployment
– Relies on deployment infrastructure and deployment-flows
– What works locally or on one node may not work remotely, or identically
on all nodes without modification, and deployment framework itself may
be an extra cause of failure
• Debug/trace application + infrastructure to get working initially
– Relies on visibility/transparency of deployed and running infrastructure
and application
– Ideally want integrated (active), or at least proxy/sniffer (passive),
debugging (profiling, tracing, stepping) support.
• Debug working application upon failure
– But multiple failure modes
– Has application + infrastructure been analysed and/or tested for them all?
– Can diagnosis and rectification be done anyway?
Grid Potential - Deployment + Debugging
• Backtrack through deployment steps (Like peeling an onion)
– Some steps will need to be reversed, and then redone correctly
– Manage dependent, redundant, and inconsistent operations
• This approach may fix an (interesting) sub-class of problems:
• Those which can be fixed by simply redoing (or replicating) (part of) the
installation, E.g.
– Intermittent failure of container or services
– Resource starvation or overload – deploy services to more resources
• Security problems that can be fixed with reconfiguration or refresh of
certificates/proxies.
– But not:
• network, or all configuration and security/access problems.
• Or “Enterprise Web services” (from a user perspective, as users can’t
deploy)
Grid Potential - Deployment + Debugging
T1 x 10
Failure!
Execute T1 Execute T2
S1S1S1S1S1S1S1
Deploy S1 x 10
S1S1S1S1S1S1S2
Deploy S2 x 100
S2S2S2S2 S2
Redploy S2 on
failed node
?
Grid Potential - Deployment + Debugging
• What’s still needed?
– Connection between executing client code and
deployment infrastructure
– Ability to reason about relationship between work-
flow/client failures, deployment-flows and grid
infrastructure, diagnose failure causes, and plan solutions
– Ideally want applications and deployment represented
explicitly as flows – work and deployment flows.
– Could possibly infer work-flow and therefore
deployment-flow from running system in the absence of
explicit information?
– Justification – is the problem significant, and how far does
this solution go?
UK OGSA Evaluation Project
• Thank you J
• Email: P.Brebner@cs.ucl.ac.uk
– After November: Paul.Brebner@csiro.au
UK OGSA Evaluation Project
• Thank you J
• Email: P.Brebner@cs.ucl.ac.uk
– After November: Paul.Brebner@csiro.au
• Not
UK OGSA Evaluation Project
• Thank you J
• Email: P.Brebner@cs.ucl.ac.uk
– After November: Paul.Brebner@csiro.au
• Not (quite)
UK OGSA Evaluation Project
• Thank you J
• Email: P.Brebner@cs.ucl.ac.uk
– After November: Paul.Brebner@csiro.au
• Not (quite) the
UK OGSA Evaluation Project
• Thank you J
• Email: P.Brebner@cs.ucl.ac.uk
– After November: Paul.Brebner@csiro.au
• Not (quite) the End
UK OGSA Evaluation Project
• Thank you J
• Email: P.Brebner@cs.ucl.ac.uk
– After November: Paul.Brebner@csiro.au
• Not (quite) the End…
Postscript – The Secret Life of Grid?
Our experiences Evaluating Grid technology reminds me of an
Australian book (“The Secret Life of Wombats”) about a school boy
who used to sneak out of his dormitory after everyone was asleep to go
“wombatting”. He spent his nights secretly crawling down Wombat
burrows with a flashlight – a potentially lethal activity (not just from
cave-ins, as wombats are ferocious when cornered!) – and wrote
copious notes resulting in a substantial increase in knowledge of these
“mysterious and often misunderstood creatures”.
Postscript – The Secret Life of Grid?
Our experiences Evaluating Grid technology reminds me of an
Australian book (“The Secret Life of Wombats”) about a school boy
who used to sneak out of his dormitory after everyone was asleep to go
“wombatting”. He spent his nights secretly crawling down Wombat
burrows with a flashlight – a potentially lethal activity (not just from
cave-ins, as wombats are ferocious when cornered!) – and wrote
copious notes resulting in a substantial increase in knowledge of these
“mysterious and often misunderstood creatures”.
UK OGSA Evaluation Project Report 1.0
Evaluation of Globus Toolkit 3.2 (GT3.2)
Installation
http://sse.cs.ucl.ac.uk/UK-OGSA/Report1.doc
Postscript – The Secret Life of Grid?
Our experiences evaluating grid technology reminds me of an
Australian book (“The Secret Life of Wombats”) about a school boy
who used to sneak out of his dormitory after everyone was asleep to go
“wombatting”. He spent his nights secretly crawling down Wombat
burrows with a flashlight – a potentially lethal activity (not just from
cave-ins, as wombats are ferocious when cornered!) – and wrote
copious notes resulting in a substantial increase in knowledge of these
“mysterious and often misunderstood creatures”.
UK OGSA Evaluation Project Report 1.0
Evaluation of Globus Toolkit 3.2 (GT3.2)
Installation
http://sse.cs.ucl.ac.uk/UK-OGSA/Report1.doc

More Related Content

What's hot

DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...Cisco DevNet
 
Real-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Real-Time Log Analysis with Apache Mesos, Kafka and CassandraReal-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Real-Time Log Analysis with Apache Mesos, Kafka and CassandraJoe Stein
 
Monitoring MySQL at scale
Monitoring MySQL at scaleMonitoring MySQL at scale
Monitoring MySQL at scaleOvais Tariq
 
CERN IT Monitoring
CERN IT Monitoring CERN IT Monitoring
CERN IT Monitoring Tim Bell
 
Event Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache KafkaEvent Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache KafkaDataWorks Summit
 
Keep your Hadoop cluster at its best!
Keep your Hadoop cluster at its best!Keep your Hadoop cluster at its best!
Keep your Hadoop cluster at its best!Sheetal Dolas
 
Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017Dave Holland
 
Bringing complex event processing to Spark streaming
Bringing complex event processing to Spark streamingBringing complex event processing to Spark streaming
Bringing complex event processing to Spark streamingDataWorks Summit
 
Design Patterns For Real Time Streaming Data Analytics
Design Patterns For Real Time Streaming Data AnalyticsDesign Patterns For Real Time Streaming Data Analytics
Design Patterns For Real Time Streaming Data AnalyticsDataWorks Summit
 
Real Time Data Processing Using Spark Streaming
Real Time Data Processing Using Spark StreamingReal Time Data Processing Using Spark Streaming
Real Time Data Processing Using Spark StreamingHari Shreedharan
 
Experience with Kafka & Storm
Experience with Kafka & StormExperience with Kafka & Storm
Experience with Kafka & StormOtto Mok
 
Docker in Open Science Data Analysis Challenges by Bruce Hoff
Docker in Open Science Data Analysis Challenges by Bruce HoffDocker in Open Science Data Analysis Challenges by Bruce Hoff
Docker in Open Science Data Analysis Challenges by Bruce HoffDocker, Inc.
 
Detecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking DataDetecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking DataDataWorks Summit
 
RENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hair
RENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hairRENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hair
RENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hairJohn Constable
 
Elastic Data Analytics Platform @Datadog
Elastic Data Analytics Platform @DatadogElastic Data Analytics Platform @Datadog
Elastic Data Analytics Platform @DatadogC4Media
 
Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...
Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...
Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...InfluxData
 
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
 The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a... The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...Big Data Spain
 

What's hot (20)

DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...DEVNET-1140	InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
DEVNET-1140 InterCloud Mapreduce and Spark Workload Migration and Sharing: Fi...
 
Flexible compute
Flexible computeFlexible compute
Flexible compute
 
Real-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Real-Time Log Analysis with Apache Mesos, Kafka and CassandraReal-Time Log Analysis with Apache Mesos, Kafka and Cassandra
Real-Time Log Analysis with Apache Mesos, Kafka and Cassandra
 
Monitoring MySQL at scale
Monitoring MySQL at scaleMonitoring MySQL at scale
Monitoring MySQL at scale
 
CERN IT Monitoring
CERN IT Monitoring CERN IT Monitoring
CERN IT Monitoring
 
Event Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache KafkaEvent Detection Pipelines with Apache Kafka
Event Detection Pipelines with Apache Kafka
 
Keep your Hadoop cluster at its best!
Keep your Hadoop cluster at its best!Keep your Hadoop cluster at its best!
Keep your Hadoop cluster at its best!
 
Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017Sanger OpenStack presentation March 2017
Sanger OpenStack presentation March 2017
 
Bringing complex event processing to Spark streaming
Bringing complex event processing to Spark streamingBringing complex event processing to Spark streaming
Bringing complex event processing to Spark streaming
 
Design Patterns For Real Time Streaming Data Analytics
Design Patterns For Real Time Streaming Data AnalyticsDesign Patterns For Real Time Streaming Data Analytics
Design Patterns For Real Time Streaming Data Analytics
 
Real Time Data Processing Using Spark Streaming
Real Time Data Processing Using Spark StreamingReal Time Data Processing Using Spark Streaming
Real Time Data Processing Using Spark Streaming
 
Experience with Kafka & Storm
Experience with Kafka & StormExperience with Kafka & Storm
Experience with Kafka & Storm
 
Docker in Open Science Data Analysis Challenges by Bruce Hoff
Docker in Open Science Data Analysis Challenges by Bruce HoffDocker in Open Science Data Analysis Challenges by Bruce Hoff
Docker in Open Science Data Analysis Challenges by Bruce Hoff
 
Detecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking DataDetecting Hacks: Anomaly Detection on Networking Data
Detecting Hacks: Anomaly Detection on Networking Data
 
Apache Deep Learning 201
Apache Deep Learning 201Apache Deep Learning 201
Apache Deep Learning 201
 
RENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hair
RENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hairRENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hair
RENCI User Group Meeting 2017 - I Upgraded iRODS and I still have all my hair
 
Elastic Data Analytics Platform @Datadog
Elastic Data Analytics Platform @DatadogElastic Data Analytics Platform @Datadog
Elastic Data Analytics Platform @Datadog
 
Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...
Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...
Paul Dix [InfluxData] | InfluxDays Opening Keynote | InfluxDays Virtual Exper...
 
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
 The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a... The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
The Analytic Platform behind IBM’s Watson Data Platform by Luciano Resende a...
 
Druid deep dive
Druid deep diveDruid deep dive
Druid deep dive
 

Similar to Grid Middleware – Principles, Practice and Potential

DCEU 18: From Monolith to Microservices
DCEU 18: From Monolith to MicroservicesDCEU 18: From Monolith to Microservices
DCEU 18: From Monolith to MicroservicesDocker, Inc.
 
Winning Governance Strategies for the Technology Disruptions of our Time
Winning Governance Strategies for the Technology Disruptions of our TimeWinning Governance Strategies for the Technology Disruptions of our Time
Winning Governance Strategies for the Technology Disruptions of our TimeCloudHesive
 
Internet of Things Environment for Service Creation and Testing (IoT.est)
Internet of Things Environment for Service Creation and Testing (IoT.est)Internet of Things Environment for Service Creation and Testing (IoT.est)
Internet of Things Environment for Service Creation and Testing (IoT.est)iotest
 
CASE STUDY: UK NATIONAL HEALTH SERVICE
CASE STUDY: UK NATIONAL HEALTH SERVICECASE STUDY: UK NATIONAL HEALTH SERVICE
CASE STUDY: UK NATIONAL HEALTH SERVICEForgeRock
 
Regulated Reactive - Security Considerations for Building Reactive Systems in...
Regulated Reactive - Security Considerations for Building Reactive Systems in...Regulated Reactive - Security Considerations for Building Reactive Systems in...
Regulated Reactive - Security Considerations for Building Reactive Systems in...Ryan Hodgin
 
Software Architecture
Software ArchitectureSoftware Architecture
Software ArchitectureAhmed Misbah
 
Monitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In AzureMonitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In AzureAlex Bulankou
 
110307 cloud security requirements gourley
110307 cloud security requirements gourley110307 cloud security requirements gourley
110307 cloud security requirements gourleyGovCloud Network
 
gkkCloudtechnologyassociate(cta)day 2
gkkCloudtechnologyassociate(cta)day 2gkkCloudtechnologyassociate(cta)day 2
gkkCloudtechnologyassociate(cta)day 2Anne Starr
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithMarkus Eisele
 
Declare Victory with Big Data
Declare Victory with Big DataDeclare Victory with Big Data
Declare Victory with Big DataJ On The Beach
 
Improving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNetImproving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNetVenkat Janardhanam, MS, MBA
 
SNIA : Swift Object Storage adding EC (Erasure Code)
SNIA : Swift Object Storage adding EC (Erasure Code)SNIA : Swift Object Storage adding EC (Erasure Code)
SNIA : Swift Object Storage adding EC (Erasure Code)Odinot Stanislas
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureEngin Yoeyen
 
Decision Matrix for IoT Product Development
Decision Matrix for IoT Product DevelopmentDecision Matrix for IoT Product Development
Decision Matrix for IoT Product DevelopmentAlexey Pyshkin
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?NGINX, Inc.
 

Similar to Grid Middleware – Principles, Practice and Potential (20)

DCEU 18: From Monolith to Microservices
DCEU 18: From Monolith to MicroservicesDCEU 18: From Monolith to Microservices
DCEU 18: From Monolith to Microservices
 
Interactive SDLC
Interactive SDLCInteractive SDLC
Interactive SDLC
 
Winning Governance Strategies for the Technology Disruptions of our Time
Winning Governance Strategies for the Technology Disruptions of our TimeWinning Governance Strategies for the Technology Disruptions of our Time
Winning Governance Strategies for the Technology Disruptions of our Time
 
Azaz_Sharepoint & Security_Admin
Azaz_Sharepoint & Security_AdminAzaz_Sharepoint & Security_Admin
Azaz_Sharepoint & Security_Admin
 
Internet of Things Environment for Service Creation and Testing (IoT.est)
Internet of Things Environment for Service Creation and Testing (IoT.est)Internet of Things Environment for Service Creation and Testing (IoT.est)
Internet of Things Environment for Service Creation and Testing (IoT.est)
 
CASE STUDY: UK NATIONAL HEALTH SERVICE
CASE STUDY: UK NATIONAL HEALTH SERVICECASE STUDY: UK NATIONAL HEALTH SERVICE
CASE STUDY: UK NATIONAL HEALTH SERVICE
 
Regulated Reactive - Security Considerations for Building Reactive Systems in...
Regulated Reactive - Security Considerations for Building Reactive Systems in...Regulated Reactive - Security Considerations for Building Reactive Systems in...
Regulated Reactive - Security Considerations for Building Reactive Systems in...
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Monitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In AzureMonitoring Containerized Micro-Services In Azure
Monitoring Containerized Micro-Services In Azure
 
110307 cloud security requirements gourley
110307 cloud security requirements gourley110307 cloud security requirements gourley
110307 cloud security requirements gourley
 
gkkCloudtechnologyassociate(cta)day 2
gkkCloudtechnologyassociate(cta)day 2gkkCloudtechnologyassociate(cta)day 2
gkkCloudtechnologyassociate(cta)day 2
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
Declare Victory with Big Data
Declare Victory with Big DataDeclare Victory with Big Data
Declare Victory with Big Data
 
Improving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNetImproving Quality through Continuous Integration - A case study of CollabNet
Improving Quality through Continuous Integration - A case study of CollabNet
 
Security on AWS
Security on AWSSecurity on AWS
Security on AWS
 
Cloud application security (CCSP Domain 4)
Cloud application security (CCSP Domain 4)Cloud application security (CCSP Domain 4)
Cloud application security (CCSP Domain 4)
 
SNIA : Swift Object Storage adding EC (Erasure Code)
SNIA : Swift Object Storage adding EC (Erasure Code)SNIA : Swift Object Storage adding EC (Erasure Code)
SNIA : Swift Object Storage adding EC (Erasure Code)
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Decision Matrix for IoT Product Development
Decision Matrix for IoT Product DevelopmentDecision Matrix for IoT Product Development
Decision Matrix for IoT Product Development
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?
 

More from Paul Brebner

The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
The Impact of Hardware and Software Version Changes on Apache Kafka Performan...The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
The Impact of Hardware and Software Version Changes on Apache Kafka Performan...Paul Brebner
 
Apache ZooKeeper and Apache Curator: Meet the Dining Philosophers
Apache ZooKeeper and Apache Curator: Meet the Dining PhilosophersApache ZooKeeper and Apache Curator: Meet the Dining Philosophers
Apache ZooKeeper and Apache Curator: Meet the Dining PhilosophersPaul Brebner
 
Spinning your Drones with Cadence Workflows and Apache Kafka
Spinning your Drones with Cadence Workflows and Apache KafkaSpinning your Drones with Cadence Workflows and Apache Kafka
Spinning your Drones with Cadence Workflows and Apache KafkaPaul Brebner
 
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...Paul Brebner
 
Scaling Open Source Big Data Cloud Applications is Easy/Hard
Scaling Open Source Big Data Cloud Applications is Easy/HardScaling Open Source Big Data Cloud Applications is Easy/Hard
Scaling Open Source Big Data Cloud Applications is Easy/HardPaul Brebner
 
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/HardOPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/HardPaul Brebner
 
A Visual Introduction to Apache Kafka
A Visual Introduction to Apache KafkaA Visual Introduction to Apache Kafka
A Visual Introduction to Apache KafkaPaul Brebner
 
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...Paul Brebner
 
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...Paul Brebner
 
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...Paul Brebner
 
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...Paul Brebner
 
0b101000 years of computing: a personal timeline - decade "0", the 1980's
0b101000 years of computing: a personal timeline - decade "0", the 1980's0b101000 years of computing: a personal timeline - decade "0", the 1980's
0b101000 years of computing: a personal timeline - decade "0", the 1980'sPaul Brebner
 
ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...
ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...
ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...Paul Brebner
 
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...Paul Brebner
 
ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...
ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...
ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...Paul Brebner
 
How to Improve the Observability of Apache Cassandra and Kafka applications...
How to Improve the Observability of Apache Cassandra and Kafka applications...How to Improve the Observability of Apache Cassandra and Kafka applications...
How to Improve the Observability of Apache Cassandra and Kafka applications...Paul Brebner
 
A visual introduction to Apache Kafka
A visual introduction to Apache KafkaA visual introduction to Apache Kafka
A visual introduction to Apache KafkaPaul Brebner
 
Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...Paul Brebner
 
Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...Paul Brebner
 
Introduction to programming class 13
Introduction to programming   class 13Introduction to programming   class 13
Introduction to programming class 13Paul Brebner
 

More from Paul Brebner (20)

The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
The Impact of Hardware and Software Version Changes on Apache Kafka Performan...The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
The Impact of Hardware and Software Version Changes on Apache Kafka Performan...
 
Apache ZooKeeper and Apache Curator: Meet the Dining Philosophers
Apache ZooKeeper and Apache Curator: Meet the Dining PhilosophersApache ZooKeeper and Apache Curator: Meet the Dining Philosophers
Apache ZooKeeper and Apache Curator: Meet the Dining Philosophers
 
Spinning your Drones with Cadence Workflows and Apache Kafka
Spinning your Drones with Cadence Workflows and Apache KafkaSpinning your Drones with Cadence Workflows and Apache Kafka
Spinning your Drones with Cadence Workflows and Apache Kafka
 
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
Change Data Capture (CDC) With Kafka Connect® and the Debezium PostgreSQL Sou...
 
Scaling Open Source Big Data Cloud Applications is Easy/Hard
Scaling Open Source Big Data Cloud Applications is Easy/HardScaling Open Source Big Data Cloud Applications is Easy/Hard
Scaling Open Source Big Data Cloud Applications is Easy/Hard
 
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/HardOPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
OPEN Talk: Scaling Open Source Big Data Cloud Applications is Easy/Hard
 
A Visual Introduction to Apache Kafka
A Visual Introduction to Apache KafkaA Visual Introduction to Apache Kafka
A Visual Introduction to Apache Kafka
 
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
Massively Scalable Real-time Geospatial Anomaly Detection with Apache Kafka a...
 
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
Building a real-time data processing pipeline using Apache Kafka, Kafka Conne...
 
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
 
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
Massively Scalable Real-time Geospatial Data Processing with Apache Kafka and...
 
0b101000 years of computing: a personal timeline - decade "0", the 1980's
0b101000 years of computing: a personal timeline - decade "0", the 1980's0b101000 years of computing: a personal timeline - decade "0", the 1980's
0b101000 years of computing: a personal timeline - decade "0", the 1980's
 
ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...
ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...
ApacheCon Berlin 2019: Kongo:Building a Scalable Streaming IoT Application us...
 
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
 
ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...
ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...
ApacheCon2019 Talk: Improving the Observability of Cassandra, Kafka and Kuber...
 
How to Improve the Observability of Apache Cassandra and Kafka applications...
How to Improve the Observability of Apache Cassandra and Kafka applications...How to Improve the Observability of Apache Cassandra and Kafka applications...
How to Improve the Observability of Apache Cassandra and Kafka applications...
 
A visual introduction to Apache Kafka
A visual introduction to Apache KafkaA visual introduction to Apache Kafka
A visual introduction to Apache Kafka
 
Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...Automatic Performance Modelling from Application Performance Management (APM)...
Automatic Performance Modelling from Application Performance Management (APM)...
 
Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...Past Experiences and Future Challenges using Automatic Performance Modelling ...
Past Experiences and Future Challenges using Automatic Performance Modelling ...
 
Introduction to programming class 13
Introduction to programming   class 13Introduction to programming   class 13
Introduction to programming class 13
 

Recently uploaded

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 

Recently uploaded (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 

Grid Middleware – Principles, Practice and Potential

  • 1. (Or: What do Wombats and Grid have in common?) UK OGSA Evaluation Project (UCL, Imperial, Newcastle, Edinburgh) UCL Project Members: Paul Brebner, Wolfgang Emmerich University College London P.Brebner@cs.ucl.ac.uk Grid Middleware – Principles, Practice and Potential
  • 2. What do Wombats and Grid have in common? A They are secretive and misunderstood creatures? B They live in complex underground burrows? C You wouldn’t want to meet one in a confined space in the dark? D All of the above? ?
  • 3. Grid – Abstract • Principles – What are the principles of Grid middleware? • Practice (and pitfalls) – How easy is it to use in practice? What are the pitfalls? • Potential – What potential does Grid middleware have to • (1) provide insight into different ways of using Service Oriented Architectures, and • (2) support automatic deployment and debugging?
  • 4. Grid – Principles • Principles – What are the principles of Grid middleware? • Practice (and pitfalls) – How easy is it to use in practice? What are the pitfalls? • Potential – What potential does Grid middleware have to • (1) provide insight into different ways of using Service Oriented Architectures, and • (2) support automatic deployment and debugging?
  • 5. Grid Principles – cluster, enterprise, internet
  • 6. Grid Principles – Grid vs Enterprise • What’s the difference between Grid and Enterprise? (Typical generalisations…) • Grid – Crosses firewalls and organisational boundaries – Resource and code focussed • scientist has some code, and wants to execute it on as many resources as possible, to solve ever bigger problems – Developer, deployer and user may be the same person
  • 7. Grid Principles – Grid Code New Data Data User wants: Infinite resources, scalability, monitoring Code Data Organisations want: Fair sharing, ease of maintenance?
  • 8. Grid Principles – Grid vs Enterprise • Enterprise – Code developed, deployed and maintained by enterprises behind firewall – Exposed as web services for intra and inter organisational interoperability – Users don’t develop or deploy code
  • 9. Grid Principles – Enterprise User wants: Response time, availability Query or Transaction Response Service developer Enterprise wants: Interoperability, scalability, security
  • 10. Grid Principles – Grid vs Enterprise • Grid (User view) – I have some code, make it run fast for me. – Concerns: Finding resources, platform portability, deploying, running and monitoring “jobs”, security, data management. • Enterprise (Enterprise owner view) – I have some business logic exposed as Web service – ensure internal and external users get required QoS. – Concerns: QoS, interoperability, transactional, performance/scalability, security, multiple applications sharing services.
  • 11. Grid Principles – Just another component model? • Inspight of these differences, they have something in common • OGSI has J2EE origins – “What does it mean to ship a J2EE-based Grid environment, something that can deliver OGSI-compliant services? It means that you provide a server programming environment that makes it very easy for service writers to implement services that conform to the set of standards that are OGSI.” – Containers, lifecycle management – Goal: Easy to write services and interoperability at interface level
  • 12. Grid Principles – OGSA vs OGSI
  • 13. Grid Principles – OGSA without OGSI
  • 14. Grid Principles – OGSA and ? ?
  • 15. Grid Principles - Architecture J2EE – n-tiered architecture
  • 16. Grid Principles - Architecture OGSA – semi-layered, or “sum of services”
  • 17. Grid Principles - Architecture GT3 – (core) server side components
  • 18. Grid Principles – OGSA Services • Infrastructure services • Execution Management services • Data Services • Resource Management Services • Security Services • Self-Management Services • Information Services
  • 19. Grid Principles – J2EE cf OGSI Feature J2EE OGSI Containers Multiple (4) One Components Multiple One (+inheritance) Roles Explicit Implicit Implementations Many 1-2 (sort of) Component purpose Presentation/Business logic/persistence High-level grid services
  • 20. Grid Principles - State • Treatment of stateful instances? – J2EE has stateful session and entity beans • CMP Entity beans: lifecycle management (passivation/activation/pooling), caching, and automatic persistence support • Typically accessed via Stateless Session Beans or MDBs – GT3 has stateful instances (created by Factories) • Accessed via SOAP and handles • No automatic passivation/activation or persistence
  • 21. Grid Principles - Roles • J2EE – Component developer – Application assembler – Deployer – System Administrator • Not to mention product and tool providers, system architect, and database designer and administrator, etc • Many products provide distributed/remote tool support
  • 22. Grid Principles - Roles • Grid? – Increasing number of roles in practice – But, no explicit definition of Grid roles, and – Poor tool support for cross-organisational support of roles
  • 23. Grid Principles - Deployment • Treatment of deployment? – J2EE has explicit deployment role, and typically good tool support for remote deployment – Support for product independent deployment (JSR-88 since J2EE 1.4) – GT3 has built-in support for remote “code/executable” deployment (staging), but none for remote “service” deployment
  • 24. Grid Principles – Confusion/alternatives • How is Globus intended to be used? – 1: Science as first-order services • Middleware for building and hosting Grid Applications, by exposing science code as Grid services. – 2: High-level grid services • Middleware for building a set of high level Grid services, composed to provide new Grid functionality. Science isn’t first-order service, but executed and managed by Grid services.
  • 25. Grid Principles – Science services or Grid services Client E=mc2 1 Science services: Directly callable, described
  • 26. Grid Principles – Science services or Grid services Client E=mc2 1 D=A+2B+C2 Science services: Directly callable, described
  • 27. Grid Principles – Science services or Grid services Client 2 D=A+2B+C2 E = mc2 E=mc2 1 D=A+2B+C2 Data Execution Science services: Directly callable, described discoverable Science: Indirectly callable, not directly described or discoverable
  • 28. Grid – Practice • Principles – What are the principles of Grid middleware? • Practice (and pitfalls) – How easy is it to use in practice? What are the pitfalls? • Potential – What potential does Grid middleware have to • (1) provide insight into different ways of using Service Oriented Architectures, and • (2) support automatic deployment and debugging?
  • 29. Grid Practice – What to evaluate? • OGSA > OGSI > GT3.2 – Grid SOA exemplar – Initially evaluate installation, configuration, and security – Then performance and scalability, deployment, architectural choices, etc. • What’s the point? What are we trying to learn? – What are some of the s/w engineering and architectural issues surrounding Grid infrastructure? Across organisational boundaries? – What improvements are required before it is suitable for production environments?
  • 30. Grid Practice –”Realistic” test-bed • Heterogeneous platforms – Linux, Solaris, Windows • Cross-organisational – Four nodes – Independently administered – Firewalls and access restrictions • Security – UK e-Science CA
  • 31. Grid Practice – Incremental • Start with Core Package (Just container and basic services – e.g. container registry service) • Add Security • Then try “All Services” • Simple enough – in theory – Relationship between packages not well understood – Java and non-Java components – Poor integration between some parts
  • 32. Grid Practice – single node Install OS/HW GT3 Install
  • 33. Grid Practice – single node Install Configure OS/HW GT3 Install
  • 34. Grid Practice – single node Install Configure Deploy OS/HW GT3 Install
  • 35. Grid Practice – single node Install Configure Deploy Run OS/HW GT3 Install
  • 36. Grid Practice – Multiple sites GT3
  • 37. Grid Practice – Multiple sites GT3 GT3 GT3 GT3
  • 38. Grid Practice – Multiple sites GT3 GT3 GT3 GT3 Interoperate
  • 39. Grid Practice – Multiple sites GT3 GT3 GT3 GT3 Interoperate GT3 GT3 Secure
  • 40. Grid Practice – Multiple sites GT3 GT3 GT3 GT3 Interoperate GT3 GT3 Secure Manage
  • 41. Grid Practice – What we found • Port number management (conflicts, discovery) • Host access (requirements and site policies) • Remote visibility of installation, container, services (what, configuration, version) • Installation by System Administrators (role division, extra effort) • Tomcat or Test container (different configuration) • Linux is the only well supported platform • Exponential increase in testing complexity as number of nodes increases.
  • 42. Grid Practice – Security • Grid Security Infrastructure (GSI) – X.509 certificates – Mutual authentication (client/host) – Proxy certificates (delegation and single sign-on) • Authentication (Who are you?) – Secure Message (Basic) – Secure Conversation • Signing or Encryption (prevent unauthorised altering/reading) • Authorisation (Who is authorised to use container, factory, service, method) – Gridmap file (Access Control List – maps Grid to Local identifies)
  • 43. Grid Practice – Security • In theory just have to – obtain (and update) host, client, and CA certificates – convert – install – configure (server, client side, container, services, etc) – generate (and update) proxies. • However, parts of “All Services” package also needed.
  • 44. Grid Practice – Security • Interactions between security for multiple installations • Essential to test non-secure interoperability first • Windows client-side security • Testing and viewing security configuration • Debugging secure calls • Client side security is programmatic • Security management scalability – Construction and maintenance of user accounts and grid-map file entries.
  • 45. Grid Practice – Security • Interactions between security for multiple installations – For testing may want • multiple versions, or duplicates (with different configurations) of same versions. • One container with no security, and another container with security – May want test/production environments
  • 46. Grid Practice – Security • Essential to test non-secure interoperability first – Trying to test interoperability and security simultaneously wasn’t fun
  • 47. Grid Practice – Security • Windows client-side security – Not obvious exactly what parts of Globus are needed for client side code with security (no “client side + security” package).
  • 48. Grid Practice – Security • Testing and viewing security configuration – View/edit and check security configuration for containers and services – Confusion about hierarchical security settings • Virtual Organisations, clusters, servers, containers, factories, services, methods, and instances. – Remotely – Validate security deployment before run-time
  • 49. Grid Practice – Security • Debugging secure calls (or any stateful service) – Proxy interceptor approach (e.g. TCPMON) won’t work with stateful services • As grid handle returned to client contains the port number of the instance, not the proxy – But proxies are an important design pattern for SOAs… – GT4/WS-RF may be different • Handle resolvers, WS-Addressing and WS- RenewableReferences
  • 50. Grid Practice – Security • Client side security is programmatic – Client side code modifications required to call services/methods with required protocols – Should be declarative – Sensitive to server side security credentials
  • 51. Grid Practice – Security • Security management scalability – Construction and maintenance of user accounts and grid-map file entries. – For each server, each user needs an account, and an entry in the container gridmap file (mapping client certificate to account) – May also need service specific gridmap files – Not scalable for large numbers of users, servers, services. – Revocation of certificates, host certificate expiry problem • Alternatives? – Tool support – Role based authentication – Shared accounts or certificates (probably evil)
  • 52. Grid Practice - Performance • First approach (initial results) – Scientific benchmark (SciMark2.0) modified to measure throughput, and invoked as a Stateful Grid Service – Metric is Calls Per Minute (CPM) – one unit of work. – No large-scale data movement, just SOAP parameters and result, and computation/memory load. • Good performance and scalability – Minimal overhead cf standalone benchark – Security has minimal overhead – Sustained 4200 “jobs” an hour throughput – Problem with client side timeouts as response times increase
  • 53. Grid Practice - Performance ART (s) 0 50 100 150 200 0 10 20 30 40 50 60 70 Threads Time(s) UCL (4 cpu Sun) Newcastle (2 cpu Intel) Imperial (2 cpu Intel) Edinburgh (4 hyperthread cpu Intel) All Tomcat Fastest: 3.6s (Edinburgh) Slowest: 25s (UCL)
  • 54. Grid Practice - Performance Throughput (CPM) 0 10 20 30 40 50 60 70 80 0 20 40 60 80 Threads CPM UCL (4 cpu Sun) Newcastle (2 cpu Intel) Imperial (2 cpu intel) Edinburgh (4 hyperthread cpu Intel) All (12 cpus) Theoretical Maximum 95% of predicted maximum throughput
  • 55. Grid Practice - Performance • Tomcat vs Test container – No difference on 3 out of 4 nodes – But 67% faster on one node (Newcastle, slowest Intel box) • Attachments will work with GT3 and Tomcat – But not with security – Limit of 1GB (DIME) – Bug in Axis – doesn’t clean up temporary files.
  • 56. Grid Practice - Performance • Stateful instances visible externally can be problematic – Intermittent unreliability • On some runs, 1 exception in 300 calls (reliability of .9967) – But non-repeatable, SOAP/network related? • What is the safe response to exceptions? Can’t just retry. – Possible to kill container (relies on clients being well behaved): • By invoking same instance/method more than once. • By consuming container resources – But instances can be passivated/activated in theory – Could be used to enable fine-grain (per instance) control over resource usage.
  • 57. Grid Practice - Pitfalls • Production quality Grid middleware needs (“What this bike needs is …”) • Support for – Remote – location independent – cross-organisational – multiple role scenarios – Such as…
  • 58. Grid Practice - Pitfalls (continued) – Platform independent, automatic, installation. – Tool support for configuration and deployment creation, validation, viewing and editing. – Management console for grid, nodes, globus packages, containers and services. – Remote deployment and management of services. – Remote distributed debugging of grid installations, services, and applications. – Tool support, and more scalable processes for security.
  • 59. Grid – Potential • Principles – What are the principles of Grid middleware? • Practice (and pitfalls) – How easy is it to use in practice? What are the pitfalls? • Potential – What potential does Grid middleware have to • (1) provide insight into different ways of using Service Oriented Architectures, and • (2) support automatic deployment and debugging?
  • 60. Grid Potential – Architectural alternatives • Evaluate the two approaches in more detail – Science exposed as services, vs science code managed by higher level grid services. • Explore alternative mechanisms for: – Executing science code – Load balancing and scheduling/resource management – Directory services (service and resource discovery) – Data movement (e.g. SOAP Attachments vs GridFTP)
  • 61. Grid Potential – Architectural evaluation • Evaluation approach – Loosely based on ATAM + mechanisms – Clarify the role of different GT3 mechanisms, and quantify pros/cons – Two versions of application – Evaluate with • Architecture • Roles • Scenarios (to quantify quality attributes)
  • 62. Grid Potential – Architectural evaluation • Pick a number of roles of interest – Define attributes of interest, and scenarios to exercise and measure them • Deployment – Consistency of deployment, and time to deploy • Debugging – Ability to locate root cause of problem and rectify • Security admin – Cost/time to secure increasing number of clients/nodes • Grid owner – Scalability and ease of management
  • 63. Grid Potential – Architectural evaluation • Hypothesis – Both approaches to using Grid are identical – But won’t be surprised by some differences – e.g. scalability, discovery, deployment • Problems with – MDS3 (Directory and resource discovery service) working with aggregated service data across sites – GridFTP – Wrapping Science code with MMJFS
  • 64. Grid Potential - Deployment • How to install and configure Grid infrastructure and services - scalably and securely? • Install GT3 infrastructure and security manually – MMJFS allows executable code to be staged automatically (But not services - could provide a deployment service). • Install bootstrapping code, and then install and deploy all other code and security automatically. – Using SmartFrog (HP) in the lab, and then test-bed. – Firewalls, platform specific configurations, user sand- boxing, configuring GT3 security remotely, and “trust” with System Administrators are open issues.
  • 65. Grid Potential – Deployment Speculation • Explicit deployment-flows? – In Enterprise applications are increasingly represented as work-flows. • Good for distributed execution, and comprehensibility. – What if deployment plans are also represented explicitly as flows (deployment-flows)? – Some work on work-flow aware resource management (for Grid). – Deployment-flows could even be auto-magically generated from work-flows, and executed to ensure resources are deployed correctly JIT for work-flow execution.
  • 66. Grid Potential – Deployment Speculation • For example: – Work-flow with two tasks • 1st task requires 10 nodes, 2nd task 100 nodes. – Produce deployment-flow which is interleaved with work-flow to: • Deploy 1st service for first task to 10, and start execution • Deploy 2nd service to 100 nodes concurrent with execution of 1st task, and ready for execution of 2nd.
  • 67. Grid Potential – Deployment Speculation T1 x 10 T2 x 100 Execute T1 Execute T2 S1S1S1S1S1S1S1 Deploy S1 x 10 S1S1S1S1S1S1S2 Deploy S2 x 100 Could also include un-deploymentS2S2S2S2S2
  • 68. Grid Potential - Deployment + Debugging • Debugging distributed systems is tricky – Need better support for cross-cutting non-functional concerns such as deployment and debugging. – (One) problem with debugging services is not knowing the context of errors (to aid diagnosis or cure) – a service is just a black box with an interface. • Deployment aware debugging: – Starting from functional work-flows, generate deployment-flows, which are executed prior to, or concurrent with, functional work- flows. • This ensures that deployment is done consistently and automatically with respect to application execution. – If failure in functional work-flow, then corresponding deployment- flow is examined to determine likely causes, and parts are re- executed. – Failure in deployment-flow can also possibly be managed.
  • 69. Grid Potential - Deployment + Debugging • Three phases of Debugging • Debug deployment – Relies on deployment infrastructure and deployment-flows – What works locally or on one node may not work remotely, or identically on all nodes without modification, and deployment framework itself may be an extra cause of failure • Debug/trace application + infrastructure to get working initially – Relies on visibility/transparency of deployed and running infrastructure and application – Ideally want integrated (active), or at least proxy/sniffer (passive), debugging (profiling, tracing, stepping) support. • Debug working application upon failure – But multiple failure modes – Has application + infrastructure been analysed and/or tested for them all? – Can diagnosis and rectification be done anyway?
  • 70. Grid Potential - Deployment + Debugging • Backtrack through deployment steps (Like peeling an onion) – Some steps will need to be reversed, and then redone correctly – Manage dependent, redundant, and inconsistent operations • This approach may fix an (interesting) sub-class of problems: • Those which can be fixed by simply redoing (or replicating) (part of) the installation, E.g. – Intermittent failure of container or services – Resource starvation or overload – deploy services to more resources • Security problems that can be fixed with reconfiguration or refresh of certificates/proxies. – But not: • network, or all configuration and security/access problems. • Or “Enterprise Web services” (from a user perspective, as users can’t deploy)
  • 71. Grid Potential - Deployment + Debugging T1 x 10 Failure! Execute T1 Execute T2 S1S1S1S1S1S1S1 Deploy S1 x 10 S1S1S1S1S1S1S2 Deploy S2 x 100 S2S2S2S2 S2 Redploy S2 on failed node ?
  • 72. Grid Potential - Deployment + Debugging • What’s still needed? – Connection between executing client code and deployment infrastructure – Ability to reason about relationship between work- flow/client failures, deployment-flows and grid infrastructure, diagnose failure causes, and plan solutions – Ideally want applications and deployment represented explicitly as flows – work and deployment flows. – Could possibly infer work-flow and therefore deployment-flow from running system in the absence of explicit information? – Justification – is the problem significant, and how far does this solution go?
  • 73. UK OGSA Evaluation Project • Thank you J • Email: P.Brebner@cs.ucl.ac.uk – After November: Paul.Brebner@csiro.au
  • 74. UK OGSA Evaluation Project • Thank you J • Email: P.Brebner@cs.ucl.ac.uk – After November: Paul.Brebner@csiro.au • Not
  • 75. UK OGSA Evaluation Project • Thank you J • Email: P.Brebner@cs.ucl.ac.uk – After November: Paul.Brebner@csiro.au • Not (quite)
  • 76. UK OGSA Evaluation Project • Thank you J • Email: P.Brebner@cs.ucl.ac.uk – After November: Paul.Brebner@csiro.au • Not (quite) the
  • 77. UK OGSA Evaluation Project • Thank you J • Email: P.Brebner@cs.ucl.ac.uk – After November: Paul.Brebner@csiro.au • Not (quite) the End
  • 78. UK OGSA Evaluation Project • Thank you J • Email: P.Brebner@cs.ucl.ac.uk – After November: Paul.Brebner@csiro.au • Not (quite) the End…
  • 79. Postscript – The Secret Life of Grid? Our experiences Evaluating Grid technology reminds me of an Australian book (“The Secret Life of Wombats”) about a school boy who used to sneak out of his dormitory after everyone was asleep to go “wombatting”. He spent his nights secretly crawling down Wombat burrows with a flashlight – a potentially lethal activity (not just from cave-ins, as wombats are ferocious when cornered!) – and wrote copious notes resulting in a substantial increase in knowledge of these “mysterious and often misunderstood creatures”.
  • 80. Postscript – The Secret Life of Grid? Our experiences Evaluating Grid technology reminds me of an Australian book (“The Secret Life of Wombats”) about a school boy who used to sneak out of his dormitory after everyone was asleep to go “wombatting”. He spent his nights secretly crawling down Wombat burrows with a flashlight – a potentially lethal activity (not just from cave-ins, as wombats are ferocious when cornered!) – and wrote copious notes resulting in a substantial increase in knowledge of these “mysterious and often misunderstood creatures”. UK OGSA Evaluation Project Report 1.0 Evaluation of Globus Toolkit 3.2 (GT3.2) Installation http://sse.cs.ucl.ac.uk/UK-OGSA/Report1.doc
  • 81. Postscript – The Secret Life of Grid? Our experiences evaluating grid technology reminds me of an Australian book (“The Secret Life of Wombats”) about a school boy who used to sneak out of his dormitory after everyone was asleep to go “wombatting”. He spent his nights secretly crawling down Wombat burrows with a flashlight – a potentially lethal activity (not just from cave-ins, as wombats are ferocious when cornered!) – and wrote copious notes resulting in a substantial increase in knowledge of these “mysterious and often misunderstood creatures”. UK OGSA Evaluation Project Report 1.0 Evaluation of Globus Toolkit 3.2 (GT3.2) Installation http://sse.cs.ucl.ac.uk/UK-OGSA/Report1.doc