Jug Poitou Charentes - Apache, OSGi and Karaf

  • 3,652 views
Uploaded on

Quick overview of the Apache Software Foundation, OSGi, OSGi at the ASF, Blueprint and Karaf

Quick overview of the Apache Software Foundation, OSGi, OSGi at the ASF, Blueprint and Karaf

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
3,652
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
6

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • The Foundation structure\nAs the Apache Web Server started to grow in market share and popularity, due to synergy of its technical merit and to the openness of the community behind the project, people started to create satellite projects. Influenced by the spirit of the community they were used to, they adopted the same traditions of community management.\nSo, by the time the ASF was created, there were several separate communities, each focused on a different side of the "web serving" problem, but all united by a common set of goals and a respected set of cultural traditions in both etiquette and process.\nThese separate communities were referred to as "projects" and while similar, each of them exhibited little differences that made them special.\nIn order to reduce friction and allow for diversity to emerge, rather than forcing a monoculture from the top, the projects are designated the central decision-making organizations of the Apache world. Each project is delegated authority over development of its software, and is given a great deal of latitude in designing its own technical charter and its own governing rules.\nAt the same time, the cultural influence of the original Apache group was strong and the similarities between the various communities are evident, as we'll see later.\nThe foundation is governed by the following entities:\nBoard of Directors (board) governs the foundation and is composed of members.\nProject Management Committees (PMC) govern the projects, and they are composed of committers. (Note that every member is, by definition, also a committer.)\n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n

Transcript

  • 1. Apache, OSGi,Blueprint and Karaf Guillaume Nodet January 20, 2011
  • 2. Your presenter: Guillaume NodetFuseSource http://fusesource.comApache Software Foundation Member, VPApache Karaf, PMC Member of ActiveMQ,Aries, Camel, CXF, Felix, Geronimo,Karaf, Mina, Ode, ServiceMixCo-creator of ServiceMix, Karaf, MinaSSHDMember of the OSGi EEG
  • 3. Overall agendaThe Apache Software FoundationOSGi overviewOSGi at the ASFQuick Blueprint introApache Karaf
  • 4. The Apache Software Foundation What it is and how it works...
  • 5. ScheduleWhat is theApache Software ProjectFoundation ManagementA bit of The Foundationhistory infrastructureMeritocracy Other foundationThe Foundation entitiesstructure ConclusionRoles
  • 6. What is the ApacheSoftware Foundation? Non-profit organization Open, collaborative software development Independent legal entity for donations Means for individuals to be sheltered from legal suits Protect the ‘Apache’ brand
  • 7. HistoryHTTPD web server from the NCSACommunity to support itDevelopers called themselves the“Apache Group”ASF created in 1999
  • 8. MeritocracyNot initiated by a single personMore people attracted and startedcontributingWhen a person “earned” the merit,access to the repository was grantedScales well as newcomers arevolunteers and no power to steal
  • 9. Foundation structure Projects are delegated authority and are self-governing Board of Directors Project Management Committees
  • 10. Board of DirectorsManage and oversee the corporation,its assets and resourcesTechnical authority assigned to PMCNine individuals (members), electedevery year
  • 11. Project Management CommitteesEstablished and terminated byresolution of the BoardOne officer (VP) appointed by theBoard (PMC chair). Establish rules,report to the board, performadministrative tasksPMC oversee legal aspects andcommunity health
  • 12. OfficersOversee the day-to-day affairsElected by the Board
  • 13. RolesuserdevelopercommitterPMC memberPMC chairASF member
  • 14. Project ManagementCollaborative and consensus-basedpocessNo single set of rules between PMCs
  • 15. Project Management (cont)Communication OperationDocumentation IndividualsDecision making ConfidentialityPhilosophy vs public
  • 16. The Incubatorfitering (non technical) proposals ofnew projectshelp creation / infrastrucurementor the incubated community tobecome open and meritocraticevaluate the maturity for graduation
  • 17. The Incubator (cont.)working code basecopyright donationsponsoring memberincrease diversity (long termstability, variety of technicalvisions)
  • 18. Other entitiesInfrastructure teamAttic, Labs, Legal Affairs, PublicRelations, Conferences ...
  • 19. OSGi
  • 20. OSGi AllianceFormerly known as the Open ServicesGateway InitiativeIndustry consortiumDefines OSGi Service PlatformServeral expert groups
  • 21. OSGi Architecture Overview
  • 22. OSGi FrameworkComponent orientedService oriented architectureRun multiple applicationsSingle VMSeparate class loader per bundleDynamic
  • 23. OSGi Framework layers
  • 24. OSGi momentumOSGi technology has moved beyondoriginal target domainInitial success story was Eclipse RCPMore recent success stories inenterprise scenarios
  • 25. OSGi SpecificationsOSGi R4.2 released in Sept/09 Blueprint, Remote Services, Web Applications, JNDI, JTA, JDBC, JPANext Core release in Q1 2011Next Enterprise release in Q1 2012 Subsystems, OBR ...
  • 26. Modularity Layer
  • 27. Standard JavaModularity Limitations Limited scoping mechanism Simplitic version handling Implicit dependencies Split packages by default Low-level support for dynamics Unsophisticated consitency model Missing module concept
  • 28. OSGi Frameworkmodularity supportResolves nearly all deficiencies OSGi bundles as a boundary for a module Bundle metadata explicitly declares versioned dependencies Framework automatically manages bundle code dependencies Framework enforces sophisticated consistency rules for class loading
  • 29. Bundle Lifecycle
  • 30. OSGi at the ASFOverview of the various projects
  • 31. 88 Top Level ProjectsMore then 40 incubating projects
  • 32. ClassificationNon JavaNon OSGi awareOSGi aware (provide OSGi bundles)OSGi based
  • 33. OSGi BasedAriesFelix IncubatorKaraf AceServiceMix CelixSling ClerezzaGeronimo (i.p.)
  • 34. OSGi AwareAbdera Directory (i.p.)ActiveMQ HarmonyAxis HttpComponentsCamel MinaCommons OpenEJBCXF OpenJPADB Synapse
  • 35. BlueprintDI brought to OSGi
  • 36. OverviewDependency injection / IOCHandle legacy codeHandle OSGi dynamicsHide the OSGi API
  • 37. ConfigurationExtender patternXML resourcesMetadata Blueprint Bundle Metadata XML Blueprint Extender
  • 38. Simple example<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0”> <service interface=“org.poitoucharentesjug.User”> <bean class=“org.poitoucharentesjug.impl.UserImpl”> <argument value=“gnodet” /> </bean> </service></blueprint>
  • 39. Managers managerbean service-reference service reference reference-list
  • 40. OverviewApache Karaf is a small OSGi based runtime which provides a lightweight container onto which various components and applications can be deployed.
  • 41. Karaf ConsolePoweful command line shellHighly extensibleSSH access
  • 42. LoggingSupport multiple APIs OSGi, JCL, JUL, Log4j, Slf4jUses a single back-endDynamic reconfiguration throughConfigAdminShell integration
  • 43. Deployer
  • 44. ProvisionningFeatures conceptMaven integration (plugin, url handler)Drives OSGi SubSystems specification
  • 45. OtherOS integrationInstances managementJAAS based security
  • 46. gnodet@gmail.com