SlideShare a Scribd company logo
1 of 18
An Introduction to IaaS Framework
      Reference Architecture Framework for Providing IaaS




OOI – Workshop Presentation Material
Mathieu Lemay, CEO Inocybe Technologies
August 5th, 2008
                                          ©2007 Inocybe Technologies inc. All rights reserved.
About Me

 • Lead developer and architect of User Controller
   Controlled Lightpaths (UCLP) and related cyber
   infrastructure projects. from 2001 to 2005 at
   Communications Research Centre (CRC).
 • I’ve been working with web and distributed
   technologies since 1995, programming in Java
   since 1998.
 • Founder of Inocybe Technologies inc., a company
   pioneering IaaS tools and services.
 • Leader of the IaaS Framework initiative and
   orchestring the subprojects.


                                ©2007 Inocybe Technologies inc. All rights reserved.
What is the IaaS
Framework?
  • The IaaS Framework provides non-invasive tools
    and libraries to create Infrastructure Services.
  • The IaaS Framework is built on OSGi which is SOA
    inside the application.
  • The framework is broken in 5 independant modules
     • An engine framework for device management
     • A resource framework
     • A front end to service/remoting solutions
     • A front end to persistence frameworks
     • Various tools and utilities


                                 ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework Mission
Statement

  The authors of IaaS aim that:
  • IaaS should be a pleasure to use and easy to learn.
  • Your application code should not depend on IaaS
    APIs. (POJOs whenever it is possible)
  • IaaS should not compete with good existing
    solutions, but should foster integration via Spring
    Framework’s capabilities.
  • It should quickly adapt to new or existing
    technologies.
  • Each modules shouldn’t have any interdependencies.



                                  ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Architecture
                      The architecture is
                      built so:
                    • Each module can be
                      used independently
                      from others.
                    • When possible non
                      intrusive API
                      (Convention over
                      Configuration) can be
                      used.
                    • Services and
                      Resources must not be
                      tied to a particular
                      technology
                    ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework
Use Cases
    Simple        Simple                       Simple
   Transient     Remoted                      Persistent
   Resource       Engine                      Resource




                      ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework Modules
• Engine: It provides a way to create and manage a
  datamodel called “Statemodel” which will serve as a transient
  information model. It also provides “Fragments” to resources.
• Persistence: Using JPA/JDO or any Spring ORM
  persistance framework entities can be persisted in any
  package or capability. It also can provide the persistent
  “Fragments” to resources.
• Resources & Capabilities: A resource is a context in which
  many capabilities exists.
• Services: Multiple remoting/messaging techniques or
  protocols, used to access resource capabilities or self-
  contained functionalities.


                                  ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Engine’s Architecture
                            An engine
                            architecture is:
                          • Engine’s State
                            Model is for
                            Message or RPC
                            style of
                            programming.
                          • Triggers & Events
                            react to Protocol
                            messages updated
                            the model.
                          • Protocols and
                            Transports provides
                            communication.
                      ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework Engine
Components
• State Models: The statemodels are the heart of engines.
  They are an array of Serializable Objects used as Resource
  Fragments of State.
• Actions & Commands: Actions are a composite set of
  Commands and depends on specific command Sets. A
  command Set is usually bound to a specific device and
  version. Actions and Commands can either be invoked or
  react to a change in the statemodel via a listener.
• Triggers & Events: A trigger depends on a set of multiple
  events.
• Transports & Protocols: Multiple remoting/messaging
  techniques or protocols, used to access resource capabilities
  or self-contained functionalities.
                                  ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework
Resources and Capabilities
• A resource is a stateful context in which Capabilities
  may exists and share state fragments.

                                  Complex Resource




                              ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework
Resources and Capabilities
Resources:
•Resources can keep their state as a set of Objects called
Fragments provided by the Capabilities.
•Fragments must share the same MimeType. (no mixed
resource types available yet)
•A resource is also idenfied by its URL context.

Capabilities:
•Capabilities are functionalities that can be added to a resource
(usually via AOP).
•Capabilities may exists as an instance in the context of a
resource (i.e. lifetime management) or a singleton for all
resources (i.e. resource properties).
                                   ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework
