OpenCCM: The Open CORBA Components Platform

3 downloads 3540 Views 1MB Size Report
Nov 20, 2003 - server-side scalable, CORBA component-based applications www.objectweb. ... ➢Discover, introspect, manage, monitor and reconfigure CORBA components .... Borland Enterprise Server (BES) 5.0.2 & 5.2. ➢ IONA ORBacus ...
OpenCCM: The Open CORBA Components Platform 3rd ObjectWeb Conference

20th November 2003, INRIA Rocquencourt, France

Philippe Merle INRIA Futurs – Lille – Jacquard Project OpenCCM Project Leader

www.objectweb.org

Outline

ÎCORBA Components specification ÎOpenCCM goals ÎOpenCCM main features

¾The open production tool chain ¾The open packaging and assembling tool chain ¾The open distributed deployment infrastructure ¾The open container runtime framework ¾The open management framework

ÎOpenCCM supported environments ÎOpenCCM perspectives www.objectweb.org

ObjectWeb - D2 - November 2003

1

CORBA Components Specification

ÎDefined by the Object Management Group (OMG) ÎA set of concepts, notations, and APIs to ¾Design ¾Implement ¾Package ¾Assemble ¾Deploy ¾Execute

distributed, heterogeneous, secure, transactional, server-side scalable, CORBA component-based applications www.objectweb.org

ObjectWeb - D3 - November 2003

OpenCCM Goals

ÎFederate a world-wide community around CORBA component-based middleware and applications ¾Users, developers, and contributors ¾Industrial and academic R&D zTHALES, Cadena from Kansas University, …

ÎProvide the Open CORBA Components platform ¾Reference implementation ¾ORB product independent ¾Modular, extensible and adaptable for building CCM++

ÎSee at http://openccm.objectweb.org ¾Open source licensed under LGPL ¾Hosted by the ObjectWeb consortium www.objectweb.org

ObjectWeb - D4 - November 2003

2

Main Features

ÎThe open production tool chain ¾Design, define, implement, and compile CORBA components

ÎThe open packaging and assembling tool chain ¾Package and assemble CORBA components

ÎThe open distributed deployment infrastructure ¾Deploy, install, instantiate, and configure CORBA components

ÎThe open container runtime framework ¾Host and execute CORBA components

ÎThe open management framework ¾Discover, introspect, manage, monitor and reconfigure CORBA components www.objectweb.org

ObjectWeb - D5 - November 2003

The Open Production Tool Chain ÎFront-end compilers for ¾OMG Interface Definition Language 3.0 (OMG IDL) ¾OMG Persistent State Definition Language (OMG PSS) ¾OMG Component Implementation Definition Language (OMG CIDL) ‹UML Profile for CORBA Components ÎMiddle-end repository ¾Abstract Syntax Tree (AST) ¾CORBA 3.0.x Interface Repository ÎBack-end generators for ¾Client and server equivalent OMG IDL 2.x mapping ¾CIDL related Java container code ¾PSDL related Java interfaces and implementations ¾Java templates for implementing components ¾OMG IDL 3.0, PSDL, CIDL, and UML pretty-printers ÎTo do ‹Generation of XML CCD, CSD, and CPF from OMG CIDL www.objectweb.org

ObjectWeb - D6 - November 2003

3

The Open Production Tool Chain Modular & Extensible Architecture IDE XMI UML UML XMI XMIfiles UML files

XMI UML Front end

OMG IDL/PSDL/CIDL Front end

Other Other Front Front ends ends Other files Other Other files Notations www.objectweb.org

IDL/CIDL IDL/CIDL OMG IDL/ files files PSDL/CIDL

IDL/PSDL/CIDL IDL/PSDL/CIDL Generators Generators

UML

IDL IDL CIDL OMG IDL/ CIDL files PSDL/CIDL files

XMI files XMI files XMI UML

XMI UML XMI Generator Generators

OpenCCM Interface Repository

Container code Stubs/skeletons Generators Generators

Container code

XML XML CCD CCD Generator Generators

XML XML XML CORBA Component Component Component descriptor descriptor descriptors

Component Component Implementation Implementation Generators Generators

Implementation templates

Other generators Generators

Other Files

ObjectWeb - D7 - November 2003

Cadena from Kansas University = IDE Eclipse + OpenCCM

www.objectweb.org

ObjectWeb - D8 - November 2003

4

The Open Packaging and Assembling Tool Chain

ÎA stand-one packaging and assembling tool ¾All CCM XML descriptors and ZIP archives supported

www.objectweb.org

ObjectWeb - D9 - November 2003

The Open Packaging and Assembling Tool Chain

ÎA software framework for building customized packaging and assembling tools

Data Binding

44DTD XML XML 4DTD DTD XML CCM du CCM du CCM du CCM XML DTDs

Zeus + Apollon

Zeus = XML DTD Æ Java Data classes Apollon = XML DTD Æ Java GUI classes

Swing Binding ZIP Archives Code XML Plug-in

XML Plug-in

Generic Browser Framework

ÎUsers can build their own P&A tool www.objectweb.org

ObjectWeb - D10 - November 2003

5

The Open Distributed Deployment Infrastructure

ÎMain supported features ¾All CCM XML descriptors and ZIP archives ¾CosNaming, CosTrading, and HomeFinder services ¾All Components::Deployment API

ÎComponent-based deployment infrastructure ¾IST COACH Distributed Computing Infrastructure (DCI) ¾Possible injection of non functional properties as persistency, transactions, security, etc. via containers

ÎTransactional distributed deployment ¾Rollback deployment when failures www.objectweb.org

ObjectWeb - D11 - November 2003

COACH Distributed Computing Infrastructure

www.objectweb.org

