monitoring osgi platforms with proactive virginie legrand [email protected] oasis...
Post on 20-Dec-2015
220 views
TRANSCRIPT
Monitoring OSGi Monitoring OSGi platforms with platforms with
ProActiveProActive
Virginie LegrandVirginie Legrand
[email protected]@sophia.inria.frOASIS Team - INRIA Sophia OASIS Team - INRIA Sophia
Antipolis Antipolis
22Grid@works 2006
OutlineOutline
Introduction : The PISE projectIntroduction : The PISE project A solution for Large scale deployment of A solution for Large scale deployment of
services:services: A library for remote deploymentA library for remote deployment A Monitoring and Management toolA Monitoring and Management tool
Technical elements : New features in Technical elements : New features in ProActiveProActive ProActive on top of OSGiProActive on top of OSGi An extended JMX connector based on ProActiveAn extended JMX connector based on ProActive
Conclusion and PerspectivesConclusion and Perspectives
33Grid@works 2006
Context : The PISE ProjectContext : The PISE Project
French gov. funded project (RNRT program)French gov. funded project (RNRT program) Project consortiumProject consortium
3 French companies3 French companies 2 French research labs2 French research labs
Develop a middlewareto build and to host M2M
serviceson industrial gateways
in power distribution domain
Develop a middlewareto build and to host M2M
serviceson industrial gateways
in power distribution domain
Software engineering methods and tools to develop,
to deployand administrate
business services
Software engineering methods and tools to develop,
to deployand administrate
business services
Runtime environmenton the top of OSGi™ platforms
Compliance with standardsFlexibilitySecurity
Runtime environmenton the top of OSGi™ platforms
Compliance with standardsFlexibilitySecurity
44Grid@works 2006
Code generation
Model Editor
OSGi™ industrial gateway
Device
Service
Device
Service
Device
Service
DS
BS SecureDeployment
Monitoring
BS
Alarm
BS
Description of an application modelFunctional Aspects : Device Services and Business Services
Non-functional Aspects : Security, Distribution, Trace (log)
Sepam
Micrologic
Deployment
and
Monitoring
PISE : objectivesPISE : objectives
55Grid@works 2006
OSGi Gateway : OSGi Gateway : http://www.osgi.orghttp://www.osgi.org
Defines a framework that allows services to be loaded in a service Defines a framework that allows services to be loaded in a service gateway like a set top box, or an application (ex eclipse Framework, gateway like a set top box, or an application (ex eclipse Framework, Jonas …) Jonas …)
A sharable JVM between several applications :A sharable JVM between several applications : Shares packagesShares packages Launch / stop services Launch / stop services Dynamic deployment of services without reboot of the gatewayDynamic deployment of services without reboot of the gateway
66Grid@works 2006
OutlineOutline
Introduction : The PISE projectIntroduction : The PISE project A solution for Large scale deployment of A solution for Large scale deployment of
services :services : A library for remote deploymentA library for remote deployment A Monitoring and Management toolA Monitoring and Management tool
Technical elements : New features in Technical elements : New features in ProActiveProActive ProActive on top of OSGiProActive on top of OSGi An extended JMX connector based on ProActiveAn extended JMX connector based on ProActive
Conclusion and PerspectivesConclusion and Perspectives
77Grid@works 2006
Rationale : Large scale Rationale : Large scale deploymentdeployment
Large scale deployment and Large scale deployment and management is a painful operation management is a painful operation that cannot be done by hand.that cannot be done by hand.
Objectives:Objectives: From a deployment plan, we want to From a deployment plan, we want to
initiate applications installation on a big initiate applications installation on a big number of heterogeneous platformsnumber of heterogeneous platforms
1 target, 10 targets, 1000, 10 000 ? 1 target, 10 targets, 1000, 10 000 ?
88Grid@works 2006
Large scale Deployment Large scale Deployment processusprocessus
Create the deployment structureCreate the deployment structure Gateways are grouped according precise criteria in Gateways are grouped according precise criteria in
a hierarchical set.a hierarchical set. IntrospectIntrospect gateways in order to know their gateways in order to know their
dynamic characteristics and already deployed dynamic characteristics and already deployed services services
Select implementations fitting to the gatewaysSelect implementations fitting to the gateways Resolve dependencies for selected servicesResolve dependencies for selected services Install and start services on the set of gatewaysInstall and start services on the set of gateways
99Grid@works 2006
A library for large scale A library for large scale deployment deployment
Based on Based on ProActiveProActive Asynchronous and Group communications that Asynchronous and Group communications that
provide the support for scalability needs.provide the support for scalability needs. Adresses large scale deployment concerns :Adresses large scale deployment concerns :
Gateways states are stored in a database: Initial Gateways states are stored in a database: Initial state + event-based updatesstate + event-based updates
Up-to-date gateways snapshot eases the computation Up-to-date gateways snapshot eases the computation of deployment plans – push modelof deployment plans – push model..
Execution of deployment plan architectureExecution of deployment plan architecture Parallel and,Parallel and, TransactionalTransactional
1010Grid@works 2006
Parallel Execution of Parallel Execution of Deployment PlansDeployment Plans
Unit deployment planUnit deployment plan Ordered list of actions to Ordered list of actions to
remotely execute on the gateway remotely execute on the gateway to deploy an application.to deploy an application.
Example : Example : install install http://192.168.0.9/http://192.168.0.9/obrobr
/service1.jar/service1.jar Gobal deployment planGobal deployment plan
A set of Unit Plans corresponding A set of Unit Plans corresponding to each of the gatewaysto each of the gateways
Can be executed in 2 modes:Can be executed in 2 modes: BroadcastBroadcast ScatterScatter
Hierarchical structure of plan Hierarchical structure of plan executors that manage a sub-executors that manage a sub-group of gatewaysgroup of gateways..
Plan ExecutorPlan Executor
GlobalGlobalPlanPlan
OSGi GW OSGi GWOSGi GW
1111Grid@works 2006
Some actions could have failed driving the gateway into an incoherent Some actions could have failed driving the gateway into an incoherent state.state.
Rolls back the gateway into a stable stateRolls back the gateway into a stable state
Transactional mechanism for deployment processusTransactional mechanism for deployment processusAllows to validate or cancel a plan executionAllows to validate or cancel a plan execution
Validation : New state declared as stable.Validation : New state declared as stable. Cancellation : The gateway unrolls the deployment plan.Cancellation : The gateway unrolls the deployment plan.
Behind the scene :Behind the scene : Concurrent execution of several transactions within the same Concurrent execution of several transactions within the same
gatewaygateway Transactions could be started on either a single gateway or a group Transactions could be started on either a single gateway or a group
of gatewaysof gateways Compensation plan: generated during each other parallel execution Compensation plan: generated during each other parallel execution
of a plan on a same gateway of a plan on a same gateway : : Contains the list of actions that have not been done but that should have been Contains the list of actions that have not been done but that should have been
done.done.
Transactional and Parallel Transactional and Parallel executionexecution
1212Grid@works 2006
OSGi GW
OSGi GW
OSGi GW
OSGi GW
Transactional mode Transactional mode exampleexample
Deployer
Model Editor
DS
BS
Code generation
Plan ComputationPlan Computation
Persistant gateways statesPersistant gateways states
Global Plan
Unit Plan
VALIDATIONVALIDATION
CANCELLATIONCANCELLATION
1313Grid@works 2006
Compensation planCompensation plan
OSGi GW
OSGi GW
T1
T2
T1’
T2’
CANCELLATION :CANCELLATION :T1T1
Compensation plan
Compensation plan
1414Grid@works 2006
OutlineOutline
Introduction : The PISE projectIntroduction : The PISE project A solution for Large scale deployment of A solution for Large scale deployment of
services :services : A library for remote deploymentA library for remote deployment A Monitoring and Management toolA Monitoring and Management tool
Technical elements : New features in Technical elements : New features in ProActiveProActive ProActive on top of OSGiProActive on top of OSGi An extended JMX connector based on ProActiveAn extended JMX connector based on ProActive
Conclusion and PerspectivesConclusion and Perspectives
1515Grid@works 2006
Monitoring and Management Monitoring and Management of OSGi Gatewaysof OSGi Gateways
Monitoring toolMonitoring tool:: Gathers and Displays gateways events Gathers and Displays gateways events
on the administrator‘s consoleon the administrator‘s console :: Allows remote access to the gatewayAllows remote access to the gateway
Management toolManagement tool:: Manages remote applications’ lifecycle Manages remote applications’ lifecycle Correctives management tasksCorrectives management tasks
Scalable Scalable Grouped actionsGrouped actions
1616Grid@works 2006
A graphical tool for large scale A graphical tool for large scale monitoringmonitoring
1717Grid@works 2006
OutlineOutline
Introduction : The PISE projectIntroduction : The PISE project A solution for Large scale deployment of A solution for Large scale deployment of
services :services : A library for remote deploymentA library for remote deployment A Monitoring and Management toolA Monitoring and Management tool
Technical elements : New features in Technical elements : New features in ProActiveProActive ProActive on top of OSGiProActive on top of OSGi An extended JMX connector based on ProActiveAn extended JMX connector based on ProActive
Conclusion and PerspectivesConclusion and Perspectives
1818Grid@works 2006
ProActive on top of OSGiProActive on top of OSGi
ProActive Bundle :ProActive Bundle : contains all classes contains all classes
required to launch required to launch a ProActive a ProActive runtime on top of runtime on top of OSGi .OSGi .
offers a serviceoffers a service , , the the ProActiveServiceProActiveService
HTTP Communication HTTP Communication Use of the OSGi stantard Use of the OSGi stantard
HTTP service HTTP service
OSGi gatewayOSGi gateway
HTT
PSer
vice
HTT
PSer
vice
ProActive
ProActive ApplicationProActive Application
Act
ive
bund
le”
1919Grid@works 2006
A ProActive JMX ConnectorA ProActive JMX Connector 3 levels architecture3 levels architecture
Resources instrumentation Resources instrumentation : : MBeansMBeans
MBean ServerMBean Server Remote access : Remote access :
connectorsconnectors and adaptors and adaptors
Notifications == Events == Events Connector
customization : : ProActive Connector: ProActive Connector:
Active object Active object Extended for Extended for
asynchronismasynchronism
MBean Server
MBean
RMI ConnectorRMI Connector HTML AdaptorHTML Adaptor
Instrumentation
MBean MBeanPISE
Agent
RMI ClientHTML
Browser
ProActive ProActive ConnectorConnector
ProActive JMX Client
2020Grid@works 2006
OutlineOutline
Introduction : The PISE projectIntroduction : The PISE project A solution for Large scale deployment of A solution for Large scale deployment of
services :services : A library for remote deploymentA library for remote deployment A Monitoring and Management toolA Monitoring and Management tool
Technical elements : New features in Technical elements : New features in ProActiveProActive ProActive on top of OSGiProActive on top of OSGi An extended JMX connector based on ProActiveAn extended JMX connector based on ProActive
Conclusion and PerspectivesConclusion and Perspectives
2121Grid@works 2006
Conclusion and future Conclusion and future worksworks
Complete solution for large scale Complete solution for large scale deployment : deployment : From deployment plan computation to From deployment plan computation to
installation, including remote gateways installation, including remote gateways start up.start up.
Towards :Towards : large scale management of applications large scale management of applications
(Services4All)(Services4All) An OSGi-ed version of ProActive fractal An OSGi-ed version of ProActive fractal
applications applications … … and an « a la carte » ProActive !and an « a la carte » ProActive !