Services
Services:
•Services are bundles that provide remoting interfaces to
capabilties or self contained logic.
•Services can use any of Spring’s remoting capabilities as well
as any SOAP engine.
•A service is also “bound” to a specific business domain
interface. This may or may not be the remoted interface.
•Services can have multiple supported presentation layers from
Hessian to SOAP services. The messaging transport must also
be handled by the service’s implementation.
•Spring MVC capabilities can be also added to the services to
provide a REST interface in a correctly configured webapp
platform.
                                  ©2007 Inocybe Technologies inc. All rights reserved.
GRIM (IEEE1451 Inspired)
Implementation Stack




                    ©2007 Inocybe Technologies inc. All rights reserved.
IaaS Framework 1.0 M1 Release

  • The M1 Public Release (September 2008) will have:
     • Engine Transports: Serial, XMPP, TCP/SSL Sockets,
       HTTP transports, Shell.
     • Engine Protocols: CLI, GRIMML and TL1
     • Engine StateModels : GRIM
     • Engine CommandSets : VideoLAN Manager Example
     • Engine ActionSets: Default VideoLAN Example
     • Engine Events / Triggers : None
     • Resource : ObjectResource, XMLResource
     • Capabilities: WSRF Functional Support (Lifetime,
       Properties), WSN(?)
     • Services : Engine Services, WSRF Capabilities Services
     • Presentations: HTTP Invoker, SOAP(?)

     License : Apache Software License 2


                                           ©2007 Inocybe Technologies inc. All rights reserved.
Technology and Standards
•   The technologies used behind the Framework
•   Architecture: Spring IoC and AOP, OSGi via Spring-DM
•   Persistence: Hibernate/JPA, Spring ORM/DAO
•   Security: Spring Security, Drools, CAS/Shibboleth, (GSI in
    future releases)
•   Services: SOAP (Spring WS, Axis2(?)) , REST.
•   Implementation: Java, Scala or Groovy
•   Implemented Standards
•   OASIS WSRF v1.2
•   OASIS WSN v1.3
•   WS-Security v1.1
•   Upcoming Implemented Standards
•   OASIS WSDM-MUWS v.1.0
•   OASIS WSDM-MOWS v1.0               ©2008 Inocybe Technologies inc. All rights reserved.
Related Projects
• Multi-Tier Sensor Networks
    Application container with management platform for IaaS Modules.
    Links to the V-Infrastructure site for resource sharing between
    virtual domains.

• MANTICORE
    The MANTICORE project is controlling virtual router instances
    providing IaaS based routers and on-demand IP networks over a
    shared physical infrastructure.

• Intelligent Optical Networks
    The Agile Intelligent Reconfigurable Optical Network (AIRON)
    project uses IaaS and the GRIM model to create an adaptive
    approach to optical networks.

• Synchromedia V 2.0
    Provides on-demand collaborative environments for remote
    instrumentation and intellipresence using a IaaS Framework based
    infrastructure.                        ©2007 Inocybe Technologies inc. All rights reserved.
• The V-Infrastruction Application
  Platform (GPLv3/Commercial)
    Application container with management
    platform for IaaS Modules. Links to the
    V-Infrastructure site for resource
    sharing between virtual domains.

• The Resource Management Centre
  (EPL/Commercial)
    The RMC is a Eclipse RCP interface to
    IaaS based resources and services.
    Plugins can be created for other
    middlewares.

• ChronosTM Resource Metascheduler
  (Commercial)
    Can provide reservation schemes to
    resources that have “Reservation”
    capability.                             ©2007 Inocybe Technologies inc. All rights reserved.
Framework Contributors




                   ©2007 Inocybe Technologies inc. All rights reserved.

More Related Content

What's hot

C1 oracle's cloud computing strategy your strategy-your cloud_your choice
C1   oracle's cloud computing strategy your strategy-your cloud_your choiceC1   oracle's cloud computing strategy your strategy-your cloud_your choice
C1 oracle's cloud computing strategy your strategy-your cloud_your choiceDr. Wilfred Lin (Ph.D.)
 
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciOracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciCodemotion
 
Oracle IaaS including OCM and Ravello
Oracle IaaS including OCM and RavelloOracle IaaS including OCM and Ravello
Oracle IaaS including OCM and RavelloAndrey Akulov
 
Let's Talk Mobile
Let's Talk MobileLet's Talk Mobile
Let's Talk MobileChris Muir
 
JavaOne2015報告会 in Okinawa
JavaOne2015報告会 in OkinawaJavaOne2015報告会 in Okinawa
JavaOne2015報告会 in OkinawaTakashi Ito
 