ObjectWeb - D12 - November 2003

6

Permanent Components

DCIManager NodeManager

NodeManager

Node_1

NodeManager

Node_3

Node_2

Middleware

CORBA www.objectweb.org

ObjectWeb - D13 - November 2003

CORBA Assembly Installation

Assigned Assembly XML+ Code

DCIManager NodeManager

NodeManager Installed Assembly Node_1

COACH www.objectweb.org

NodeManager

Node_3

Node_2

Middleware ObjectWeb - D14 - November 2003

7

CORBA Assembly Instantiation

AssemblyMgr instantiate

DCIManager NodeManager

NodeManager Installed Assembly Node_1

NodeManager

Node_3

Node_2

Middleware

COACH www.objectweb.org

ObjectWeb - D15 - November 2003

CORBA Assembly Instantiation

AssemblyMgr DCIManager NodeManager

NodeManager Installed Assembly Node_1

COACH www.objectweb.org

NodeManager

Node_3

Node_2

Middleware ObjectWeb - D16 - November 2003

8

CORBA Component Configuration & Interconnection Running Assembly

AssemblyMgr DCIManager NodeManager

NodeManager Installed Assembly Node_1

NodeManager

Node_3

Node_2

COACH

Middleware

www.objectweb.org

ObjectWeb - D17 - November 2003

OpenCCM DCI Components Î DCIManager = a deployment domain ¾ Provides AssemblyFactory and HomeFinder

Î NodeManager = a virtual host ¾ Provides ComponentInstallation and ServerActivator

Î ComponentServerManager = a component server ¾ Provides ComponentServer

Î ContainerManager = a container ¾ Provides Container

Î AssemblyManager = an assembly deployment controller ¾ Provides Assembly

Î Each component provides other ports for management and supervision purposes

www.objectweb.org

ObjectWeb - D18 - November 2003

9

The Open Container Runtime Framework

ÎBuilt on top of CORBA 2.4 ÎScripts to start / stop CORBA services ¾CosNaming, CosTrading, and CosTransactions

ÎRuntime library for session components ¾Set of classes inherited by generated container code

ÎOMG Persistent State Service (PSS) implementation ¾Built on top of Java Data Object (JDO) ¾Currently Kodo product ¾Soon ObjectWeb Speedo

ÎFlexible Container Framework soon ¾IST COACH Extensible Container Architecture (ECA) www.objectweb.org

ObjectWeb - D19 - November 2003

Runtime Architecture

Assembly

Domain Node

Server

DCI Components Plugin

Fork

Philosopher Observer

Application Components

OpenCCM Flexible Container Framework

Plugin

OpenCCM PSS Runtime

CORBA 2.4 or higher

JDO Runtime

CosNaming Service

www.objectweb.org

CosTrading Service

CosTransactions Service

CosPersistentState Service

Data Stores

ObjectWeb - D20 - November 2003

10

The Open Management Framework

ÎA software framework for building graphical UI management browser ¾Extensible by plug-ins

ÎVarious browser plug-ins for ¾CORBA Object, Component and Home ¾Interface Repository ¾CosNaming ¾CosTrading ¾DCI

ÎIST COACH monitoring and testing infrastructure www.objectweb.org

ObjectWeb - D21 - November 2003

The OpenCCM Browser

www.objectweb.org

ObjectWeb - D22 - November 2003

11

IST COACH Monitoring and Testing Infrastructure Actor GUI

Web Browser

CORBA Components

Logging Components

Interface Repository

OpenCCM component servers Portable Interceptors for monitoring CORBA www.objectweb.org

ObjectWeb - D23 - November 2003

IST COACH Monitoring and Testing Infrastructure

www.objectweb.org

ObjectWeb - D24 - November 2003

12

IST COACH Monitoring and Testing Infrastructure

www.objectweb.org

ObjectWeb - D25 - November 2003

IST COACH Monitoring and Testing Infrastructure

www.objectweb.org

ObjectWeb - D26 - November 2003

13

Supported Environments For All OpenCCM Features

ÎJava 1.2.1, 1.3.x & 1.4.x ÎOperating systems

¾ Linux ¾ Solaris ¾ Windows ¾ Windows CE for PDA

ÎCORBA products

¾ Borland Enterprise Server (BES) 5.0.2 & 5.2 ¾ IONA ORBacus 4.1.x ¾ JacORB 2.0 ¾ The Community OpenORB 1.2.1, 1.3.0, 1.3.1 & 1.4.0 ¾ Potentially any full CORBA 2.4 implementation

www.objectweb.org

ObjectWeb - D27 - November 2003

Perspectives for OpenCCM 1.0

ÎImprove and complete all current main features ÎProvide the full container support ¾CORBA Component Descriptor generator ¾Service, Process, and Entity containers ¾All CCM container API ¾Services injected in containers zPersistency, transaction, security, notification

¾IST COACH Extensible Container Architecture

ÎLightweight CORBA Components in C++ ¾THALES contribution in ITEA OSMOSE project

ÎOpen Model-Driven CORBA Components platform

¾Design components, implementations, and assemblies with UML ¾Generate all OMG IDL, CIDL, implementations, CAD files ¾Ready to be deployed and managed

www.objectweb.org

ObjectWeb - D28 - November 2003

14

Thank You – Q/A ÎCurrent release = 0.8.1 ÎWeb site ¾On-line information and documentation

¾http://openccm.objectweb.org

ÎForge site ¾Releases, CVS, bug tracking, current tasks

¾http://forge.objectweb.org/projects/openccm

ÎMailing lists ¾[email protected] ¾[email protected] ¾[email protected] www.objectweb.org

ObjectWeb - D29 - November 2003

15

Suggest Documents