Dynamic Hybrid Cloud Applications


Published on

Short introduction to he INAETICS dynamic services architecture for fully dynamic and hybrid cloud applications as presented at EclipseCon EU 2013.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Dynamic Hybrid Cloud Applications

  1. 1. Dynamic Hybrid Cloud Applications Introducing the INAETICS project Bram de Kruijff Alexander Broekhuis Luminis Technologies
  2. 2. INtelligent robust ArchitecturE for TIme Critical Systems An open collaboration effort that aims to define and demonstrate a dynamic service oriented reference architecture that addresses the requirements of time critical systems in a broad range of domains by providing a single design and implementation space for all subsystems, irrespective of control strategy
  3. 3. Open innovation Define an open reference architecture based on a shared vision that can be applied freely in a broad range of domains. ● ● Implementations in Open Source Spearheaded and funded by...
  4. 4. Time Critical systems (Ultra) Large Online Systems that must reliably perform mission-critical functions, bridging operational and informational domains. ● Multiple Control strategies ● Functional Adaptive behaviour ● Technologically heterogeneous ● Geographically dispersed
  5. 5. Time Critical systems (Ultra) Large Online Systems that must reliably perform mission-critical functions, bridging operational and informational domains. ● Multiple Control strategies ● Functional Adaptive behaviour ● Technologically heterogeneous ● Geographically dispersed
  6. 6. Consistent design space Define a unified design (and implementation) space across functional and technological domains that supports runtime evolution. ● Architectural consistency in systems design ● No architectural impedance between domains ● Runtime system evolution of deployments ● Adaptive system behaviour to context changes
  7. 7. Dynamic Services Architecture Dynamic Services Architecture has the properties to address the requirements for Time Critical System domains. ● ● Consistent design space ○ Published contracts ○ Service lifecycle ○ Multiple paradigms Service whiteboard Runtime system evolution ○ Semantic versioning ○ Modular implementation ○ Data stewardship ○ (Native) OSGi Domain Domain
  8. 8. Continuous Deployment Application deployment is an autonomous and continuous process that optimizes the application’s performance given the capabilities of the available resources and budget. ● ● ● Managed Requirements ○ (Non-) Functional / QoS ○ Budget Resource Capabilities ○ (Non-) Functional / QoS ○ Cost Runtime metrics ○ Resource utilization ○ QoS reporting Change functional behaviour Requirements QoS Application running Change resource usage
  9. 9. Architectural layering The INAETICS architecture acknowledges a functional service layering with distinct responsibilities to support architectural and system evolution. ● (Application services) ● Coordination services ● Container services ● Reqs Caps State Metrics Fabric services Caps ● Application (Network/Resources) Metrics
  10. 10. Fabric layer The fabric layer is an extensible resource and network abstraction layer. It provides the basic infrastructure for the system state and interaction. ● Peer-to-peer network ● Nodes/Zones ● Zone coordination ● Messaging/Relays ● Node capabilities ○ Non-functional / QoS ○ Functional endpoints ○ Component containers
  11. 11. Node agents The fabric is implemented by node agents that provide the core infrastructural services and base containers. ● ● Polyglot implementations ● OSGi (Amdatu Platform) ● Native OSGi (Apache Celix*) ● Custom/Embedded Core services ● Discovery/Trust ● Topology/Messaging ● Role/Task coordination ● Initial provisioning ● Remotes Services *) Apache Celix is an ASF incubator project Processors Strategies Drivers (Remote) Services Messaging Coordination Provisioning Discovery Trust Topology
  12. 12. Container layer The container layer is an extensible application component layer. It provides life-cycle and context to application components. ● Component runtime ● Provisioning ● Application context ● Supporting services ● QoS monitoring ● Container capabilities ● Non-functional / QoS ○ Functional endpoints ○ Multi-tenancy
  13. 13. Container services The container services are dynamic services provisioned onto node agents to support local application components with management, context and supporting services Security services ● ● Provisioning ○ DeploymentAdmin ○ Apache ACE Networking services Context services Application Context ○ Service visibility ○ Amdatu Platform (Remote) Services Messaging ● Dynamic services ○ Networking services ○ Security services Topology Provisioning Discovery Trust Security
  14. 14. Coordination layer The coordination layer is an extensible application management layer. It provides deployment and monitoring of the system and applications. ● System management ● Application deployment ● Resource management ● Network management ● Security management Application deployment Task Coordination ● Application support ● Role/Task coordination ● Priority based scheduling ● Load balancing Resource Management Network Management
  15. 15. Coordination services The coordination services are selectively provisioned onto node agents in the system to provide redundant, optimized and fail-safe coordination facilities Task Coordination ● Application deployment ○ ○ ● Requirement/Capabilities Resource Management Application deployment QoS Monitoring Resource Management ○ Apache JClouds* ○ OpenStack ○ (Remote) Services OpenContrail Topology Provisioning Discovery *) Apache JClouds is an ASF incubator project Messaging Trust Security
  16. 16. Dynamic layer Coordination layer Conceptual overview Deploy Services Application Deployment Func/QoS Requirements A B B Application Monitoring A Security Services “Deployment Topology” A Func/QoS Capabilities B Monitor Services A Install Services B Func/Qos Reporting Intrusion Detection Context Services Core layer Remote Services Func/QoS Capabilities Func/QoS Reporting Discovery Services Messaging Services
  17. 17. INAETICS is ... ● A dynamic services architecture that provides a single consistent design space across domain and technology boundaries ● A fully dynamic deployment, resource and network management model allowing QoS driven runtime adaptive behaviour of systems ● A runtime platform being implemented in OSGi and Native OSGi/C by the Amdatu Platform and Apache Celix Open Source projects ● ... under construction ;)
  18. 18. Thank you! Continuous Automated Deployment with Apache ACE Thursday at 11:15 - 11:50 Schubartsaal contact@inaetics.org http://www.inaetics.org bram.dekruijff@luminis.eu http://www.luminis-technologies.com