Apache Karaf First Birthday Meeting (2011-06-16)

Apache Karaf project will have one year old the 16th of June, 2011.

It's a good time to make a review on this past year and prepare the future.

Schedule

This meeting will stand over Skype on Thursday, 16th of June, 2011, at 18:00GMT.

Agenda

The following points will be discussed:

  • Introduction of participants
    Each participant will introduce quickly
  • Summary about the Karaf activities during this past year
    It includes the website and download activity.
    A quick summary about the major enhancements/improvements will be done.
  • Next release planning
    Discussion about the release planning, define an agenda about the 3.0.0 release plan, 2.2.x release and EOL for 2.1.x
  • Technical and Architecture roadmap
    Discussion about the major changes to start to implement in Karaf, especially:
    • Test and work on the Karaf 3.0.0 around profiles/framework/maven plugin to simplify Karaf distribution
    • Shell context
    • Major dependencies upgrades (linked to Pax * projects)
    • ...

Participants

jbonofre will call the following participants into a Skype conference call:

Name

Apache ID

Skype ID

Jean-Baptiste Onofré

jbonofre

nanthrax

Andreas Pieber

pieber

dieing_phynix

Jamie Goodyear

jgoodyear

jgoodyear_icbts

Achim Nierbeck

anierbeck

anierbeck

Ioannis Canellos

iocanel

iocanel

Christian Schneider

cschneide

 

Łukasz Dywicki

splatch

 

Minute Notes

Karaf 3.0.0

The primary focus of community is to test and work on Karaf trunk branch (3.0.x). The purpose is to be able to release a version soon.

It means that:

  • Karaf 2.1.x will be deprecated and turn in EOL (End Of Life)
  • Karaf 2.2.x will be in maintenance mode as "previous" release
  • Karaf 3.0.x will be the new stable branch
  • Karaf 3.1.x will be the development branch

An effort is required to test all enhancements already performed on the trunk and implement the requirements.

The Karaf 3.1.x branch is going to be created in Jira and the issues will be assigned between Karaf 3.0.0 and 3.1.0 depending of the severity.
An e-mail will be send on the dev mailing list to discuss about the issues assignation.

Distribution and profiles

Currently, it's not so easy to create custom distribution (including in the Karaf embedded instances) and some projects require tweak on some config files (for instance etc/jre.properties for Apache CXF).

We already made some enhancements on trunk around the maven plugins (framework, etc).

We're going to brainstorm and act around the notions of:

  • Karaf distribution
  • Karaf profiles
  • Karaf archive (KAR)

The purpose is to start from a clean sheet to rethink the way that Karaf container should be used/packaged.

Improve Karaf development platform

Some mechanism should be discussed to increase bundle life cycle.

Some addition around "dev" commands could be interesting.

Web Console

The current Karaf web console is powered by the Felix one.

We propose to maintain this web console but we also propose to create a new web console specific to Karaf.

The purpose of this Karaf Console is:

  • to be sexy with a pro/enterprise look'n feel
  • to be highly brand-able. The purpose is to let the "client" projects (ServiceMix, etc) to customize the Karaf console.
  • to support a plugins system to let "client" projects to extend the console
  • to be powered by a modern and component oriented framework such as Wicket/Pax-Wicket
  • to be embedded in Karaf as an optional feature

Clustering and clouding

Karaf Cellar is a first step to turn Karaf into a cluster mode. The first Cellar 2.2.1 release will be available very soon.

The clustering and clouding roadmap includes:

  • Cellar already covers features and bundles replication/sync between Karaf instances.
  • Cellar should support OSGi services federation. It means that each Karaf instances know all services deployed on each instances and provides a proxy to access to service. Some services properties could be set containing cluster information or business information (custom properties at runtime).
  • The service proxy should use D-OSGi with an agnostic transport layer. The transport layer should be very fast and able to transport a high number of message between the stub and the skeleton. Some idea could be Hazelcast NIO, protobuf, Apache MINA, hawt, CXF. The transport layer shouldn't be linked to a message format.
  • Karaf cluster manager or D-OSGi management agent could be really interesting. It will allow to pick up a service (remote) depending of some filters (round robin, weight based, service properties regex, etc).
  • jclouds already provides Karaf features. It's a good solution to provide Karaf in the clouds.

Provisioning

Apache ACE will use Karaf as a runtime container. ACE will also be able to provision Karaf including Karaf specific layer (features, config, profiles, etc).

Cave OBR sub-project

As Cellar is a Karaf sub-project for clustering, we propose to create Karaf Cave OBR. Karaf Cave OBR is an OBR server deployable in Karaf.

Cave OBR will provide an OBR server implementation including:

  • P2P protocol support
  • REST administration interface
  • multi-repositories support
  • artifact live cycle support

To achieve this features, Cave could use existing projects such as Apache Felix Repository or Apache Archiva.

Next meeting

It's clear that this first birthday concall was really great and allow us to discuss on the global roadmap (more than Jira deeper work (wink)). We can share our vision about the roadmap and where we want to go for Karaf.

We propose to schedule a new concall in two or three months.

  • No labels