Hi JB,

Please don't think I'm advertising/trolling - love Karaf & love the idea of
decanter. There is definitely stuff we can contribute & when the proposal
goes through we can discuss what that is.

Thanks,
Jimmi

On 15 October 2014 09:27, Jean-Baptiste Onofré <j...@nanthrax.net> wrote:

> Hi Jimmi,
>
> If you are ready to donate hawtio and the fabric metric stuff in Decanter,
> it would be great.
> However I'm not sure it's what you proposed.
>
> But you got the purpose of the Decanter proposal: build a monitoring
> platform for Karaf, as part of the Karaf subproject ecosystem. So any
> contribution, idea is more than welcome !
>
> As I said in previous e-mail, I don't want to have any troll or any "side
> project promotion/advertising" is this thread. I started Decanter prototype
> and proposal just in regard of a need in the Apache Karaf ecosystem.
>
> Thanks a lot for your feedback, and I'm eager to see contributions for
> hawtio and more.
>
> By the way, I think I will start a formal vote for donation later today.
>
> Regards
> JB
>
>
> On 10/15/2014 10:12 AM, Jimmi Dyson wrote:
>
>> Continuing on from what Guillaume said, in fabric we have some of the
>> features that you're proposing for Decanter & should be able to
>> contibute back, refactoring anything that is fabric specific (of which
>> there isn't much). We have an Elasticsearch configuration factory that
>> uses the SMX Elasticsearch bundle. This includes plugin support (albeit
>> plugins need to be fragment bundles), that could be used with no
>> refactoring at all (in fabric we have a custom discovery plugin that
>> doesn't need to be installed) - we can get this in to the SMX
>> Elasticsearch bundle probably? This allows you to embed full clusters
>> inside Karaf deployments & even have Elasticsearch
>> client/transport/tribe nodes hooked up to externally configured clusters
>> if you want.
>>
>> Fabric also has pluggable log/metric collection services & pluggable
>> log/metric storage services & again this is something that should be
>> usable with little/no refactoring in Decanter if you wanted.
>>
>> hawtio is a great front end (nothing fabric specific in it, although
>> there are plugins for fabric) & would give you a single place where all
>> your dashboards from different tools (Kibana, Grafana, etc) are in a
>> single place.
>>
>> I'm really happy to see this proposal & hope we can contribute to it.
>>
>> On 15 October 2014 08:41, Charlie Mordant <cmorda...@gmail.com
>> <mailto:cmorda...@gmail.com>> wrote:
>>
>>     Hi J.B.,
>>
>>     I saw an HawtIO plugin for Kibana (but didn't tested it), so it
>>     could be possible that you'll have nothing to do for you HawtIO
>>     integration :p.
>>
>>     As an addition, a Decanter Karaf feature could be made to ease the
>>     user interaction with ElasticSearch (installing either Jelastic or
>>     Spring-data-elasticsearch).
>>
>>     May be a Docker container can be implemented to ease
>>     Elastic+Kibana+logstash installation (and may be karaf command for
>>     installing all: the container in an Unix env, boot2docker + the
>>     container in a MacOSX one, Vagrant + CoreOS + container in a windows
>>     one....).
>>
>>     Nice name however: Decanter sounds well with a Karaf and an old
>>     Pomard :), it also explains well the goal of the product.
>>     It's also nice idea, I thought to do the same for my distro and it's
>>     far better if it's an Apache/Karaf product!
>>
>>     Good luck for the job, I'll try an Elastic Karaf feature on my side
>>     (then give it to you).
>>
>>     Best regards,
>>
>>     2014-10-15 5:17 GMT+02:00 Andreas Pieber <anpie...@gmail.com
>>     <mailto:anpie...@gmail.com>>:
>>
>>         Hey,
>>
>>         The collection definitely sounds like a perfect idea for a Karaf
>>         sub project to me. Beside the great potential for the components
>>         I like the especially fitting name 😊 +1
>>
>>         Kind regards,
>>         Andreas
>>
>>         On Oct 14, 2014 5:13 PM, "Jean-Baptiste Onofré" <j...@nanthrax.net
>>         <mailto:j...@nanthrax.net>> wrote:
>>
>>             Hi all,
>>
>>             First of all, sorry for this long e-mail ;)
>>
>>             Some weeks ago, I blogged about the usage of ELK
>>             (Logstash/Elasticsearch/__Kibana) with Karaf, Camel,
>>             ActiveMQ, etc to provide a monitoring dashboard (know what's
>>             happen in Karaf and be able to store it for a long period):
>>
>>             http://blog.nanthrax.net/2014/__03/apache-karaf-cellar-
>> camel-__activemq-monitoring-with-elk-__elasticsearch-
>> logstash-and-__kibana/
>>
>>             <http://blog.nanthrax.net/2014/03/apache-karaf-cellar-
>> camel-activemq-monitoring-with-elk-elasticsearch-logstash-and-kibana/>
>>
>>             If this solution works fine, there are some drawbacks:
>>             - it requires additional middlewares on the machines.
>>             Additionally to Karaf itself, we have to install logstash,
>>             elasticsearch nodes, and kibana console
>>             - it's not usable "out of the box": you need at least to
>>             configure logstash (with the different input/output
>>             plugins), kibana (to create the dashboard that you need)
>>             - it doesn't cover all the monitoring needs, especially in
>>             term of SLA: we want to be able to raise some alerts
>>             depending of some events (for instance, when a regex is
>>             match in the log messages, when a feature is uninstalled,
>>             when a JMX metric is greater than a given value, etc)
>>
>>             Actually, Karaf (and related projects) already provides most
>>             (all) data required for the monitoring. However, it would be
>>             very helpful to have a "glue", ready to use and more user
>>             friendly, including a storage of the metrics/monitoring data.
>>
>>             Regarding this, I started a prototype of a monitoring
>>             solution for Karaf and the applications running in Karaf.
>>             The purpose is to be very extendible, flexible, easy to
>>             install and use.
>>
>>             In term of architecture, we can find the following component:
>>
>>             1/ Collectors & SLA Policies
>>             The collectors are services responsible of harvesting
>>             monitoring data.
>>             We have two kinds of collectors:
>>             - the polling collectors are invoked by a scheduler
>>             periodically.
>>             - the event driven collectors react to some events.
>>             Two collectors are already available:
>>             - the JMX collector is a polling collector which harvest all
>>             MBeans attributes
>>             - the Log collector is a event driven collector,
>>             implementing a PaxAppender which react when a log message
>> occurs
>>             We can planned the following collectors:
>>             - a Camel Tracer collector would be an event driven
>>             collector, acting as a Camel Interceptor. It would allow to
>>             trace any Exchange in Camel.
>>
>>             It's very dynamic (thanks to OSGi services), so it's
>>             possible to add a new custom collector (user/custom
>>             implementation).
>>
>>             The Collectors are also responsible of checking the SLA. As
>>             the SLA policies are tight to the collected data, it makes
>>             sense that the collector validates the SLA and call/delegate
>>             the alert to SLA services.
>>
>>             2/ Scheduler
>>             The scheduler service is responsible to call the Polling
>>             Collectors, gather the harvested data, and delegate to the
>>             dispatcher.
>>             We already have a simple scheduler (just a thread), but we
>>             can plan a quartz scheduler (for advanced cron/trigger
>>             configuration), and another one leveraging the Karaf
>> scheduler.
>>
>>             3/ Dispatcher
>>             The dispatcher is called by the scheduler or the event
>>             driven collectors to dispatch the collected data to the
>>             appenders.
>>
>>             4/ Appenders
>>             The appender services are responsible to send/store the
>>             collected data to target systems.
>>             For now, we have two appenders:
>>             - a log appender which just log the collected data
>>             - a elasticsearch appender which send the collected data to
>>             a elasticsearch instance. For now, it uses "external"
>>             elasticsearch, but I'm working on an elasticsearch feature
>>             allowing to embed elasticsearch in Karaf (it's mostly done).
>>             We can plan the following other appenders:
>>             - redis to send the collected data in Redis messaging system
>>             - jdbc to store the collected data in a database
>>             - jms to send the collected data to a JMS broker (like
>> ActiveMQ)
>>             - camel to send the collected data to a Camel direct-vm/vm
>>             endpoint of a route (it would create an internal route)
>>
>>             5/ Console/Kibana
>>             The console is composed by two parts:
>>             - a angularjs or bootstrap layer allowing to configure the
>>             SLA and global settings
>>             - embedded kibana instance with pre-configured dashboard
>>             (when the elasticsearch appender is used). We will have a
>>             set of already created lucene queries and a kind of
>>             "Karaf/Camel/ActiveMQ/CXF" dashboard template. The kibana
>>             instance will be embedded in Karaf (not external).
>>
>>             Of course, we have ready to use features, allowing to very
>>             easily install modules that we want.
>>
>>             I named the prototype Karaf Decanter. I don't have
>>             preference about the name, and the location of the code (it
>>             could be as Karaf subproject like Cellar or Cave, or
>>             directly in the Karaf codebase).
>>
>>             Thoughts ?
>>
>>             Regards
>>             JB
>>             --
>>             Jean-Baptiste Onofré
>>             jbono...@apache.org <mailto:jbono...@apache.org>
>>             http://blog.nanthrax.net
>>             Talend - http://www.talend.com
>>
>>
>>
>>
>>     --
>>     Charlie Mordant
>>
>>     Full OSGI/EE stack made with Karaf:
>>     https://github.com/OsgiliathEnterprise/net.osgiliath.parent
>>
>>
>>
> --
> Jean-Baptiste Onofré
> jbono...@apache.org
> http://blog.nanthrax.net
> Talend - http://www.talend.com
>

Reply via email to