20
CoSMIC: An MDA Tool Suite for CoSMIC: An MDA Tool Suite for Application Deployment and Application Deployment and Configuration Configuration Tao Lu, Emre Turkay Aniruddha Gokhale, Douglas Schmidt {lu,turkaye,gokhale,schmidt}@dre.vander bilt.edu Institute For Software Integrated Systems Vanderbilt University Nashville, TN 37203 Work supported by AFRL contract# F33615-03- C-4112 for DARPA PCES Program

CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

  • Upload
    alanna

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

CoSMIC: An MDA Tool Suite for Application Deployment and Configuration. Tao Lu, Emre Turkay Aniruddha Gokhale, Douglas Schmidt {lu,turkaye,gokhale,schmidt}@dre.vanderbilt.edu Institute For Software Integrated Systems Vanderbilt University Nashville, TN 37203. - PowerPoint PPT Presentation

Citation preview

Page 1: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

CoSMIC: An MDA Tool Suite for CoSMIC: An MDA Tool Suite for Application Deployment and Application Deployment and

ConfigurationConfiguration Tao Lu, Emre Turkay

Aniruddha Gokhale, Douglas Schmidt{lu,turkaye,gokhale,schmidt}@dre.vanderbilt.edu

Institute For Software Integrated SystemsVanderbilt UniversityNashville, TN 37203

Work supported by AFRL contract# F33615-03-C-4112 for DARPA PCES Program

Page 2: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

2

Tao Lu MDA

Research Synopsis

Develop, validate, & help to standardize technologies that:

(1) Model(2) Analyze(3) Synthesize &(4) Provision

multiple layers of middleware for distributed real-time and embedded (DRE) systems that require simultaneous control of multiple quality of service properties end-to-end

Model Driven Middleware for Distributed Real-time & Embedded SystemsModel Driven Middleware for Distributed Real-time & Embedded SystemsModel Driven Middleware for Distributed Real-time & Embedded SystemsModel Driven Middleware for Distributed Real-time & Embedded Systems

Middleware

MiddlewareServices

DRE Applications

Operating Sys& Protocols

Hardware & Networks

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

distributed system

Page 3: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

3

Tao Lu MDA

R&D Focus: Distributed Real-time & Embedded (DRE) Systems

•Network-centric & large-scale•Dynamic context•Stringent simultaneous quality of service (QoS) demands

•Part of larger systems•Resource constrained

•Network-centric & large-scale•Dynamic context•Stringent simultaneous quality of service (QoS) demands

•Part of larger systems•Resource constrained

Total Ship C&C Center

Total Ship Computing Environments

Page 4: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

4

Tao Lu MDA

Growing Trend: Component Middleware for DRE Applns

•Component middleware gaining importance (CCM, J2EE, .NET)

•Components encapsulate application core logic

•Components possess ports:•Event sinks & sources•Connection points e.g., receptacles• Interfaces e.g., facets•attributes

•Containers provide execution environment for components with common operating requirements

•Containers communicate via a middleware busMiddleware Bus

SecurityReplication NotificationPersistence

Container

… …

Page 5: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

5

Tao Lu MDA

Different Aspects in Component Middleware-based DRE Appln Provisioning & Deployment

• Specification & Implementation• Application functionality specification, partitioning and implementation as standalone

components• Packaging

• bundling a suite of software binary modules and metadata representing application components

• Installation• populating a repository with the packages required by the application

• Configuration• configuring the packages with the appropriate parameters to satisfy the functional and

systemic requirements of application without constraining to any physical resources • Planning

• making appropriate deployment decisions including identifying the entities, such as CPUs, of the target environment where the packages will be deployed

• Preparation• moving the binaries to the identified entities of the target environment

• Launching• triggering the installed binaries and bringing the application to a ready state

• Adaptation• Runtime reconfiguration & resource management to maintain end-to-end QoS

Page 6: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

6

Tao Lu MDA

Related Work: •MIC, Vanderbilt (Sztipanovits, Karsai, et al)

•Ptolemy, UC Berkeley (Lee et al)•Cadena, KSU (John Hatcliff et al)•Quality Connector, LMCO (Joe Cross et. al)

Key Benefits•Preserves DRE application functional & systemic QoS properties as high level models

•Domain-specific languages & analysis/synthesis tools transform models to customize underlying multi-layered middleware platforms

•Leverages & shapes standards for wider applicability

Our Solution: Model-Driven Middleware for DRE Applns

Middleware Bus

SecurityReplication NotificationPersistence

Container

… …

Container

… …

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

<CONFIGURATION_PASS> <HOME> <…>

<COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME></CONFIGURATION_PASS>

Page 7: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

7

Tao Lu MDA

Boeing Bold Stroke: Our Research Vehicle

•Avionics Product Line Component Model

•DRE system with 3,000+ domain-specific software components, 3-5 million lines of C++ code

•100+ developers

•Mission-control software for Boeing military aircraft, e.g., F-18 E/F, Harrier, UCAV

•Leverages the ACE+TAO middleware

•Used as Avionics Open Experimental Platform (OEP) for DARPA/IXO PCES & MoBIES programs

•Moving towards using CIAO CCM

Page 8: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

8

Tao Lu MDA

CoSMIC: Our MDM Tool SuiteApplying OMG MDA to address DRE appln development & provisioning challenges w.r.t: 1.the packaging aspect2.the configuration aspect3.the planning aspect4.the dynamic QoS provisioning & adaptation