Microservices and Container
Microservices and ContainerMicroservices and Container
Microservices and ContainerWolfgang Weigend
 
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012Arun Gupta
 
Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres
Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres
Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres Martin Lipka
 
Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3
Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3
Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3OTN Systems Hub
 
Introduction to Java Cloud Service
Introduction to Java Cloud ServiceIntroduction to Java Cloud Service
Introduction to Java Cloud ServicePerficient, Inc.
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationChris Muir
 
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)jeckels
 
Rapid private cloud with oracle vm and oracle openstack for oracle linux
Rapid private cloud with oracle vm and oracle openstack for oracle linuxRapid private cloud with oracle vm and oracle openstack for oracle linux
Rapid private cloud with oracle vm and oracle openstack for oracle linuxOTN Systems Hub
 
Oracle Cloud Reference Architecture
Oracle Cloud Reference ArchitectureOracle Cloud Reference Architecture
Oracle Cloud Reference ArchitectureBob Rhubart
 
Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8terrencebarr
 
Oracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & TuningOracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & TuningChris Muir
 
Oracle Cloud: Anything as a Service
Oracle Cloud: Anything as a ServiceOracle Cloud: Anything as a Service
Oracle Cloud: Anything as a ServiceBruno Borges
 
Oracle Cloud Computing
Oracle Cloud ComputingOracle Cloud Computing
Oracle Cloud ComputingFreelance PR
 

What's hot (20)

C1 oracle's cloud computing strategy your strategy-your cloud_your choice
C1   oracle's cloud computing strategy your strategy-your cloud_your choiceC1   oracle's cloud computing strategy your strategy-your cloud_your choice
C1 oracle's cloud computing strategy your strategy-your cloud_your choice
 
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciOracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
 
Oracle IaaS including OCM and Ravello
Oracle IaaS including OCM and RavelloOracle IaaS including OCM and Ravello
Oracle IaaS including OCM and Ravello
 
Let's Talk Mobile
Let's Talk MobileLet's Talk Mobile
Let's Talk Mobile
 
JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...
JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...
JavaCro'15 - Managing Java at Scale Security and Compatibility Applications -...
 
JavaOne2015報告会 in Okinawa
JavaOne2015報告会 in OkinawaJavaOne2015報告会 in Okinawa
JavaOne2015報告会 in Okinawa
 
Microservices and Container
Microservices and ContainerMicroservices and Container
Microservices and Container
 
Oracle Ravello
Oracle Ravello Oracle Ravello
Oracle Ravello
 
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
WebLogic 12c Developer Deep Dive at Oracle Develop India 2012
 
Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres
Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres
Top 5 favourite features of Cisco ACI in Pulsant Cloud Data Centres
 
Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3
Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3
Oracle Solaris Simple, Flexible, Fast: Virtualization in 11.3
 
Introduction to Java Cloud Service
Introduction to Java Cloud ServiceIntroduction to Java Cloud Service
Introduction to Java Cloud Service
 
Oracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for InternationalizationOracle ADF Architecture TV - Design - Designing for Internationalization
Oracle ADF Architecture TV - Design - Designing for Internationalization
 
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
Approaches for WebLogic Server in the Cloud (OpenWorld, September 2014)
 
Rapid private cloud with oracle vm and oracle openstack for oracle linux
Rapid private cloud with oracle vm and oracle openstack for oracle linuxRapid private cloud with oracle vm and oracle openstack for oracle linux
Rapid private cloud with oracle vm and oracle openstack for oracle linux
 
Oracle Cloud Reference Architecture
Oracle Cloud Reference ArchitectureOracle Cloud Reference Architecture
Oracle Cloud Reference Architecture
 
Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8Introduction to Java Micro Edition (ME) 8
Introduction to Java Micro Edition (ME) 8
 
Oracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & TuningOracle ADF Architecture TV - Development - Performance & Tuning
Oracle ADF Architecture TV - Development - Performance & Tuning
 
Oracle Cloud: Anything as a Service
Oracle Cloud: Anything as a ServiceOracle Cloud: Anything as a Service
Oracle Cloud: Anything as a Service
 
Oracle Cloud Computing
Oracle Cloud ComputingOracle Cloud Computing
Oracle Cloud Computing
 

Similar to An Introduction to IaaS Framework

Easy Docker Deployments with Mesosphere DCOS on Azure
Easy Docker Deployments with Mesosphere DCOS on AzureEasy Docker Deployments with Mesosphere DCOS on Azure
Easy Docker Deployments with Mesosphere DCOS on AzureMesosphere Inc.
 