aspect

Container

… …

TIMER20Hz

GPS

NAV DISP

•Our tool suite is called CoSMIC

•CoSMIC = Component Synthesis using Model Integrated Computing

Middleware Bus

SecurityReplication NotificationPersistence

Page 9: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

9

Tao Lu MDA

Challenge 1: Packaging Aspect

• Application components are bundled together into assemblies

• Several different assemblies tailored towards delivering different end-to-end QoS and/or using different algorithms can be part of the package • e.g., Bold Stroke scenarios involve assembling & deploying hundreds of components

• Packages describing the components and assemblies can be scripted by using XML descriptors

CONTEXTTIMER20Hz

GPS NAV DISP

Page 10: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

10

Tao Lu MDA

Challenge1: Packaging AspectPROBLEMS (1/2)

RT EventChannel

Ad hoc techniques for ensuring syntactic & semantic compatibility

End-to-end QoS metric assigned in ad hoc manner

Ad hoc means to determine event channel support

Page 11: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

11

Tao Lu MDA

Challenge1: Packaging Aspect

<!– Associate components with impls --><componentfiles> <componentfile id=“RateGenerator"> <fileinarchive name=“HouseRateGen.csd"/> </componentfile>

<componentfile id=“HiResGPS"> <fileinarchive name=“aGPS.csd"/> </componentfile>

<componentfile id=“cockpitDisplay"> <fileinarchive name=“navDisplay-if.csd"/> </componentfile>

</componentfiles>

PROBLEMS (2/2)XML file in excess of 3,000 lines for medium sized scenarios

Existing practices involve handcrafting the XML descriptors

Modifications to the assemblies requires modifying XML file

Page 12: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

12

Tao Lu MDA

Challenge 1: Packaging Aspect

TIMER20Hz

GPS NAV DISPAIRFRAME

Status:• Component & Assembly Descriptor Modeling Language (CADML) developed in GME• Used to model & synthesize assembly descriptor and package descriptor files for Boldstroke

product scenarios

SOLUTION

Page 13: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

13

Tao Lu MDA

Challenge 1: Packaging AspectNext Steps

Align CADML DSML with OMG’s D&C spec

Improve syntactic & semantic compatibility checks

Benchmarking of assemblies to assign QoS metrics

Page 14: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

14

Tao Lu MDA

Challenge 2: Configuration AspectCONTEXT

Platform independent configuration

Configuration of components & assemblies

Configuration of component containers

Configuration of middleware bus (i.e., ORB)

Configuration of component server

Configuration of event channel support

Page 15: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

16

Tao Lu MDA

Challenge 2: Configuring RT Event ChannelsPROBLEMS (1/3)

•This “glue code” for event channel integration is traditionally handcrafted

Determine priority propagation policies for events

Determine the right locking strategies

Determine the right strategy for event channel integration i.e., within container or within component

Enable colocation optimizations

PROBLEMS (1/2)

Page 16: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

17

Tao Lu MDA

Challenge 2: Configuring Middleware End-to-End

I/O Subsystem

M/W Bus

SkeletonStub

20 10 5 1 20 10 5 1

PROBLEMS (2/2)

Determine right concurrency strategy

Determine right demux strategy

Determine right marshaling optimizations

Determine right connection mgmt policy

Configuring subset of underlying transports

•Highly flexible middleware tend to provide numerous configuration knobs that can be configured to deliver required systemic properties to applications

•Existing techniques of metadata configurations rely on ad hoc manual selection of configuration parameters

Page 17: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

18

Tao Lu MDA

Challenge 2: Configuration Aspect

SOLUTION • Developed a domain-specific modeling language for TAO/CIAO called Options Configuration Modeling Language (OCML) using GME

• User provides a model of desired options & their values e.g.,

• Middleware bus resources

• Concurrency & connection management strategies

• Constraint checker flags incompatible options

• Synthesizes XML descriptors for middleware configuration

Page 18: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

19

Tao Lu MDA

Challenge 2: Configuration Aspect

TIMER20Hz

GPS

NAV DISP

Highpriority

Next Steps

•Extend OCML to capture application QoS requirements in a platform independent form

•Design model transformers to synthesize platforms-specific configuration models

•Design tools that will determine the right values for various platform-specific configuration parameters

Point of ContactEmre Turkaye, George Edwards, Gan Deng

Page 19: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

20

Tao Lu MDA

Research SnapshotFunded Projects• DARPA Program Composition of Embedded Systems (PCES)

• DARPA Adaptive & Reflective Middleware Systems (ARMS)

• ITS Warehouse Management (Siemens)

• Fault Tolerant CORBA (Lockheed Martin)

Collaborations• Dr. Douglas C. Schmidt, Vanderbilt University

• Dr. Jeff Gray (Univ of Alabama, Birmingham)

• Dr. Swapna Gokhale (Univ of Connecticut)

• Dr. Marina Thottan (Bell Labs)

• Dr. Priya Narsimhan (CMU)

• Dr. Sylvester Fernandez (Lockheed Martin)

Page 20: CoSMIC: An MDA Tool Suite for Application Deployment and Configuration

22

Tao Lu MDA

Downloading the Middleware & Tools

• http://www.dre.vanderbilt.edu/cosmic

• Beta and Stable release can be accessed from http://www.dre.vanderbilt.edu/Download.html