Microservice Pattern Launguage
Microservice Pattern LaunguageMicroservice Pattern Launguage
Microservice Pattern LaunguageInho Kang
 
Microservices with Azure Service Fabric
Microservices with Azure Service FabricMicroservices with Azure Service Fabric
Microservices with Azure Service FabricDavide Benvegnù
 
Coding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkCoding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkJames Wickett
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data CenterSergey A. Razin
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC vipin kumar
 
Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019BrainMobi
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsBrad Williams
 
Lessons learned Building Nuxeo EP - Component-based, open source ECM platform
Lessons learned Building Nuxeo EP - Component-based, open source ECM platformLessons learned Building Nuxeo EP - Component-based, open source ECM platform
Lessons learned Building Nuxeo EP - Component-based, open source ECM platformNuxeo
 
Tw Technology Radar Qtb Sep11
Tw Technology Radar Qtb Sep11Tw Technology Radar Qtb Sep11
Tw Technology Radar Qtb Sep11Adrian Treacy
 
Hybrid and On-premise AWS workloads using HP Helion Eucalyptus
Hybrid and On-premise AWS workloads using HP Helion EucalyptusHybrid and On-premise AWS workloads using HP Helion Eucalyptus
Hybrid and On-premise AWS workloads using HP Helion EucalyptusVedanta Barooah
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Reviewnetc2012
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle Developers
 
Mule : Building Blocks for Microservices
Mule : Building Blocks for MicroservicesMule : Building Blocks for Microservices
Mule : Building Blocks for MicroservicesAnirudh Pandit
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Mee Nam Lee
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Igor De Souza
 
Using MySQL in the Cloud
Using MySQL in the CloudUsing MySQL in the Cloud
Using MySQL in the CloudMatt Lord
 
MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...
MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...
MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...Jitendra Bafna
 
Eclipse tools for deployment to was liberty profile in Bluemix
Eclipse tools for deployment to was liberty profile in BluemixEclipse tools for deployment to was liberty profile in Bluemix
Eclipse tools for deployment to was liberty profile in BluemixEclipse Day India
 
WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014Joelith
 

Similar to An Introduction to IaaS Framework (20)

Easy Docker Deployments with Mesosphere DCOS on Azure
Easy Docker Deployments with Mesosphere DCOS on AzureEasy Docker Deployments with Mesosphere DCOS on Azure
Easy Docker Deployments with Mesosphere DCOS on Azure
 
Microservice Pattern Launguage
Microservice Pattern LaunguageMicroservice Pattern Launguage
Microservice Pattern Launguage
 
Microservices with Azure Service Fabric
Microservices with Azure Service FabricMicroservices with Azure Service Fabric
Microservices with Azure Service Fabric
 
Coding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkCoding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE framework
 
Self-Driving Data Center
Self-Driving Data CenterSelf-Driving Data Center
Self-Driving Data Center
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
 
Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019Node.js Frameworks to watch for in 2019
Node.js Frameworks to watch for in 2019
 
ThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.jsThatConference 2016 - Highly Available Node.js
ThatConference 2016 - Highly Available Node.js
 
Lessons learned Building Nuxeo EP - Component-based, open source ECM platform
Lessons learned Building Nuxeo EP - Component-based, open source ECM platformLessons learned Building Nuxeo EP - Component-based, open source ECM platform
Lessons learned Building Nuxeo EP - Component-based, open source ECM platform
 
Tw Technology Radar Qtb Sep11
Tw Technology Radar Qtb Sep11Tw Technology Radar Qtb Sep11
Tw Technology Radar Qtb Sep11
 
Hybrid and On-premise AWS workloads using HP Helion Eucalyptus
Hybrid and On-premise AWS workloads using HP Helion EucalyptusHybrid and On-premise AWS workloads using HP Helion Eucalyptus
Hybrid and On-premise AWS workloads using HP Helion Eucalyptus
 
Frameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic ReviewFrameworks Galore: A Pragmatic Review
Frameworks Galore: A Pragmatic Review
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018
 
Mule : Building Blocks for Microservices
Mule : Building Blocks for MicroservicesMule : Building Blocks for Microservices
Mule : Building Blocks for Microservices
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
 
Using MySQL in the Cloud
Using MySQL in the CloudUsing MySQL in the Cloud
Using MySQL in the Cloud
 
MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...
MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...
MuleSoft Surat Virtual Meetup#25 - Anypoint Platform Features and Capabilitie...
 
Eclipse tools for deployment to was liberty profile in Bluemix
Eclipse tools for deployment to was liberty profile in BluemixEclipse tools for deployment to was liberty profile in Bluemix
Eclipse tools for deployment to was liberty profile in Bluemix
 
WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014WebLogic 12c - OMF Canberra June 2014
WebLogic 12c - OMF Canberra June 2014
 

Recently uploaded

UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfDianaGray10
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdfJamie (Taka) Wang
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...DianaGray10
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIRAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIUdaiappa Ramachandran
 
Spring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdfSpring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdfAnna Loughnan Colquhoun
 
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?SANGHEE SHIN
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum ComputingGDSC PJATK
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 

Recently uploaded (20)

UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
20200723_insight_release_plan_v6.pdf20200723_insight_release_plan_v6.pdf
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
Connector Corner: Extending LLM automation use cases with UiPath GenAI connec...
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIRAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AI
 
Spring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdfSpring24-Release Overview - Wellingtion User Group-1.pdf
Spring24-Release Overview - Wellingtion User Group-1.pdf
 
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum Computing
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 

An Introduction to IaaS Framework

  • 1. An Introduction to IaaS Framework Reference Architecture Framework for Providing IaaS OOI – Workshop Presentation Material Mathieu Lemay, CEO Inocybe Technologies August 5th, 2008 ©2007 Inocybe Technologies inc. All rights reserved.
  • 2. About Me • Lead developer and architect of User Controller Controlled Lightpaths (UCLP) and related cyber infrastructure projects. from 2001 to 2005 at Communications Research Centre (CRC). • I’ve been working with web and distributed technologies since 1995, programming in Java since 1998. • Founder of Inocybe Technologies inc., a company pioneering IaaS tools and services. • Leader of the IaaS Framework initiative and orchestring the subprojects. ©2007 Inocybe Technologies inc. All rights reserved.
  • 3. What is the IaaS Framework? • The IaaS Framework provides non-invasive tools and libraries to create Infrastructure Services. • The IaaS Framework is built on OSGi which is SOA inside the application. • The framework is broken in 5 independant modules • An engine framework for device management • A resource framework • A front end to service/remoting solutions • A front end to persistence frameworks • Various tools and utilities ©2007 Inocybe Technologies inc. All rights reserved.
  • 4. IaaS Framework Mission Statement The authors of IaaS aim that: • IaaS should be a pleasure to use and easy to learn. • Your application code should not depend on IaaS APIs. (POJOs whenever it is possible) • IaaS should not compete with good existing solutions, but should foster integration via Spring Framework’s capabilities. • It should quickly adapt to new or existing technologies. • Each modules shouldn’t have any interdependencies. ©2007 Inocybe Technologies inc. All rights reserved.
  • 5. IaaS Architecture The architecture is built so: • Each module can be used independently from others. • When possible non intrusive API (Convention over Configuration) can be used. • Services and Resources must not be tied to a particular technology ©2007 Inocybe Technologies inc. All rights reserved.
  • 6. IaaS Framework Use Cases Simple Simple Simple Transient Remoted Persistent Resource Engine Resource ©2007 Inocybe Technologies inc. All rights reserved.
  • 7. IaaS Framework Modules • Engine: It provides a way to create and manage a datamodel called “Statemodel” which will serve as a transient information model. It also provides “Fragments” to resources. • Persistence: Using JPA/JDO or any Spring ORM persistance framework entities can be persisted in any package or capability. It also can provide the persistent “Fragments” to resources. • Resources & Capabilities: A resource is a context in which many capabilities exists. • Services: Multiple remoting/messaging techniques or protocols, used to access resource capabilities or self- contained functionalities. ©2007 Inocybe Technologies inc. All rights reserved.
  • 8. IaaS Engine’s Architecture An engine architecture is: • Engine’s State Model is for Message or RPC style of programming. • Triggers & Events react to Protocol messages updated the model. • Protocols and Transports provides communication. ©2007 Inocybe Technologies inc. All rights reserved.
  • 9. IaaS Framework Engine Components • State Models: The statemodels are the heart of engines. They are an array of Serializable Objects used as Resource Fragments of State. • Actions & Commands: Actions are a composite set of Commands and depends on specific command Sets. A command Set is usually bound to a specific device and version. Actions and Commands can either be invoked or react to a change in the statemodel via a listener. • Triggers & Events: A trigger depends on a set of multiple events. • Transports & Protocols: Multiple remoting/messaging techniques or protocols, used to access resource capabilities or self-contained functionalities. ©2007 Inocybe Technologies inc. All rights reserved.
  • 10. IaaS Framework Resources and Capabilities • A resource is a stateful context in which Capabilities may exists and share state fragments. Complex Resource ©2007 Inocybe Technologies inc. All rights reserved.
  • 11. IaaS Framework Resources and Capabilities Resources: •Resources can keep their state as a set of Objects called Fragments provided by the Capabilities. •Fragments must share the same MimeType. (no mixed resource types available yet) •A resource is also idenfied by its URL context. Capabilities: •Capabilities are functionalities that can be added to a resource (usually via AOP). •Capabilities may exists as an instance in the context of a resource (i.e. lifetime management) or a singleton for all resources (i.e. resource properties). ©2007 Inocybe Technologies inc. All rights reserved.
  • 12. IaaS Framework Services Services: •Services are bundles that provide remoting interfaces to capabilties or self contained logic. •Services can use any of Spring’s remoting capabilities as well as any SOAP engine. •A service is also “bound” to a specific business domain interface. This may or may not be the remoted interface. •Services can have multiple supported presentation layers from Hessian to SOAP services. The messaging transport must also be handled by the service’s implementation. •Spring MVC capabilities can be also added to the services to provide a REST interface in a correctly configured webapp platform. ©2007 Inocybe Technologies inc. All rights reserved.
  • 13. GRIM (IEEE1451 Inspired) Implementation Stack ©2007 Inocybe Technologies inc. All rights reserved.
  • 14. IaaS Framework 1.0 M1 Release • The M1 Public Release (September 2008) will have: • Engine Transports: Serial, XMPP, TCP/SSL Sockets, HTTP transports, Shell. • Engine Protocols: CLI, GRIMML and TL1 • Engine StateModels : GRIM • Engine CommandSets : VideoLAN Manager Example • Engine ActionSets: Default VideoLAN Example • Engine Events / Triggers : None • Resource : ObjectResource, XMLResource • Capabilities: WSRF Functional Support (Lifetime, Properties), WSN(?) • Services : Engine Services, WSRF Capabilities Services • Presentations: HTTP Invoker, SOAP(?) License : Apache Software License 2 ©2007 Inocybe Technologies inc. All rights reserved.
  • 15. Technology and Standards • The technologies used behind the Framework • Architecture: Spring IoC and AOP, OSGi via Spring-DM • Persistence: Hibernate/JPA, Spring ORM/DAO • Security: Spring Security, Drools, CAS/Shibboleth, (GSI in future releases) • Services: SOAP (Spring WS, Axis2(?)) , REST. • Implementation: Java, Scala or Groovy • Implemented Standards • OASIS WSRF v1.2 • OASIS WSN v1.3 • WS-Security v1.1 • Upcoming Implemented Standards • OASIS WSDM-MUWS v.1.0 • OASIS WSDM-MOWS v1.0 ©2008 Inocybe Technologies inc. All rights reserved.
  • 16. Related Projects • Multi-Tier Sensor Networks Application container with management platform for IaaS Modules. Links to the V-Infrastructure site for resource sharing between virtual domains. • MANTICORE The MANTICORE project is controlling virtual router instances providing IaaS based routers and on-demand IP networks over a shared physical infrastructure. • Intelligent Optical Networks The Agile Intelligent Reconfigurable Optical Network (AIRON) project uses IaaS and the GRIM model to create an adaptive approach to optical networks. • Synchromedia V 2.0 Provides on-demand collaborative environments for remote instrumentation and intellipresence using a IaaS Framework based infrastructure. ©2007 Inocybe Technologies inc. All rights reserved.
  • 17. • The V-Infrastruction Application Platform (GPLv3/Commercial) Application container with management platform for IaaS Modules. Links to the V-Infrastructure site for resource sharing between virtual domains. • The Resource Management Centre (EPL/Commercial) The RMC is a Eclipse RCP interface to IaaS based resources and services. Plugins can be created for other middlewares. • ChronosTM Resource Metascheduler (Commercial) Can provide reservation schemes to resources that have “Reservation” capability. ©2007 Inocybe Technologies inc. All rights reserved.
  • 18. Framework Contributors ©2007 Inocybe Technologies inc. All rights reserved.