tag:blogger.com,1999:blog-81193619579706511482024-02-18T22:16:14.272-03:30I code by the sea.An Open Source developer in Newfoundland.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.comBlogger333125tag:blogger.com,1999:blog-8119361957970651148.post-90068166587273773892016-08-30T09:09:00.001-02:302016-08-30T09:09:44.577-02:30OpenDaylight Cookbook available for early access!<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNC7axN_RlF530Hqg95iC4etbO_7zzIIrQicarF41VQg1hbeJ8zaOLi7Ttv1GEuk82YCUUd-rhcXXhufasTI5IHI9Mh3dKZJ7AAkfnhDh7GOM8aoVwNQHOuUNV5DOV0b2RqqKD4I8aOhjK/s1600/Cover_Cookbook_OpenDaylight.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgNC7axN_RlF530Hqg95iC4etbO_7zzIIrQicarF41VQg1hbeJ8zaOLi7Ttv1GEuk82YCUUd-rhcXXhufasTI5IHI9Mh3dKZJ7AAkfnhDh7GOM8aoVwNQHOuUNV5DOV0b2RqqKD4I8aOhjK/s640/Cover_Cookbook_OpenDaylight.jpg" width="516" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://www.opendaylight.org/">OpenDaylight</a> Cookbook is available for <a href="https://www.packtpub.com/virtualization-and-cloud/opendaylight-cookbook">early access</a>!</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
Currently, you can obtain the book via Packt Publishing or Amazon:</div>
<ul style="border: 0px; color: #444444; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1em 30px; outline: 0px; padding: 0px; vertical-align: baseline;">
<li style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-family: inherit;"><span style="border: 0px; font-weight: 600; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Packt Publishing</span>: <a href="https://www.packtpub.com/virtualization-and-cloud/opendaylight-cookbook" style="-webkit-transition: color 0.2s linear, background 0.2s linear; border: 0px; color: #337eff; margin: 0px; outline: 0px; padding: 0px; text-decoration: none; transition: color 0.2s linear, background 0.2s linear; vertical-align: baseline;">https://www.packtpub.com/virtualization-and-cloud/opendaylight-cookbook</a></span></li>
<li style="border: 0px; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><span style="font-family: inherit;"><span style="border: 0px; font-weight: 600; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Amazon</span>: <a href="https://www.amazon.com/OpenDaylight-Cookbook-Mathieu-Lemay-ebook/dp/B01JS2KVTK" style="-webkit-transition: color 0.2s linear, background 0.2s linear; border: 0px; color: #337eff; margin: 0px; outline: 0px; padding: 0px; text-decoration: none; transition: color 0.2s linear, background 0.2s linear; vertical-align: baseline;">https://www.amazon.com/OpenDaylight-Cookbook-Mathieu-Lemay-ebook/dp/B01JS2KVTK</a></span></li>
</ul>
<h4>
<span style="font-family: inherit;">Why do I want this book?</span></h4>
<div style="border: 0px; margin-bottom: 1.5em; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="color: white; font-family: inherit;">Within each chapter of the cookbook you'll find simple, no-nonsense instructions for how to accomplish tasks; we go beyond the introductory documentation and delve into how to get things done.</span></div>
<h4>
<span style="font-family: inherit;">What is Early Access?</span></h4>
<div style="border: 0px; margin-bottom: 1.5em; orphans: 4; outline: 0px; padding: 0px; vertical-align: baseline;">
<span style="color: white; font-family: inherit;">Packt Publishing offers early access to select titles to allow readers the most up to date revisions of books while under development. For more information please see https://www.packtpub.com/books/info/packt/alpha.</span></div>
icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-10702247116042463162016-07-17T14:00:00.000-02:302016-07-17T14:00:38.834-02:30OpenDaylight Summit 2016: Apache Karaf Report<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivqLpEpYvbyECQ2Z_6sDch9V3SwUc4fXdfkWl3LCer4lJEtKmOyC7p4RSQOyXBJJF4N_tnrTXr_3YCkMnMFUjnTROgUxRFRh9mCpycBFoGVewcqSXV3IxXFLTe5CoW-R0X6HDYfFnkLwS0/s1600/ODL-AKR-2016.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivqLpEpYvbyECQ2Z_6sDch9V3SwUc4fXdfkWl3LCer4lJEtKmOyC7p4RSQOyXBJJF4N_tnrTXr_3YCkMnMFUjnTROgUxRFRh9mCpycBFoGVewcqSXV3IxXFLTe5CoW-R0X6HDYfFnkLwS0/s640/ODL-AKR-2016.png" width="640" /></a></div>
<br />
<span style="color: white; font-family: "lato" , "helvetica neue" , "lucida grande" , "helvetica" , "arial" , sans-serif; font-size: 14px; line-height: 22.4px;">My talk submission to OpenDaylight Summit 2016 was accepted! I'm very excited to have this opportunity to address the <a href="http://events.linuxfoundation.org/events/opendaylight-summit">OpenDaylight community directly this Fall in Seattle</a>. If you're attending the conference, please feel free to sign up for my talk on Sched (http://sched.co/7RBf).</span><br />
<h2>
<span style="color: white; font-family: "lato" , "helvetica neue" , "lucida grande" , "helvetica" , "arial" , sans-serif; font-size: 14px; line-height: 22.4px;">Abstract: OpenDaylight's Apache Karaf Report:</span></h2>
<span style="color: white; font-family: "lato" , "helvetica neue" , "lucida grande" , "helvetica" , "arial" , sans-serif; font-size: 14px;">Apache Karaf is at the core of any OpenDaylight system; the architecture and capabilities of Apache Karaf will, in the end, place an upper bound on what OpenDaylight can do as a whole. In this presentation, Jamie Goodyear will review recent events in the Apache Karaf development community, discuss the current state of Apache Karaf and its sub-projects, the challenges it faces, and look forward to how Apache Karaf may address those challenges.</span>icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-75476836046246833182015-08-10T09:10:00.003-02:302015-08-10T09:10:48.884-02:30What does OpenDaylight SDN Platform need from the Apache Karaf container?Just wanted to share my talk from OpenDaylight Summit 2015.<br />
<iframe allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/6yYBKKXsfL0?list=PL8F5jrwEpGAiJG252ShQudYeodGSsks2l" width="560"></iframe><br />
I'd like to thank the OpenDaylight community again for allowing me speaking time during the developer forum.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-7696987001337856672015-08-09T11:26:00.000-02:302015-08-09T11:26:21.420-02:30Decanting OpenDaylight<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWD-KiX6yg76qAFx6_It8lK-6mH5aNaz61GEjjN21jVreWOqsxCq7CXZjZcWqSnztGhAKM-Ys5bWgme-R4XVPgTDIC_P528btnVXwZLFXTlsHZSd4OWPtaNH4iyaNefXtIn2f8UkUcszm8/s1600/Presenting.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="214" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWD-KiX6yg76qAFx6_It8lK-6mH5aNaz61GEjjN21jVreWOqsxCq7CXZjZcWqSnztGhAKM-Ys5bWgme-R4XVPgTDIC_P528btnVXwZLFXTlsHZSd4OWPtaNH4iyaNefXtIn2f8UkUcszm8/s320/Presenting.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">The Monitoring and Alerting Solution for Apache Karaf</td></tr>
</tbody></table>
During <a href="http://events.linuxfoundation.org/events/opendaylight-summit">OpenDaylight Summit 2015</a> I was given the opportunity to talk about <a href="http://karaf.apache.org/">Apache Karaf</a>'s road map, and Karaf's new subproject <a href="http://karaf.apache.org/index/subprojects/decanter.html">Apache Karaf Decanter</a>.<br />
<br />
Decanter is a complete monitoring and alerting solution for Apache Karaf. It provides a web based collection of dash boards, which contain nicely graphed metrics from your applications' runtime, and lets you explore logged events.<br />
<br />
Architecturally, Decanter is composed of:<br />
<ul>
<li>collectors retrieving monitored data (JMX metrics, log messages, etc)</li>
<li>dispatchers powered by EventAdmin, and</li>
<li>appenders storing monitored data.</li>
</ul>
Decanter provides a Service Level Agreement layer, which allows you to check values of harvested data and send alerts when data in not in the expected state.<br />
<br />
<a href="http://karaf.apache.org/manual/decanter/latest-1/index.html#_user_guide">User</a> and <a href="http://karaf.apache.org/manual/decanter/latest-1/index.html#_developer_guide">Developer</a> guides are available from Karaf's website.<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheEWN7eVHnfGV6ofVBxTFQDn0VArakYyED9AsnxjXRePt-oNPS73PY2xuMK6pnHD2-XJhCD09zno6Q0mXCXUBzOOePVyzzmUyZHI8PZCs37oGFKYCnSBkcYlgoTGMqTZH1Yi4s8cTXh00w/s1600/Li-Decanted.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="246" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEheEWN7eVHnfGV6ofVBxTFQDn0VArakYyED9AsnxjXRePt-oNPS73PY2xuMK6pnHD2-XJhCD09zno6Q0mXCXUBzOOePVyzzmUyZHI8PZCs37oGFKYCnSBkcYlgoTGMqTZH1Yi4s8cTXh00w/s400/Li-Decanted.png" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">OpenDaylight Lithium, Decanted</td></tr>
</tbody></table>
Perhaps the most exciting news for OpenDaylight users is that the core Decanter framework works on Lithium! All the OpenDaylight community needs to do now is develop the various collectors, dispatchers, appenders, and alters to make OpenDaylight based services appear in one of Decanter's dashboards.<br />
<br />icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-68006443130534423962015-08-09T11:00:00.001-02:302015-08-09T11:00:16.199-02:30Thank you ODSummit <div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRzfgwHVESCRPg0ni4BFD0joEUeA4uYOYWozGiDBEqDpRnr9jNRSBNq-BVxUUaaYgXW5ejK24aVCqxmi2jcSzAl2S_PY2dFVGOtkChM8VkTOfqReMvD7XJCouDpE-pgdSeN7zVmcOECcqN/s1600/ODSummitLogo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="226" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiRzfgwHVESCRPg0ni4BFD0joEUeA4uYOYWozGiDBEqDpRnr9jNRSBNq-BVxUUaaYgXW5ejK24aVCqxmi2jcSzAl2S_PY2dFVGOtkChM8VkTOfqReMvD7XJCouDpE-pgdSeN7zVmcOECcqN/s400/ODSummitLogo.png" width="400" /></a></div>
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbdFp2xT9H1Zbm9coTafBkbTnMclTlRsltuMVTAza8HmCxucTdUKD2rYn9TPI-qmc5lOiyYNMgTDWrkpAlIdJlvFWjXRmK3tjolvmWkfoL_1Dcw79CPQ2qUwQW3ygmG9IbKrHJOtQX1RmZ/s1600/George.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="213" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbdFp2xT9H1Zbm9coTafBkbTnMclTlRsltuMVTAza8HmCxucTdUKD2rYn9TPI-qmc5lOiyYNMgTDWrkpAlIdJlvFWjXRmK3tjolvmWkfoL_1Dcw79CPQ2qUwQW3ygmG9IbKrHJOtQX1RmZ/s320/George.jpg" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">George Zhao, OpenDaylight Release Manager<br />
receiving a signed copy of Learning Apache Karaf</td></tr>
</tbody></table>
I recently attended <a href="http://events.linuxfoundation.org/events/opendaylight-summit">OpenDaylight Summit 2015</a> in Santa Clara, California - a community gathering of the developers, and users of <a href="https://www.opendaylight.org/">OpenDaylight SDN Platform</a>. The energy and enthusiasm of the crowd for building this new open source community was invigorating. I met many of the people behind the IRC nicknames I've come to know over the last year & half of working with the community. It was truly a great event, and I look forward to seeing how OpenDaylight's next release, Be, evolves.<br />
<br />
The various keynotes, sessions, and tutorials are available for reviewing from the <a href="https://www.youtube.com/user/opendaylightproject">OpenDaylight projects' youtube channel</a>. I'd like the share the below two keynotes, as it helps show how deeply OpenDaylight is reaching into today's networks and how integral OpenDaylight (and it's <a href="https://karaf.apache.org/">Apache Karaf</a> core) is becoming in tomorrow's infrastructure:<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/apUSOvi64jE?list=PL8F5jrwEpGAiJG252ShQudYeodGSsks2l" width="560"></iframe>
<br />
<br />
<iframe allowfullscreen="" frameborder="0" height="315" src="https://www.youtube.com/embed/a36-RkBcoos?list=PL8F5jrwEpGAiJG252ShQudYeodGSsks2l" width="560"></iframe>
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<h4>
</h4>
icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-10316612235472349172015-08-09T09:44:00.000-02:302015-08-09T09:44:45.596-02:30Security BSides St John's 2015 Call for Papers is Open<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgManSJV1-GF9HbJPT6_-NyDIHg4gtKBmPS12MJPMXJhBwVBwPi7gL2Y2WJhFAw9sIoYFJPx5xCRUK39c6aj-jIjxai9xO11VlgKAQR05YoA6ISBIzIYordJojV8zB8xDybekvdrIFrCe-a/s1600/Bsides+Logo+No+St.+John%2527s+mono.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="147" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgManSJV1-GF9HbJPT6_-NyDIHg4gtKBmPS12MJPMXJhBwVBwPi7gL2Y2WJhFAw9sIoYFJPx5xCRUK39c6aj-jIjxai9xO11VlgKAQR05YoA6ISBIzIYordJojV8zB8xDybekvdrIFrCe-a/s400/Bsides+Logo+No+St.+John%2527s+mono.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<a href="http://bsidesstjohns.com/">Security BSides St John's</a> <a href="http://bsidesstjohns.com/call-for-papers/">Call for Papers</a> is open!</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
BSides St. John’s 2015 is happening on September 25th, and will consist of a single speaking track. Regular presentation slot lengths are a fixed duration of 45 minutes plus 15 minutes for Q&A if necessary. For 2015, BSides St. John’s is also accepting submissions for Lightning Talks. They will be limited to 10-15 minutes in duration and typically consist of 2 to 3 presentation slides. We are hoping that this short presentation time will encourage those new to presenting to submit.
<br />
<br />
We are currently investigating our options to live stream the event and record all presentations for later distribution. If the recording and live streaming of your presentation poses an issue for you then please contact us to discuss your concerns.
<br />
<br />
It is important to note that any presentations or talks deemed to be of a marketing or sales pitch nature will be politely rejected.
<br />
<br />
Submissions will be in plain text and should address the following points
<br />
<br />
<ul>
<li>Your preferred email address</li>
<li>Are you representing anyone (yourself, company name, group name)</li>
<li>The title and abstract for your presentation</li>
<li>Approximate length of your presentation</li>
</ul>
<br />
<br />
Additionally, your submission should answer the following questions:<br />
<br />
<ul>
<li>Has this material been presented elsewhere? If so, where and when?</li>
<li>May we record and stream your presentation? If not, why?</li>
<li>Will you be travelling to the event? If so, from where?</li>
</ul>
<br />
Submissions must be emailed to BSidesStJohns@gmail.com. The CFP opens on July 1st and the deadline for submissions is September 10th. A confirmation of receipt of your submission will be sent within 48 hours. A follow-up email, if required, will be sent to you requesting further information or clarification.
<br />
<br />
Submissions will be reviewed as they are submitted. Submitter’s will receive a personal response to their submission with our decision as to whether it has been accepted within two weeks of their submission date.
<br />
<br />
All submissions are greatly appreciated and we thank you in advance for your interest in BSides St. John’s 2015.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-33975897824280294622015-07-22T11:26:00.000-02:302015-07-22T11:26:22.002-02:30Using OpenCL on OpenDaylight<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_M8TKyiU_JipBTjGcoAzCpNgNmu7HEG6OmLbnA9mCTvVbQ2vi6BwnBFB0VDRQd13MudbeF2Yu7PczxMXS-komzyUG8i9HYGTJHq3HHNakGPOa3qSsVC-ZT8peBiJ3piAywc9YerHj7iID/s1600/OpenDaylight-OpenCL.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj_M8TKyiU_JipBTjGcoAzCpNgNmu7HEG6OmLbnA9mCTvVbQ2vi6BwnBFB0VDRQd13MudbeF2Yu7PczxMXS-komzyUG8i9HYGTJHq3HHNakGPOa3qSsVC-ZT8peBiJ3piAywc9YerHj7iID/s320/OpenDaylight-OpenCL.png" width="240" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">GPU processing on OpenDaylight!</td></tr>
</tbody></table>
I've been preparing for <a href="http://events.linuxfoundation.org/events/opendaylight-summit">OpenDaylight Summit 2015</a>, the yearly gathering of the OpenDaylight SDN community for tutorials, keynotes, sessions, and design forum. I wanted to build a little demo or two that I could run while on the conference floor. The first one is <a href="http://icodebythesea.blogspot.ca/2014/10/want-to-see-how-your-karaf-container-is.html">KTop: the Karaf Top processes command</a>, the second is a small <a href="https://en.wikipedia.org/wiki/OpenCL">OpenCL</a> on OpenDaylight demo.<br />
<br />
OpenCL allows developers to construct kernel functions that execute on OpenCL capable devices - such as your GPU. Given there are a few use cases where massively parallel computing on a GPU could drastically reduce processing time, having OpenCL made available to applications running on OpenDaylight could be interesting.<br />
<br />
My demo is just a proof of concept at this stage, however I'd enjoy discussing what could be made of the underlying concepts. That being said, I'd also love to chat about how OpenDaylight can make more use of its <a href="http://karaf.apache.org/">Apache Karaf</a> container, and how we at <a href="http://www.savoirtech.com/">Savoirtech</a> can help organizations develop and maintain their Karaf-based applications.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-66918441462843573632015-07-07T11:49:00.000-02:302015-07-07T11:49:24.793-02:30Full Stack, Toronto 2015<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjaB-3jLnJStaN4izZXhXAoNyJhLojDVBAJ9ycmSJ1MmRK3jxAhOP8CWOAmwZF4A9MMm3A29SLOwtOXBPSdfF1DgtFDpiAWEhjLMauXDTY7vJcw726-675alSJXHElRp05G4Lepe1IA2BS/s1600/FS-Toronto-2015.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="160" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjaB-3jLnJStaN4izZXhXAoNyJhLojDVBAJ9ycmSJ1MmRK3jxAhOP8CWOAmwZF4A9MMm3A29SLOwtOXBPSdfF1DgtFDpiAWEhjLMauXDTY7vJcw726-675alSJXHElRp05G4Lepe1IA2BS/s320/FS-Toronto-2015.jpg" width="320" /></a></div>
This Fall, I'll be speaking at <a href="https://fsto.co/">Full Stack, Toronto 2015</a>! The conference focuses on the full stack used by developers to power the web. My talk will present how Apache Karaf provides an ecosystem (stack) for building micro service architectures for SOA and SDN.<br />
<br />
Tittle:<br />
"Empowering MicroServices with Apache Karaf"<br />
<br />
Description:<br />
"Deploying modular Java applications requires a container capable of supporting their special needs out of the box - Apache Karaf provides this and more.
<br />
<br />
Apache Karaf has become the defacto modular application container for Service Oriented Architectures and Software Defined Networking. These Karaf-based projects are powering web services and network infrastructure world wide.
<br />
<br />
In this session we'll present how Apache Karaf provides an ecosystem for supporting modular development and deployments of modern micro service architectures found in today's largest SOA and SDN infrastructures."icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-49138870977645224802015-06-02T12:38:00.000-02:302015-06-02T12:38:33.964-02:30Attending OpenDaylight Summit 2015<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhaMo1kEX7jh9s0JhIR_6oQhyK6jzogizbLfnH6Kxh6MY5D8LaLUyRNzj0PYjynZKXKww0oFyqQ4g3E-INJCOyU7TXzuzET3yhOGsmeCYOaMVHcvaGb22bebGdrdtOoKQ9fh7AWYHnE454O/s1600/od_summit_logo_white.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhaMo1kEX7jh9s0JhIR_6oQhyK6jzogizbLfnH6Kxh6MY5D8LaLUyRNzj0PYjynZKXKww0oFyqQ4g3E-INJCOyU7TXzuzET3yhOGsmeCYOaMVHcvaGb22bebGdrdtOoKQ9fh7AWYHnE454O/s320/od_summit_logo_white.png" width="320" /></a>I've booked my tickets to <a href="http://events.linuxfoundation.org/events/opendaylight-summit">OpenDaylight Summit 2015</a>, in Santa Clara, California!<br />
<br />
This will be my first time to attend an <a href="http://www.opendaylight.org/">OpenDaylight</a> conference, and I can't wait to meet all the contributors.<br />
<br />
The summit organizers have posted the <a href="http://events.linuxfoundation.org/events/opendaylight-summit/program/schedule">week long event schedule</a>. I'm not sure which tutorials and talks I'm going to attend yet, so many interesting ones overlap with each others time slot.<br />
<br />
While I'm on site, I'm hoping to meet up with developers/maintainers interested in maximizing their use of <a href="http://karaf.apache.org/">Apache Karaf</a> (the base runtime container the OpenDaylight Controller operates upon). I believe there are many best practices to be shared between our communities as SDN deployments build more field experiences. If you're attending the conference, and want to meet up to chat OpenDaylight-Karaf please let me know.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-65664625759875846172015-04-14T08:54:00.000-02:302015-04-14T08:54:59.028-02:30Building my new release server<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLjId7XOXtGOzLHvk-bzDXCpsMqJ3Ar10I7NuVuY3h0V_z5Ck1T1nPlzq-vW4yfboDfjxwgQgQMLSPjldujk5EaqlVO2AQ2MIRiKCJwz5PeeygC7eGpOHSuDq8UR7JChLteYmGGK0GpQrR/s1600/Karaf-Server.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLjId7XOXtGOzLHvk-bzDXCpsMqJ3Ar10I7NuVuY3h0V_z5Ck1T1nPlzq-vW4yfboDfjxwgQgQMLSPjldujk5EaqlVO2AQ2MIRiKCJwz5PeeygC7eGpOHSuDq8UR7JChLteYmGGK0GpQrR/s1600/Karaf-Server.jpg" height="320" width="236" /></a>Over the weekend I embarked upon building a new server for performing the <a href="http://karaf.apache.org/">Apache Karaf</a> release candidates I build. I thought I'd share some specs, setup, and photos of the completed project.<br />
<br />
<h4>
The Gear:</h4>
<br />
<ul>
<li><a href="http://www.dell.com/ca/business/p/poweredge-t110-2/pd">Dell PowerEdge T110 II Chasis</a>.</li>
<li><a href="http://ark.intel.com/products/75055/Intel-Xeon-Processor-E3-1240-v3-8M-Cache-3_40-GHz">Intel Xeon E3-1240 v3</a> (4 Core, 8 Threads @ 3.4 Ghz)</li>
<li>16 GB ECC Ram (2 * 8GB @1600 Mhz DDR3)</li>
<li><a href="http://ark.intel.com/products/81041/Intel-SSD-Pro-2500-Series-120GB-2_5in-SATA-6Gbs-20nm-MLC">Intel Enterprise SSD 120 GB</a> for Operating System.</li>
<li><a href="http://ark.intel.com/products/81045/Intel-SSD-Pro-2500-Series-240GB-2_5in-SATA-6Gbs-20nm-MLC">Intel Enterprise SSD 240 GB</a> for tools, m2 repo, and build.</li>
<li><a href="http://www.ubuntu.com/server">Ubuntu Server</a> 14.04 LTS</li>
</ul>
<br />
<div style="text-align: left;">
</div>
<h4>
Configuring The System:</h4>
<br />
The <a href="http://karaf.apache.org/index/developers/release-guide.html">Apache Karaf Release Guide</a> provides the blueprint for this build, providing the community with a reproducible set of steps to help us avoid relying on a 'magic build' machine. The guide outlined the various tools, their versions, and configurations required to produce a build candidate.<br />
<br />
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbQ_GBHnvmcVrLvKI-pVM4kS7KVbzzIlXI0U8jGXbVFl4yVe6Rq3qPyXEVvVar426OpIGrE5cKYmtfVKQIRrscx5d5l3ZUrdgO_622HdProErHcZDNsJl877yosEA26BS-1w7PR1lCBvZ1/s1600/SSD-Intel.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgbQ_GBHnvmcVrLvKI-pVM4kS7KVbzzIlXI0U8jGXbVFl4yVe6Rq3qPyXEVvVar426OpIGrE5cKYmtfVKQIRrscx5d5l3ZUrdgO_622HdProErHcZDNsJl877yosEA26BS-1w7PR1lCBvZ1/s1600/SSD-Intel.jpg" height="146" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">No more spinning disks for my build machine :)</td></tr>
</tbody></table>
<h4>
System Layout:</h4>
<br />
The 120GB disk was chosen as the primary boot disk, hosting Ubuntu 14.04 LTS and a swap partition (/dev/sda). The 240GB disk was formatted as a single partition using an ext3 filesystem (/dev/sdb).<br />
<br />
I prefer to keep my Operating System and 'task' drives separate on a server.<br />
<br />
<h4>
Build Drive Organization: </h4>
<br />
The build drive hosts three directories:<br />
<br />
<ul>
<li>tools - All build tools.</li>
<li>repo - local m2 repository.</li>
<li>source - SVN and Git repos.</li>
</ul>
<br />
The tools directory contains various versions of JDKs, Ant, Maven, PrinceXML, and my environment scripts.<br />
<br />icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-53719986886706638322015-01-11T21:57:00.000-03:302015-01-11T22:02:29.062-03:30OpenDaylight Helium on Intel Edison!<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKJzI6_3lNUGIGQBlWTXyKd4VfyGR9PdLAcEbZNZXvUi5pwjRAxcGg_T2RXnp66bTKbnhXoFG5RM_as2ajBsHPsrZ7MpNyCILs-G3xQSos2uR5FRtdbx3jCzpaAO-b_v0Z4Au7A4C8bP_-/s1600/edison-size.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKJzI6_3lNUGIGQBlWTXyKd4VfyGR9PdLAcEbZNZXvUi5pwjRAxcGg_T2RXnp66bTKbnhXoFG5RM_as2ajBsHPsrZ7MpNyCILs-G3xQSos2uR5FRtdbx3jCzpaAO-b_v0Z4Au7A4C8bP_-/s1600/edison-size.png" height="213" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Edison mounted on mini breakout board.<br />
Canadian Quarter for Scale.</td></tr>
</tbody></table>
How small a physical device can you get <a href="http://www.opendaylight.org/">OpenDaylight</a> running upon? Well so far the answer is the <a href="http://www.intel.com/content/www/us/en/do-it-yourself/edison.html">Intel Edison</a>.<br />
<br />
If your not familiar with the Edison, its a system on module device containing a dual core Intel Atom CPU (32bit @ 500 Mhz), 1 GB of LPDDR3 RAM, 4 GB of eMMC flash storage, and built-in wifi. At 35.5 x 25 x 3.9 mm it is arguably one of the smallest machines I've seen run an <a href="http://karaf.apache.org/">Apache Karaf</a> based system.<br />
<br />
My build utilizes a Yocto Linux OS build for Edison, and a standard 32 bit Oracle JDK 1.7.0 installation. Downing loading utilities onto the Edison was a small challenge in that the version of wget that ships with Yocto does not support https, to get around this I used SCP to copy files over to the device.<br />
<br />
Out of the box I only had to make <a href="https://github.com/jgoodyear/ODLHeliumOnEdison">one customization to the OpenDaylight setenv script</a>:<br />
<ul>
<li>The set environment script (setenv) had JVM parameters for PermGen and Max Memory set higher than the Edison could support. I set these values to 340MB for PermGen, and 756MB for Max Memory. These are not optimal settings, but will work well enough to get things going.</li>
</ul>
After OpenDaylight had displayed the console banner, I executed the console info command to see system environment information:<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv2GzCIjoKC4Dj5WLMCfTDvt2xGJavoPgTVN2vnUArlaAMJY32aT_1RfoJI7irE5dEzBj51jeHGX_BfsfDObKXhc4ynQAtHEejJb_LQ_COU9KSAo2WN3thCj13pf21BNEk0GrE5N0dakDa/s1600/Screen+Shot+2015-01-08+at+9.30.39+PM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgv2GzCIjoKC4Dj5WLMCfTDvt2xGJavoPgTVN2vnUArlaAMJY32aT_1RfoJI7irE5dEzBj51jeHGX_BfsfDObKXhc4ynQAtHEejJb_LQ_COU9KSAo2WN3thCj13pf21BNEk0GrE5N0dakDa/s1600/Screen+Shot+2015-01-08+at+9.30.39+PM.png" height="300" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">OpenDaylight Banner and info command output</td></tr>
</tbody></table>
Sweet! OpenDaylight has booted, and the CLI is responsive!<br />
<br />
Now to verify the installation is running correctly, I started up the <a href="https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Toaster_Tutorial">OpenDaylight Toaster demo</a>.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdNDg1cXn31F32LRobo-jO6Jj1XmN99ghUSnW-IP9iiak5WILG1MAnG9ZTfervXguae_zzNHn4DQ9HKnidIIHWGAvsAhveGFQB24bST5Eg5YtTzTgh0wOUj6_r1fLBy2DIyWUN4QOtiNPE/s1600/Toast.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdNDg1cXn31F32LRobo-jO6Jj1XmN99ghUSnW-IP9iiak5WILG1MAnG9ZTfervXguae_zzNHn4DQ9HKnidIIHWGAvsAhveGFQB24bST5Eg5YtTzTgh0wOUj6_r1fLBy2DIyWUN4QOtiNPE/s1600/Toast.png" height="157" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Log Display Output</td></tr>
</tbody></table>
I used <a href="http://wiki.cyclopsgroup.org/jmxterm/download.html">jmxterm</a> to manipulate the makeToast and clearToastsMade operations exposed via JMX on the controller to verify their correct operation - using log:display I could view each operation's logging events.<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHfIaj8r7LbDz69kd_wlNv49ux-R0SDoltBvmM836AYxf_vBXDeZMIDh6c0Ig_y_E6hgzDRlWzx8MBdWRF1duIbUk48mDPJRMqesm-4rbfUGSDLZigk2VplnF-0WQXn2yrmyU7xFLhqNyX/s1600/EdisonCPU.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHfIaj8r7LbDz69kd_wlNv49ux-R0SDoltBvmM836AYxf_vBXDeZMIDh6c0Ig_y_E6hgzDRlWzx8MBdWRF1duIbUk48mDPJRMqesm-4rbfUGSDLZigk2VplnF-0WQXn2yrmyU7xFLhqNyX/s1600/EdisonCPU.png" height="184" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Edison CPU Info</td></tr>
</tbody></table>
<br />
I've posted to my <a href="https://github.com/jgoodyear/ODLHeliumOnEdison">github</a> page my notes and files for getting OpenDaylight Helium running on Intel Edison. I'm looking forward to seeing what the community makes on the platform.<br />
<br />
Links for further reading:<br />
<br />
Intel Edison - One Tiny Platform, Endless Possibility:<br />
<a href="http://www.intel.com/content/www/us/en/do-it-yourself/edison.html">http://www.intel.com/content/www/us/en/do-it-yourself/edison.html</a><br />
<br />
Edison IoT module ships with Atom plus Quark Combo SOC:<br />
<a href="http://linuxgizmos.com/edison-iot-module-ships-with-atom-plus-quark-combo-soc/">http://linuxgizmos.com/edison-iot-module-ships-with-atom-plus-quark-combo-soc/</a><br />
<br />
OpenDaylight:<br />
<a href="http://www.opendaylight.org/">http://www.opendaylight.org</a><br />
<br />
Apache Karaf:<br />
<a href="http://karaf.apache.org/">http://karaf.apache.org</a>icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com1tag:blogger.com,1999:blog-8119361957970651148.post-40679546557163225922014-11-18T11:43:00.001-03:302014-11-18T11:45:56.176-03:30KTop update and OpenDaylight MDSAL Status command!<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7qpHhPUNFcEqQTLCjWaDIrBLjSbagFKGu22SuOISl0m6XDWokOZDJ1rLpHNuKvgUKT93TVZVTM_xG5Hw3fhLprp1QSJcJ5W8x048Nk3VuTqn-HxH0uKvl6L3L2ToOw5wjbl9tp7lsml9g/s1600/Screen+Shot+2014-11-18+at+11.00.34+AM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7qpHhPUNFcEqQTLCjWaDIrBLjSbagFKGu22SuOISl0m6XDWokOZDJ1rLpHNuKvgUKT93TVZVTM_xG5Hw3fhLprp1QSJcJ5W8x048Nk3VuTqn-HxH0uKvl6L3L2ToOw5wjbl9tp7lsml9g/s1600/Screen+Shot+2014-11-18+at+11.00.34+AM.png" height="298" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">KTop Enhancements!</td></tr>
</tbody></table>
We're happy to announce our latest Milestone release of the <a href="https://github.com/savoirtech/aetos">Aetos</a> <a href="https://github.com/savoirtech/ktop">KTop</a> command for <a href="http://karaf.apache.org/">Apache Karaf</a> 3 based containers.<br />
<br />
This latest revision includes:<br />
<br />
<ul>
<li>Improved CPU time reporting,</li>
<li>Pressing q to quit,</li>
<li>Sorting column change via left and right arrow keys, and</li>
<li>Reverse sort by pressing r key.</li>
</ul>
<br />
Under the hood we've also made several bug fixes, and runtime performance improvements.<br />
<br />
<h4>
Sweet! How do I get this latest version?</h4>
<br />
We've published our new MileStone release to Maven Central: <a href="http://search.maven.org/#search%7Cga%7C1%7Cctop">http://search.maven.org/#search%7Cga%7C1%7Cctop</a><br />
<br />
You can also grab it from GitHub:<br />
<a href="https://github.com/savoirtech/ctop/tags">https://github.com/savoirtech/ctop/tags</a><br />
<br />
Source tag link:<br />
<a href="https://github.com/savoirtech/ktop/tree/ctop-0.2.0.M1">https://github.com/savoirtech/ktop/tree/ctop-0.2.0.M1</a><br />
<br />
If you're using an Apache Karaf 3.0.x based system (such as Aetos 3.0.2), you can install this MileStone release using the following Karaf console command:<br />
install -s mvn:com.savoirtech.karaf.commands/ctop/0.2.0.M1
<br />
<br />
Feedback is welcome! Please submit any ideas, enhancements, bugs to the project issue tracker: <a href="https://github.com/savoirtech/ctop/issues">https://github.com/savoirtech/ctop/issues</a><br />
<br />
<h4>
So, tell us about this MDSAL Status command!</h4>
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr3iigx2lcZJ_hVLcKwhfOealBsP5QHkNqzGwLnl_Qv9kGYmLB_op8MBQzTohAha5p37l4wPTNEasVQssbRvNwigKy__P2OSfWJAQJ-L58_hbQgcWfJ2Bh3j0hHkrGk5EH3z_YVvMDKxgD/s1600/Screen+Shot+2014-11-18+at+11.00.57+AM.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr3iigx2lcZJ_hVLcKwhfOealBsP5QHkNqzGwLnl_Qv9kGYmLB_op8MBQzTohAha5p37l4wPTNEasVQssbRvNwigKy__P2OSfWJAQJ-L58_hbQgcWfJ2Bh3j0hHkrGk5EH3z_YVvMDKxgD/s1600/Screen+Shot+2014-11-18+at+11.00.57+AM.png" height="158" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">MDSAL:Status - a live feed of how MDSAL is operating.</td></tr>
</tbody></table>
The <a href="http://www.opendaylight.org/">OpenDaylight</a> community recently ported their project to live on top of Apache Karaf 3 with their Helium release. <a href="http://www.savoirtech.com/">To help spur development of new OpenDaylight Karaf commands we've built a simple Model Driven Service Abstraction Layer status command to demonstrate how Karaf's console can empower developers and operators to create their own monitoring tools</a>.<br />
<br />
<h4>
So what does MDSAL Status do?</h4>
<br />
The MDSAL Status commands provides an updated view of MDSAL metrics, including:<br />
<br />
<ul>
<li>ConfigRegistry version and health,</li>
<li>DOMDataBroker statistics, and</li>
<li>Metrics for CommitExecuter (CE), CommitFutureExecutor (CFE), InMemoryConfigDataStore (IMCDS), and InMemoryOperationalDataStore (IMODS).</li>
</ul>
<br />
The metrics table is of particular interest, providing live updates of ten tracked attributes, including:<br />
<br />
<ul>
<li>ActiveThreadCount,</li>
<li>CompletedTaskCount,</li>
<li>CurrentQueueSize,</li>
<li>CurrentThreadPoolSize,</li>
<li>LargestQueueSize,</li>
<li>LargestThreadPoolSize,</li>
<li>MaxQueueSize,</li>
<li>MaxThreadPoolSize,</li>
<li>RejectedTaskCount, and</li>
<li>TotalTaskCount.</li>
</ul>
<br />
These values are obtained from MBeans provided by the OpenDaylight controller. The Karaf console provides the mechanisms to allow users to view these metrics without having to use additional external tooling.<br />
<br />
<h4>
Sweet! How do I get this latest version?</h4>
<br />
We've published a MileStone release to Maven Central:<br />
<a href="http://search.maven.org/#search%7Cga%7C1%7Cmdsal-status">http://search.maven.org/#search%7Cga%7C1%7Cmdsal-status</a><br />
<br />
You can also grab it from GitHub:<br />
<a href="https://github.com/savoirtech/mdsal-status/releases">https://github.com/savoirtech/mdsal-status/releases</a><br />
<br />
Source tag link:<br />
<a href="https://github.com/savoirtech/mdsal-status/tree/mdsal-status-0.1.0.M1">https://github.com/savoirtech/mdsal-status/tree/mdsal-status-0.1.0.M1</a><br />
<br />
On OpenDaylight Helium based distributions, you can install this MileStone release using the following Karaf console command:<br />
install -s mvn:com.savoirtech.karaf.commands/mdsal-status/0.1.0.M1<br />
<br />
<h4>
How do I use MDSAL Status once installed? </h4>
<br />
The status command requires users to have the MDSAL feature installed in their container at runtime. Once MDSAL is available, the MDSAL Status command will become functional.<br />
<br />
To execute command on Helium, invoke:<br />
mdsal:status<br />
<br />
To exit status, press control + c or q to quit.<br />
<br />
Feedback is welcome! Please submit any ideas, enhancements, bugs to the project issue tracker:<br />
<a href="https://github.com/savoirtech/mdsal-status/issues">https://github.com/savoirtech/mdsal-status/issues</a>icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-26115759678115235142014-11-12T12:52:00.000-03:302014-11-12T12:52:39.764-03:30Want to see your top Apache Camel routes in a CamelContext? Try the CTop command!<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiR6EnW6fDko8Jg5f2toRN73GG0keeQIxMlUJtnDAZfUzKCticAxjq8hA9H8TsGSLq1Ri0must3iGvyQLxDxQoVMqyVz5WHfxknE82vc7Nzh6ZQDgT4Fr9ALmqPa5YnkPoqMrp4QByoYXBe/s1600/Aetos.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="155" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiR6EnW6fDko8Jg5f2toRN73GG0keeQIxMlUJtnDAZfUzKCticAxjq8hA9H8TsGSLq1Ri0must3iGvyQLxDxQoVMqyVz5WHfxknE82vc7Nzh6ZQDgT4Fr9ALmqPa5YnkPoqMrp4QByoYXBe/s320/Aetos.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Aetos Integration Platform</td></tr>
</tbody></table>
I've been working on a utility command for <a href="http://karaf.apache.org/">Apache Karaf </a>based containers that will display <a href="http://karaf.apache.org/">Apache Camel</a> Context Route metrics in a manner similar to the Linux Top command. The result has been the Aetos ctop command.<br />
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8I-p5WoRnhZXphIx_7uYlBIqmzy2a8kLxqA21pQlh5sFclCjT5tkj0bc-wgv6YEm0lFyjB6fvSU4AAeYWSoOaXIXyse4JqNVtV8vgDXznnmY8ewpRQ9XTDQ6QFyp9YwcMIzAUet1hf-1j/s1600/ctop.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="282" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8I-p5WoRnhZXphIx_7uYlBIqmzy2a8kLxqA21pQlh5sFclCjT5tkj0bc-wgv6YEm0lFyjB6fvSU4AAeYWSoOaXIXyse4JqNVtV8vgDXznnmY8ewpRQ9XTDQ6QFyp9YwcMIzAUet1hf-1j/s320/ctop.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">A Top like command for Apache Camel Routes, awesome!</td></tr>
</tbody></table>
<a href="https://github.com/savoirtech/aetos">Aetos</a> is <a href="http://www.savoirtech.com/">Savoir Technologies</a>' Integration Platform - essentially a custom stack of raw Apache projects that makes using Apache Karaf easy for developing and running production large scale enterprise solutions.<br />
<br />
The <a href="https://github.com/savoirtech/ctop">Aetos ctop</a> command provides a Top like display of vital Camel Route metrics, including:<br />
<br />
<ul>
<li>Total Exchanges,</li>
<li>Completed Exchanges</li>
<li>Failed Exchanges,</li>
<li>Minimun Processing Time,</li>
<li>Maximum Processing Time,</li>
<li>Mean Processing Time, and</li>
<li>Last Processing Time</li>
</ul>
<br />
The ctop command allows users to specify which column they'd like to rank routes, and the information update interval. Use the --help option to read the command's usage information.<br />
<br />
<h4>
Sounds cool, I'd like to try it out on my Karaf system!
</h4>
<br />
We've published a MileStone 1 release to Maven Central:
<a href="http://search.maven.org/#search%7Cga%7C1%7Cctop">http://search.maven.org/#search%7Cga%7C1%7Cctop</a><br />
<br />
You can also grab it from GitHub:<br />
<a href="https://github.com/savoirtech/ctop/tags">https://github.com/savoirtech/ctop/tags</a><br />
<br />
Source tag link:<br />
<a href="https://github.com/savoirtech/ktop/tree/ctop-0.1.0.M1">https://github.com/savoirtech/ktop/tree/ctop-0.1.0.M1</a><br />
<br />
If you're using an Apache Karaf 3.0.x based system (such as Aetos 3.0.2), you can install MileStone 1 using the following Karaf console command:<br />
install -s mvn:com.savoirtech.karaf.commands/ctop/0.1.0.M1
<br />
<br />
Feedback is welcome! Please submit any ideas, enhancements, bugs to the project issue tracker:
<a href="https://github.com/savoirtech/ctop/issues">https://github.com/savoirtech/ctop/issues</a><br />
<br />
<h4>
How do I get the code?</h4>
<br />
git clone https://github.com/savoirtech/ctop.git<br />
<br />
Currently, the command is aimed at Apache Karaf 3 & 4 containers. If community interest exists, we'll port it back to Karaf 2.3 & 2.4.<br />
<br />
<h4>
How do I build and install ctop into my container?</h4>
<br />
To build, invoke:<br />
<br />
mvn install<br />
<br />
To install in Karaf, invoke from Karaf console:<br />
<br />
install -s mvn:com.savoirtech.karaf.commands/ctop/version-SNAPSHOT<br />
<br />
<h4>
How do I use ctop once installed?</h4>
The CTop command requires users to have the Apache Camel feature installed in their container at runtime. Once Camel is available, the CTop command will become functional.<br />
<br />
To execute command on Karaf, invoke:<br />
<br />
aetos:ctop CamelContextName<br />
<br />
To exit ctop, press control + c<br />
<br />
<br />
The code is under the GNU license at the moment, as per a project requirement -- we will have it under the ASL in the future. In the mean time if you're looking for a way to monitor your Camel Routes from your console window, give Aetos ctop a try!
icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-32854240939581988292014-10-28T15:22:00.003-02:302014-10-28T15:22:54.199-02:30Want to see how your Karaf container is performing? Try the ktop command.<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJxTyA6BfDYM-xo9eNu2VVEW2VnlHpKuLfeJScylZXSD_W0HCoY43kOM7FBsSSaFqVpLhdbk-uaKmJwHrGX-zMms-MzqqGd1Gj0bbj8zLvqlxLDTo19SpxQRMLCGX_haB7IwYhLsAXL2VC/s1600/Aetos.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgJxTyA6BfDYM-xo9eNu2VVEW2VnlHpKuLfeJScylZXSD_W0HCoY43kOM7FBsSSaFqVpLhdbk-uaKmJwHrGX-zMms-MzqqGd1Gj0bbj8zLvqlxLDTo19SpxQRMLCGX_haB7IwYhLsAXL2VC/s1600/Aetos.png" height="155" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Aetos Integration Platform</td></tr>
</tbody></table>
I've been working on a utility command for <a href="http://karaf.apache.org/">Apache Karaf</a> based containers that will display JVM usage metrics in a manner similar to the Linux Top command. The result has been the <a href="https://github.com/savoirtech/ktop">Aetos ktop</a> command.<br />
<br />
<a href="https://github.com/savoirtech/aetos">Aetos</a> is <a href="http://www.savoirtech.com/">Savoir Technologies</a>' Integration Platform - essentially a custom stack of raw Apache projects that makes using Apache Karaf easy for developing and running production large scale enterprise solutions.<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_iiDrhWk-XeU6Cl_omdm-JTB9S5zaMA9Kq2qeqe5_mATa_WWgvrCEr2FS7dtrlnRgHOa2x2cMbi1r9aJFJkUXWtCvfbHcc70y0oUIINh1Kv0UaHzHzMkXOobFB35_LPBAoHpHt0cRPahI/s1600/ktop.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_iiDrhWk-XeU6Cl_omdm-JTB9S5zaMA9Kq2qeqe5_mATa_WWgvrCEr2FS7dtrlnRgHOa2x2cMbi1r9aJFJkUXWtCvfbHcc70y0oUIINh1Kv0UaHzHzMkXOobFB35_LPBAoHpHt0cRPahI/s1600/ktop.png" height="283" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">JVM vital statics in a Karaf console - awesome!</td></tr>
</tbody></table>
<br />
The <a href="https://github.com/savoirtech/ktop">Aetos ktop</a> command provides a Top like display of vital JVM metrics, including:<br />
<br />
<ul>
<li>Basic platform details.</li>
<li>JVM Uptime.</li>
<li>JVM Thread counts.</li>
<li>Garbage Collector Stats.</li>
<li>ClassLoader Stats.</li>
<li>JVM Memory Stats, and</li>
<li>Periodically updated top threads by CPU usage. </li>
</ul>
<br />
The ktop command allows users to specify how many threads they'd like displayed, and the information update interval. Use the --help option to read the command's usage information.<br />
<br />
<h4>
Sounds cool, I'd like to try it out on my Karaf system!</h4>
<br />
We've published a MileStone 1 release to Maven Central:<br />
<a href="http://search.maven.org/#search%7Cga%7C1%7Cktop">http://search.maven.org/#search%7Cga%7C1%7Cktop</a><br />
<br />
Source tag link:<br />
<a href="https://github.com/savoirtech/ktop/tree/ktop-0.1.0.M1">https://github.com/savoirtech/ktop/tree/ktop-0.1.0.M1</a><br />
<br />
If you're using an Apache Karaf 3.0.x based system (such as OpenDaylight Helium or Aetos 3.0.2), you can install MileStone 1 using the following Karaf console command:<br />
<br />
<span style="font-family: 'Courier New', Courier, monospace;">install -s mvn:com.savoirtech.karaf.commands/ktop/0.1.0.M1</span><br />
<br />
Feedback is welcome! Please submit any ideas, enhancements, bugs to the project issue tracker:<br />
<a href="https://github.com/savoirtech/ktop/issues">https://github.com/savoirtech/ktop/issues</a><br />
<br />
<h4>
Nice! I'd like to have the command on a different Karaf platform...</h4>
<br />
There are three branches of the Aetos ktop project at this time, tracking Apache Karaf 2.3.x, 3.0.x, and 4.0.x lines. At current, users will have to clone the source repo, checkout the branch appropriate to their Karaf deployment, and build the code locally before installing in their container. Please use the following instructions to get ktop running on your container:<br />
<br />
<h4>
How do I get the code?</h4>
<br />
<span style="font-family: Courier New, Courier, monospace;">git clone https://github.com/savoirtech/ktop.git</span><br />
<span style="font-family: Courier New, Courier, monospace;">cd ktop</span><br />
<span style="font-family: Courier New, Courier, monospace;">git checkout k23x | k30x | master</span><br />
<br />
The k23x branch is maintained for Karaf 2.3.x format, k30x for Karaf 3.0.x format, and master will track Karaf 4 style commands.<br />
<br />
<h4>
How do I build and install ktop into my container?</h4>
<br />
To build, invoke:<br />
<br />
<span style="font-family: Courier New, Courier, monospace;">mvn install</span><br />
<br />
To install in Karaf, invoke from Karaf console:<br />
<br />
<span style="font-family: Courier New, Courier, monospace;">install -s mvn:com.savoirtech.karaf.commands/ktop/version-SNAPSHOT</span><br />
<br />
<h4>
How do I use ktop once installed?</h4>
<br />
To execute command on Karaf, invoke:<br />
<br />
<span style="font-family: Courier New, Courier, monospace;">aetos:ktop</span><br />
<br />
To exit ktop, press control + c<br />
<br />
<br />
The code is under the GNU license at the moment, as per a project requirement -- we will have it under the ASL in the future. In the mean time if you're looking for a way to monitor your Karaf container from your console window, give Aetos ktop a try!icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-55669145310260839042014-10-15T22:54:00.000-02:302014-10-15T22:54:10.537-02:30OpenDaylight Helium on Raspberry Pi first performance benchmark results!<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0-1-KBf8Dx-ZJyirbFgvXkR_qDxBuBYYj6RR5dlXI0HG18NXhbVry8XAhqfq1DtnkOt8AnATCVqS9oehhPGstUV8yB6qx1_yl-922vsX0vKVUs3Pqr0RhxTAW3E-zeVTGgObUeG7thkVc/s1600/IMG_0272.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0-1-KBf8Dx-ZJyirbFgvXkR_qDxBuBYYj6RR5dlXI0HG18NXhbVry8XAhqfq1DtnkOt8AnATCVqS9oehhPGstUV8yB6qx1_yl-922vsX0vKVUs3Pqr0RhxTAW3E-zeVTGgObUeG7thkVc/s1600/IMG_0272.png" height="239" width="320" /></a>Last week I posted about <a href="http://icodebythesea.blogspot.ca/2014/10/opendaylight-helium-release-on.html">getting OpenDaylight Helium release to run on my Raspberry Pi</a>. This week I've spent some time setting up the platform for some simple benchmarks.<br />
<br />
The TL; DR version is that I was able to observe approximately 170 flows/second! **<br />
<br />
Now for the longer story...<br />
<br />
To benchmark the system three things had to come together: <a href="http://www.opendaylight.org/software">Helium</a> running on <a href="http://karaf.apache.org/">Karaf</a>, the wcbench utility running on a separate host, and the overall platform being stable enough to execute enough tests to produce statistically relevant data sets.<br />
<br />
In my <a href="http://icodebythesea.blogspot.ca/2014/10/opendaylight-helium-release-on.html">previous post</a>, I outlined how I was able to tweak Helium into running on RPi. To these alterations I added one more tuning parameter: Xss200k. This reduces the startup size of Java threads, making it easier on the JVM and RPi to provide resources. See my <a href="https://github.com/jgoodyear/ODLHeliumOnRPi/tree/master/helium/bin">github repo for sample Helium scripts</a>.<br />
<br />
Setting up the wcbench tool required standing up a host machine, in my case a Fedora Core 20 VM, and configuring its scripts to point to the RPi. Given the RPi's limit resources I tuned the number of switches, mac addresses, and time to run each test down. See my <a href="https://github.com/jgoodyear/ODLHeliumOnRPi/blob/master/wcbench/wcbench.txt">github repo for sample wcbench configuration</a>.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGMII4EwI3l8_ecV4fcSvx7bnJA790RkIN_VjNPP-arJT0DvKHgxqdrf94aYsB8wTsB9nvO-eR-vnbCD8-bn386HaO1FCjcaTp7T7oyAIkt5YyHjQF4cgsX6dV6zHFPmTbRhVKHJxI5dY9/s1600/Screen+Shot+2014-10-15+at+5.33.13+PM.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGMII4EwI3l8_ecV4fcSvx7bnJA790RkIN_VjNPP-arJT0DvKHgxqdrf94aYsB8wTsB9nvO-eR-vnbCD8-bn386HaO1FCjcaTp7T7oyAIkt5YyHjQF4cgsX6dV6zHFPmTbRhVKHJxI5dY9/s1600/Screen+Shot+2014-10-15+at+5.33.13+PM.png" height="200" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Ready for testing!</td></tr>
</tbody></table>
Using the test tool would also require installing a few packages onto the Helium deployment. Through trial and error I discovered it was easiest on the RPi if I installed as many smaller features first before attempting top level targets. See <a href="https://github.com/jgoodyear/ODLHeliumOnRPi">'Setting up Helium for testing'</a> on my github page main read me file.<br />
<br />
Unfortunately this initial setup resulted in a failure to collect useful output :(<br />
<br />
The trouble was that even though OpenDaylight Helium could boot up and install packages, it couldn't handle the heavy traffic. The system would freeze up, becoming unresponsive. Memory was completely consumed.<br />
<br />
Looking at the base system's 700MHz CPU, and memory specs, something would need to change:<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAqycAJccc6eXnXhOUQW6GnSE_yG6bKdjH4X1w_J9wKmL2tj-rV75uTFb3mZF_Ixp0ymBKCQgUWGVdVXX17APdWHgbq5iucmUemS8mfuPhWhKzwU5gok03tzwjf7k-eKivbySvcCQDzTW4/s1600/Rpi-before.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhAqycAJccc6eXnXhOUQW6GnSE_yG6bKdjH4X1w_J9wKmL2tj-rV75uTFb3mZF_Ixp0ymBKCQgUWGVdVXX17APdWHgbq5iucmUemS8mfuPhWhKzwU5gok03tzwjf7k-eKivbySvcCQDzTW4/s1600/Rpi-before.png" height="177" width="580" /></a></div>
This is where the above '**' comes into play. Up to now I've been using a relatively default vanilla installation of Rasbian on the RPi. To obtain useful benchmark results I would have to provide OpenDaylight with more resources to do its thing. Hence I proceeded to the net, and found <a href="https://extremeshok.com/1081/raspberry-pi-raspbian-tuning-optimising-optimizing-for-reduced-memory-usage/">performance tweaks for RPi</a>. See my <a href="https://github.com/jgoodyear/ODLHeliumOnRPi/tree/master/rpi-configs">github repo for a full list of the configuration changes</a> I made to my RPi.<br />
<br />
The final result was a base system with a 850MHz CPU and the following memory specs:<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3lWo-2GQ8cQXEamHObwzZ0TOMGAGIvGWZ6faNtNQANvo75he4Ppun0AWNMo49NstTGMXnx1jWgRfAJMCmOQir3qkq_qZGocw1aR9_Q7oNKWDSGrpKdgXCiTKJdyGpCw-8TOlpOBm0VsWV/s1600/Rpi-after.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3lWo-2GQ8cQXEamHObwzZ0TOMGAGIvGWZ6faNtNQANvo75he4Ppun0AWNMo49NstTGMXnx1jWgRfAJMCmOQir3qkq_qZGocw1aR9_Q7oNKWDSGrpKdgXCiTKJdyGpCw-8TOlpOBm0VsWV/s1600/Rpi-after.png" height="158" width="580" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">An extra 40MB free ram, and 255MB of swap space!</td></tr>
</tbody></table>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-RPk5a3_9OMv6vCjetbnLbv5z64mALVjpUkQYkfEZ302UNW5PTPEDJeEW5XKDP_cZ2f-pFYiw-2oVIiH-KHZFVARRrbMuN04OYFSrk-Jmzubo2mp03qgxgvJ8ttMyDogCV2ilYubgq6X/s1600/ODL-RPi-Top.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg4-RPk5a3_9OMv6vCjetbnLbv5z64mALVjpUkQYkfEZ302UNW5PTPEDJeEW5XKDP_cZ2f-pFYiw-2oVIiH-KHZFVARRrbMuN04OYFSrk-Jmzubo2mp03qgxgvJ8ttMyDogCV2ilYubgq6X/s1600/ODL-RPi-Top.png" height="158" width="320" /></a>With my platform tweaks applied, the system booted up much quicker. I executed the loop_wcbench script with the -l and -t5 option for 25 data sets. See <a href="https://github.com/jgoodyear/ODLHeliumOnRPi/blob/master/wcbench/results.csv">results.csv</a> for full results. Unfortunately, the scripts were not able to dial into the instance to grab detailed system information, so I made the adjacent screen capture of the top command during the test.<br />
<br />
After running the benchmark tool with 10 simulated switches and 10 MAC addresses, I attempted increasing the load to 100 switches and 100 MAC addresses - the system promptly froze.<br />
<br />
There are probably more system tweaks that could be applied to the RPi to free up more memory, and additional JVM tuning to make operating Helium more performant. I've published all of my tunings, and configurations to a <a href="https://github.com/jgoodyear/ODLHeliumOnRPi">git repo</a> so that others may use my experiments as a starting point.<br />
<br />
If you do decide to dive in and try out Helium on RPi, please let us all know about your results in the comments below.<br />
<br />
<br />icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-60888614768708822492014-10-08T23:59:00.000-02:302014-10-11T10:12:33.454-02:30OpenDaylight Helium Release on Raspberry Pi!<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjy_0pRI0wYw15FGbDMewvipub55lgP5yF-jRQxtXxJDBkIqNQIMrD7tkbF0sRdwRAHIAuMOc9qJJYcgFwiExG4TXX-db7PE2kgUnGdCgTXmjDALeBzYttwqO-kA143FQeJVNvkYYx_vA_/s1600/IMG_0268.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjy_0pRI0wYw15FGbDMewvipub55lgP5yF-jRQxtXxJDBkIqNQIMrD7tkbF0sRdwRAHIAuMOc9qJJYcgFwiExG4TXX-db7PE2kgUnGdCgTXmjDALeBzYttwqO-kA143FQeJVNvkYYx_vA_/s1600/IMG_0268.png" height="175" width="200" /></a></div>
The question we've all been asking has finally been answered - yes, <a href="http://en.wikipedia.org/wiki/OpenDaylight_Project">OpenDaylight</a> <a href="http://www.opendaylight.org/software">Helium Release</a> can run on <a href="http://www.raspberrypi.org/">Raspberry Pi</a>!<br />
<br />
If you're not familiar with Raspberry Pi it's a small, inexpensive computer which at its heart runs a 700 MHz Low Power ARM1176JZ-F Applications ProcessorCPU with 512MB ram.<br />
<br />
My build utilizes a Debian based Linux distro, <a href="http://www.raspbian.org/">Raspbian</a>, and an Arm compatible Oracle JDK build.
<br />
<br />
Out of the box I had to make three small modifications to the scripts found in the OpenDaylight distributions' bin folder.<br />
<br />
<ul>
<li>The set environment script (setenv) had JVM parameters for PermGen and Max Memory set higher than the RPi could support. I set these values to 340MB for PermGen, and 400MB for Max Memory. These are not optimal settings, but will work well enough to get things going.</li>
<li>The karaf script used to start the container also required a memory setting to be adjusted from 512m down to 340m (just grep the script code for 512 and replace). </li>
<li>Finally, in the karaf script the JVM "server" flag was not recognized by the Java installation on my RPi. Editing this out of the script allowed Karaf to start up happily.</li>
</ul>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGFjZDN37vbTzi0CmdGoFZNjxGSRuz88UenWKa28UomxOr1qAMjAc8pa1Kjip0C0n3VTb2yyRdpm-83RzBMQnJUZSZ9ooIG6vm_mSAyXdjVkjeMqYeIaARCIVq5Ozia5EBdrgdGvKFidKf/s1600/ODLonKaraf.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGFjZDN37vbTzi0CmdGoFZNjxGSRuz88UenWKa28UomxOr1qAMjAc8pa1Kjip0C0n3VTb2yyRdpm-83RzBMQnJUZSZ9ooIG6vm_mSAyXdjVkjeMqYeIaARCIVq5Ozia5EBdrgdGvKFidKf/s1600/ODLonKaraf.png" height="219" width="560" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">w00t!</td></tr>
</tbody></table>
Once I had the OpenDaylight console banner displayed, I executed the console info command to see system environment information:<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyYHvPZXleczXisFZ5iqccR-JI0xKJYk7ve99qjzRM-9Wd4FyHiO4bLl_egVHh5r9goecNL7Qm1uPt_sil04NslrZohPwthi0GmK28vcjJ2uU8NlNTxBPatHpY_Zv1kpwXYFa7Gy-gwQWj/s1600/ODL-Info.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjyYHvPZXleczXisFZ5iqccR-JI0xKJYk7ve99qjzRM-9Wd4FyHiO4bLl_egVHh5r9goecNL7Qm1uPt_sil04NslrZohPwthi0GmK28vcjJ2uU8NlNTxBPatHpY_Zv1kpwXYFa7Gy-gwQWj/s1600/ODL-Info.png" height="482" width="560" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Now we're cooking with fire! Time to start making some toast...</td></tr>
</tbody></table>
<br />
Awesome! The Apache Karaf container environment OpenDaylight Helium uses appears to be stable. Next step was to try to deploy the <a href="https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL:Toaster_Tutorial">OpenDaylight Toaster demo</a>... which failed on not being able to find SSHD 0.12.0 :(<br />
<br />
This turned out to be a minor inconvenience. A simple invocation of install -s mvn:org.apache.sshd/apache-sshd/0.12.0, and an edit to ODL_HOME/etc/config.properties to include a JDK 1.8 entry for osgi.ee and the ODL Toaster was installable, and running!<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlOJ92sAZ8eGuWF-DVEJawmAtQ2nmz-LCJs9KEUOfGIALxYvut25Jn4FOr1drXU_2BCMkPUUTrtYWvd_8rNhHZrbW182iRStPtvr6PLc9ZgIAa_8gbMRod0AaRNnsKPeN4tJx-rke5BY9X/s1600/Toaster.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhlOJ92sAZ8eGuWF-DVEJawmAtQ2nmz-LCJs9KEUOfGIALxYvut25Jn4FOr1drXU_2BCMkPUUTrtYWvd_8rNhHZrbW182iRStPtvr6PLc9ZgIAa_8gbMRod0AaRNnsKPeN4tJx-rke5BY9X/s1600/Toaster.png" height="216" width="560" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Helium on RPi can make toast!</td></tr>
</tbody></table>
I used jconsole to manipulate the makeToast and clearToastsMade operations exposed via JMX on the controller to verify their correct operation - using log:display I could view each operation's logging events.<br />
<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC4ysHBPNBVE1vQ2Yn5bJvurBRDEqPuYGXuKItkcsGuYCc4iIAGkhnjnu5CnFXW-ZnordCOakNqXN1wytXK3V9buH4-2e0S5vXi4J4h6pEZurIZ9iNZPCovZ80GjWbb6WO7_f62F0fDG5J/s1600/RPi-CPUInfo.png" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjC4ysHBPNBVE1vQ2Yn5bJvurBRDEqPuYGXuKItkcsGuYCc4iIAGkhnjnu5CnFXW-ZnordCOakNqXN1wytXK3V9buH4-2e0S5vXi4J4h6pEZurIZ9iNZPCovZ80GjWbb6WO7_f62F0fDG5J/s1600/RPi-CPUInfo.png" height="126" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">RPi CPU Stats</td></tr>
</tbody></table>
This is an very impressive improvement over the previous OpenDaylight release which, despite my best efforts, I could not get to boot on RPi to a stable console out of the box. It's amazing how well OpenDaylight has taken to scaling from small PCs like the RPi to serious big iron servers we find in datacenters.<br />
<br />
Its important to note that for my ODL on RPi test I've only installed the base ODL Helium distribution, SSHD 0.12.0, and performed a feature install on odl-toaster target. The Karaf based features mechanism took care of downloading, installing, and configuring all the plumbing required to get the demo running.<br />
<br />
So, now that we know we can get OpenDaylight Helium running on an RPi, what should we program it to do? I'm looking forward to reading your ideas in the comments below :)icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com7tag:blogger.com,1999:blog-8119361957970651148.post-18387567936669279762014-09-24T10:48:00.000-02:302014-09-24T11:22:54.357-02:30Apache Karaf Cookbook Launch Party!<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbRgSdDPJDCbYTUPl0m_8ES8FSvvoLArlRJwVteTWgN67iHfg8B6tFVYB3DX-i6-l0EqqeabBJcUB5ClgC6AD5A1-w8MbaueNUjY6iw911bFPGlOfl76R6o9hwB6MGf-4Zfh-fGrvPn-M2/s1600/BookLaunch.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbRgSdDPJDCbYTUPl0m_8ES8FSvvoLArlRJwVteTWgN67iHfg8B6tFVYB3DX-i6-l0EqqeabBJcUB5ClgC6AD5A1-w8MbaueNUjY6iw911bFPGlOfl76R6o9hwB6MGf-4Zfh-fGrvPn-M2/s1600/BookLaunch.png" height="281" width="320" /></a>Last night I held a book launch event for <a href="https://www.packtpub.com/application-development/apache-karaf-cookbook">Apache Karaf Cookbook</a>. I wish my co-authors would have been able to be onsite for the event, however travel and other commitments made that impractical.<br />
<br />
The night consisted of a short speech on the release of our latest book, then transitioned into two hours of guided Wine, Oils, and Vins tastings. So much fun!<br />
<br />
I've collected below some photos from the evening. I'd like to thank the staff of <a href="http://oleva.ca/">O'Leva Oils & Vins Tasting Room</a> for their excellent service and presentations.<br />
<br />
<br />
<h4>
O'Leva Oils & Vins Tasting Room (Venue):</h4>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr>
<td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVhDjufRPtQjPV9eogPRfxFoG3NDHu5w0MKYJkzjFWt_DqjLu7rFIa7bhvdw4xgBRzwJGPxw22ksZsMjwF1LeX3aJKY3rUXYDb28UBQIFXyCNY0QY9y40NXxY8mVW1sCD0Iky-iUoN8fjo/s1600/Venue3.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVhDjufRPtQjPV9eogPRfxFoG3NDHu5w0MKYJkzjFWt_DqjLu7rFIa7bhvdw4xgBRzwJGPxw22ksZsMjwF1LeX3aJKY3rUXYDb28UBQIFXyCNY0QY9y40NXxY8mVW1sCD0Iky-iUoN8fjo/s1600/Venue3.png" height="239" width="320" /></a></td>
<td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMT93YUVrb7XEEzBi6n6rQBlHm3EBxgeTvYMoVzD5crVSZPYY69YazwtQoqZFh-7spAr9J4EAloLhj7TX0pEpjCmtU4c8iO3amg7w1yf7c2rLpMB4sU_HLDmwLvT2aUhFO_atJmJaTy94E/s1600/Venue1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjMT93YUVrb7XEEzBi6n6rQBlHm3EBxgeTvYMoVzD5crVSZPYY69YazwtQoqZFh-7spAr9J4EAloLhj7TX0pEpjCmtU4c8iO3amg7w1yf7c2rLpMB4sU_HLDmwLvT2aUhFO_atJmJaTy94E/s1600/Venue1.png" height="239" width="240" /></a></td></tr>
</tbody></table>
<h4>
Our Books:</h4>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3lN92zsds3LlXrUAXaLbiGL00pT9epwAAogLsh6PES13w_zOvhaXqvLB_7ZufLcu-1aIaWCuK8j1M79bgerZp0q7PhA0GLFEF7iV5IFr0a4JAhyphenhyphen09toFukr-9rIx1fUYqw_N37deOHBc9/s1600/The-Trilogy.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh3lN92zsds3LlXrUAXaLbiGL00pT9epwAAogLsh6PES13w_zOvhaXqvLB_7ZufLcu-1aIaWCuK8j1M79bgerZp0q7PhA0GLFEF7iV5IFr0a4JAhyphenhyphen09toFukr-9rIx1fUYqw_N37deOHBc9/s1600/The-Trilogy.png" height="259" width="320" /></a></div>
<br />
<h4>
Launch Event:</h4>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHJ2gVQHGdgrt6XP2Jto2ZnP_QzSjxwuckN9C0X_BENVVWejE62RQ4iOIVv4j9SnvOTPENEwIKcoX7DcUN8BvA1dMFNwomVWspWadHqPPP8GLMdw2E66HxDejdYQIJHHkSL9z3Lkb4YwGi/s1600/Foods.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHJ2gVQHGdgrt6XP2Jto2ZnP_QzSjxwuckN9C0X_BENVVWejE62RQ4iOIVv4j9SnvOTPENEwIKcoX7DcUN8BvA1dMFNwomVWspWadHqPPP8GLMdw2E66HxDejdYQIJHHkSL9z3Lkb4YwGi/s1600/Foods.png" height="239" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Garlic Crostinis with Brie and Garlic oil and Fig Balsamic.<br />
Beef meatballs with Basil olive oil bruschetta.<br />
Lettuce wraps with Walnut Oil and Chocolate Balsamic.<br />
Vanilla Bean ice cream with Blood Orange olive oil and Espresso Balsamic.</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrS2NbYZyTLUGd3loq-nJYiu_eW51enY9Wkva2XahS285IwXzcBoday5ehjAh2bZ73xeW3oTGNS_ciQ8Z764dnUQHlewRgj4YlqryEHUlmm1c_oP5S20RYPIUjYE-kkoAgtJibfmSxayfU/s1600/Mingle.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrS2NbYZyTLUGd3loq-nJYiu_eW51enY9Wkva2XahS285IwXzcBoday5ehjAh2bZ73xeW3oTGNS_ciQ8Z764dnUQHlewRgj4YlqryEHUlmm1c_oP5S20RYPIUjYE-kkoAgtJibfmSxayfU/s1600/Mingle.png" height="195" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Mingling time in between wine tastings.</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiacn4c_k1F0tPWQEGfmXui67B8ItFelXHgQCirFUsWkpnJwBq3Wblvw2gJeE1z8Zy43yTXK76AEWTmgIcLREcEEu5_yRLM7a6OeS4IcKTX2iSyaJZ9I-Y_z-pVltC_imIvn8y-rYJe23Lb/s1600/Presentation.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiacn4c_k1F0tPWQEGfmXui67B8ItFelXHgQCirFUsWkpnJwBq3Wblvw2gJeE1z8Zy43yTXK76AEWTmgIcLREcEEu5_yRLM7a6OeS4IcKTX2iSyaJZ9I-Y_z-pVltC_imIvn8y-rYJe23Lb/s1600/Presentation.png" height="239" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Guided tasting of Wine, Oils, and Vins </td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw0ZEQJ3wnk23Clu6KhyphenhyphenAcbXWzAeRwrFwOXSqC153hWtV796L8OJ3QWyQjzb8IfstrHAbzg3fZIKavmDNb0wS11yRxctFE7rn3NDYz018IcTJwbkz1FujA2tuA4UTeLqh3UpFIVyaPP6uh/s1600/ThreeWines.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgw0ZEQJ3wnk23Clu6KhyphenhyphenAcbXWzAeRwrFwOXSqC153hWtV796L8OJ3QWyQjzb8IfstrHAbzg3fZIKavmDNb0wS11yRxctFE7rn3NDYz018IcTJwbkz1FujA2tuA4UTeLqh3UpFIVyaPP6uh/s1600/ThreeWines.png" height="320" width="308" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Campo Viejo, Toasted Head, and Lucky Stones.</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOlq8RH2PtwV29cKf545XXRAm67oJvJOAH7kCqVneobtSupMHOSoIDR3mbvUakYq8D1UAwhzb_eqAq7gFMbE_DIi3Mq7Ih1PBYSftX4UBKWPX-k3OEZi2mjavwh3GtdRf70UAdnLyZmWmy/s1600/IMG_0692.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOlq8RH2PtwV29cKf545XXRAm67oJvJOAH7kCqVneobtSupMHOSoIDR3mbvUakYq8D1UAwhzb_eqAq7gFMbE_DIi3Mq7Ih1PBYSftX4UBKWPX-k3OEZi2mjavwh3GtdRf70UAdnLyZmWmy/s1600/IMG_0692.png" height="239" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Red Esc and a multitude of Oils & Vins samplers.</td></tr>
</tbody></table>
<br />
I'd like to thank all of my guests for making it out for the night, and sharing in the excitement of having the Apache Karaf Cookbook reach publication.<br />
<br />icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com1tag:blogger.com,1999:blog-8119361957970651148.post-72940512359665811852014-09-23T13:50:00.000-02:302014-09-23T13:50:51.638-02:30Please vote for our talks to be accepted to ConFoo 2015Heath Kesler and I have submitted talks to ConFoo 2015 for consideration, and we need your votes to help make our proposals get noticed!<br />
<br />
<h3>
<a href="http://confoo.ca/en/call-for-papers/speaker/heath-kesler-1" lang="en" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img alt="ConFoo. February 18 - February 20, 2015 | Montreal, Canada" src="http://confoo.ca/images/propaganda/2015/en/vote.gif" height="130" style="border: 0px;" width="180" /></a>Easy RESTful services using Apache Camel and CXF</h3>
<br /><span style="background-color: white; color: #333333; font-family: 'Open Sans', Helvetica, sans-serif; font-size: 14px; line-height: 20px;"></span>
"In this session attendees will learn how simple RESTful services are to implement and interact with using Camel Integration Engine and the CXF Framework. In as little as a few lines of code, a developer can implement a fully functioning, testable CXFRS endpoint. Learn how to implement thread pooling and asynchronous processing on the service while maintaining a flexible and scalable architecture that can grow with demand."<br />
<br />
<h3>
<a href="http://confoo.ca/en/call-for-papers/speaker/jamie-goodyear" lang="en" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img alt="ConFoo. February 18 - February 20, 2015 | Montreal, Canada" src="http://confoo.ca/images/propaganda/2015/en/vote.gif" height="130" style="border: 0px;" width="180" /></a>How OpenDaylight learned to breathe in Apache Karaf.</h3>
<br />
How OpenDaylight learned to breathe in Apache Karaf.
OpenDaylight is an open platform for network programming to enable SDN and NFV. Apache Karaf is a small, light weight server side OSGi runtime environment. In this session I will share our experiences in introducing OpenDaylight to Apache Karaf, and the subsequent large scale, multi-project migration to Apache Karaf’s OSGi environment.
<br />
<br />
<h3>
<a href="http://confoo.ca/en/call-for-papers/speaker/jamie-goodyear" lang="en" style="clear: right; float: right; font-size: 19px; font-weight: bold; margin-bottom: 1em; margin-left: 1em;"><img alt="ConFoo. February 18 - February 20, 2015 | Montreal, Canada" src="http://confoo.ca/images/propaganda/2015/en/vote.gif" height="130" style="border: 0px;" width="180" /></a>Apache Karaf in the Trenches</h3>
<br />
Apache Karaf is a small, light weight server side OSGi runtime environment, that has been gaining in popularity in the Open Source community. The shift towards using OSGi has introduced new challenges to architects, developers, and operators in building and deploying these systems. In this session I will share some of my experiences in developing, deploying, and maintaining Karaf based software systems among Global 2000 companies.<br />
<br />
Please register and vote on the <a href="http://confoo.ca/en">ConFoo 2015 website</a>.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-81851813204715636142014-09-21T14:57:00.000-02:302014-09-21T14:57:01.161-02:30Apache Karaf 2.3.8 and 2.4.0 Released!<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwXkf_KNyhOUKnYkVvCO3uQhbhHo4K4e05V91sk3qg4qhEa9-pXuBqPutcr3ftzxrTRT418sU-9mruIqNwm45uWPmpEozUppaNfpUx3L7aMFgI73EvRcR07zu7BwleGlzQUq4H0zZh65D5/s1600/Karaf-238-240-302.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwXkf_KNyhOUKnYkVvCO3uQhbhHo4K4e05V91sk3qg4qhEa9-pXuBqPutcr3ftzxrTRT418sU-9mruIqNwm45uWPmpEozUppaNfpUx3L7aMFgI73EvRcR07zu7BwleGlzQUq4H0zZh65D5/s1600/Karaf-238-240-302.png" height="320" width="239" /></a></div>
The <a href="http://karaf.apache.org/">Apache Karaf</a> team are pleased to announce the availability of Apache Karaf 2.3.8 and 2.4.0!<br />
<br />
Apache Karaf 2.3.8 is an update patch for Apache Karaf 2.3.7, containing several bug fixes, and dependency updates. We have introduced support of !$ to recall the last command argument, and improved the command description for osgi:shutdown. It is recommended that you review our<a href="http://karaf.apache.org/index/community/download/karaf-2.3.8-release.html"> release notes</a> before updating your deployments.<br />
<br />
Apache Karaf 2.4.0 release represents a new branch of Apache Karaf development. It includes the latest Aries and Pax libraries, Apache Pom 14, add support for role-based JMX authorization, includes heap dumps when we create debugging data from create dump command, blueprint-web feature, support for JAAS groups, and includes Pax CDI feature. There are several hundred items currently in this RC's <a href="http://karaf.apache.org/index/community/download/karaf-2.4.0-release.html">release notes</a>, so you'll want to spend some time discovering all the hidden gems.<br />
<br />
As always, I'd like to thank the community for coming together to help make the Karaf release process one of the best in all of open source software.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-43946499991859646062014-09-14T17:59:00.000-02:302014-09-14T17:59:00.369-02:30New Apache Karaf book and up coming release candidates<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiuAzwYEyGgROMiSWUpvNanLeThh1aoupOYcoR41vI_VeG47hjZFkjgyOHBQ0dT68Z6kjdngwMAf2BwR8YgX8zUlSU4M0PzCNPz7SWo0BZffjI6YT2JH21Z60i6b-mEfFkPod84E5opkRa/s1600/ApacheKarafCookbookCover.png" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiuAzwYEyGgROMiSWUpvNanLeThh1aoupOYcoR41vI_VeG47hjZFkjgyOHBQ0dT68Z6kjdngwMAf2BwR8YgX8zUlSU4M0PzCNPz7SWo0BZffjI6YT2JH21Z60i6b-mEfFkPod84E5opkRa/s1600/ApacheKarafCookbookCover.png" height="320" width="257" /></a></div>
<h3>
Apache Karaf Cookbook is now available from Packt Publishing!</h3>
<br />
This past winter Johan, Heath, Achim, and I started our latest adventure writing Apache Karaf Cookbook for Packt Publishing. We're happy to announce that the book is finally available for order via Packt's website.
<br />
We've taken care to cram as many hints, tips, and experiences into its pages as we could.
<br />
<br />
Taking a look at our table of contents you'll find recipes for:
<br />
<br />
<ul>
<li>Apache Karaf for system builders</li>
<li>Turning Karaf into a Smart Router with Apache Camel</li>
<li>Model Karaf into a Message Broker with Apache ActiveMQ</li>
<li>Transform Karaf into a JSP host with Pax-web</li>
<li>Distribute your Karaf applications across a clustered container with Apache Karaf Cellar</li>
<li>Transmute Karaf into a web service container with Apache CXF</li>
<li>Turbo-charge your Karaf applications’ persistence layer scalability with Apache Cassandra</li>
<li>Manage Big Data on Karaf with Apache Hadoop</li>
<li>Integration test with Pax Exam (bonus chapter!)</li>
</ul>
<br />
We hope the community benefits from our experiences, we've poured a lot of ourselves into this title. For more publications on Karaf please see our <a href="http://www.packtpub.com/open-services-gateway-initiative-starter/book">Instant OSGi Starter</a>, and <a href="http://www.packtpub.com/learning-apache-karaf/book">Learning Apache Karaf</a>.
<br />
<br />
<h3>
Up coming release candidates - Apache Karaf 2.3.8, 2.4.0, and 3.0.2!</h3>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqphckYAo6z2fT2SIi7vAnCy8DQd0YIfkGtrbb7QRzeylGCYhrmZbOXJNqLLar1cgwcF1hziJp08iScGU3AW8AFN3YAwzUgjMAB1yPy3QoZvq85JBi-ISZxuIdO8MU35mqXua5cVf_OPfd/s1600/Karaf-238-240-302.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqphckYAo6z2fT2SIi7vAnCy8DQd0YIfkGtrbb7QRzeylGCYhrmZbOXJNqLLar1cgwcF1hziJp08iScGU3AW8AFN3YAwzUgjMAB1yPy3QoZvq85JBi-ISZxuIdO8MU35mqXua5cVf_OPfd/s1600/Karaf-238-240-302.png" height="320" width="239" /></a></div>
<h4>
Apache Karaf 2.3.8:</h4>
<br />
This patch update will contain an essential update to Felix FileInstall, we hope to have this patch available for vote ASAP.<br />
<br />
<h4>
Apache Karaf 2.4.0:</h4>
<br />
This release candidate represents a new branch of Apache Karaf development. It shall include the latest Aries and Pax libraries, Apache Pom 13, add support for role-based JMX authorization, includes heap dumps when we create debugging data from create dump command, blueprint-web feature, support for JAAS groups, and includes Pax CDI feature. There are several hundred items currently in this RC's release notes, so you'll want to spend some time discovering all the hidden gems.<br />
<br />
<h4>
Apache Karaf 3.0.2:</h4>
<br />
Our second patch update to the 3.0 line, this release candidate will contain vital bug fixes, and essential library updates.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-16734544610999658892014-08-03T12:19:00.000-02:302014-08-03T12:19:09.896-02:30Apache Karaf 2.3.6 Released! <div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIEZwsHmcPwSHaqKMI2932Po3_6XoQrNJFLZeh6kMAr_G0mLhemCtzyYokgtHWaQUQ7oUX1kgQ1GKw4KHKaB5-IAo6yZfpKRpdjQSff4nlVWWbogUxDFicENnyhV0nj6jE0AEQbPi_9wfm/s1600/photo-6.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiIEZwsHmcPwSHaqKMI2932Po3_6XoQrNJFLZeh6kMAr_G0mLhemCtzyYokgtHWaQUQ7oUX1kgQ1GKw4KHKaB5-IAo6yZfpKRpdjQSff4nlVWWbogUxDFicENnyhV0nj6jE0AEQbPi_9wfm/s1600/photo-6.JPG" height="320" width="248" /></a></div>
The <a href="http://karaf.apache.org/">Apache Karaf </a>team are pleased to announce the availability of Apache Karaf 2.3.6!<br />
<br />
This is an update patch for Apache Karaf 2.3.5, containing many bug fixes, dependency updates, and improvements. New feature highlights include: Automatically create data sources from configuration files, add backing engine serivce for PublickeyLoginModule, add a flag to bin/client so that it can read private key from a specified location, and Provide shell:env command.
<br />
<br />
It is recommended that you review our <a href="http://karaf.apache.org/index/community/download/karaf-2.3.6-release.html">release notes</a> before updating your deployments.<br />
<br />
The Karaf 2.3.6 RC process was enjoyed with Placido Chianti 2011.<br />
<br />
As always, I'd like to thank the community for coming together to help make the Karaf release process one of the best in all of open source software.<br />
<br />
<br />
OpenDaylight Update:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkp1sIREFgdO3oT9aMx3QzRzo8U09vzs6vf70TiT3JNTvOuSd7_F1pPJuicM0jSG6zDEPSzBNDED0Ym5T-S3bNCSf9sFlrM1g9xkeobOEluU1-D-p795vQiRKevjwOnOgnULZbX55xJzHS/s1600/Screen+Shot+2014-05-19+at+12.55.05+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkp1sIREFgdO3oT9aMx3QzRzo8U09vzs6vf70TiT3JNTvOuSd7_F1pPJuicM0jSG6zDEPSzBNDED0Ym5T-S3bNCSf9sFlrM1g9xkeobOEluU1-D-p795vQiRKevjwOnOgnULZbX55xJzHS/s1600/Screen+Shot+2014-05-19+at+12.55.05+PM.png" height="219" width="640" /></a></div>
The <a href="http://www.opendaylight.org/">OpenDaylight</a> port to Apache Karaf has been proceeding steadily towards a stable ecosystem wide build. Next week's <a href="https://wiki.opendaylight.org/view/Tech_Work_Stream:Main">Techicial Work Stream</a> conference call will include an End-To-End Hands-on walk-through of ODL Karaf Features. I've copied in below the TWS meeting objectives as outlined by <a href="http://www.sdncentral.com/education/opendaylight-hydrogen-madhu-venugopal-brent-salisbury/2014/02/">Madhu Venugopal</a>:<br />
<br />
"Due to multiple queries from various projects, we are organizing an end-to-end hands on walk-through on Karaf.
This will cover all the way from<br />
<br />
1. Writing the Karaf feature file on any project<br />
2. Building the .kar<br />
3. Loading the Karaf Container<br />
4. Installing the built feature and Validation.<br />
<br />
Time permitting, we will also be covering the Docker based Integration Testing & Sonar coverage.
Mathieu Lemay & myself will be leading these topics.
<br />
We request at-least 1 representative from each of the projects participating in Helium to attend this session."<br />
<br />
I strongly recommend all OpenDaylight developers and users attend this meeting, also any interested Apache Karaf community members as this is a great opportunity to see Karaf's many benefits being realized in a large scale project. Please see the <a href="https://wiki.opendaylight.org/view/Tech_Work_Stream:Main">meeting page</a> for conference call details.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-29764830553819989342014-06-26T11:40:00.000-02:302014-06-26T12:01:49.009-02:30Apache Karaf Cookbook now available for pre-order!<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6msLQlIS8EVFARjqQPqmwOE9BOPo7zdQyIFbY0-DO5eH73Y26RaYc_LkOGyBCbTQEWeHTN1HBI-KWqPI-kVJttJkd_m7Aq1c6sM95Y8wKCO3nMxSYCRVJ8aDs9O6j3FRTM5okY5aWTCUM/s1600/9781783985081_0.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6msLQlIS8EVFARjqQPqmwOE9BOPo7zdQyIFbY0-DO5eH73Y26RaYc_LkOGyBCbTQEWeHTN1HBI-KWqPI-kVJttJkd_m7Aq1c6sM95Y8wKCO3nMxSYCRVJ8aDs9O6j3FRTM5okY5aWTCUM/s1600/9781783985081_0.jpg" height="320" width="259" /></a>This past winter Johan, Heath, Achim, and I started our latest adventure writing <a href="http://www.packtpub.com/apache-karaf-cookbook/book">Apache Karaf Cookbook</a> for <a href="http://www.packtpub.com/">Packt Publishing</a>. We're happy to announce that the book is finally available for pre-order via Packt's website.<br />
<br />
We've taken care to cram as many hints, tips, and experiences into its pages as we could.<br />
<br />
Taking a look at our table of contents you'll find recipes for:<br />
<br />
<ul>
<li>Apache Karaf for system builders</li>
<li>Turning Karaf into a Smart Router with Apache Camel</li>
<li>Model Karaf into a Message Broker with Apache ActiveMQ</li>
<li>Transform Karaf into a JSP host with Pax-web</li>
<li>Distribute your Karaf applications across a clustered container with Apache Karaf Cellar</li>
<li>Transmute Karaf into a web service container with Apache CXF</li>
<li>Turbo-charge your Karaf applications’ persistence layer scalability with Apache Cassandra</li>
<li>Manage Big Data on Karaf with Apache Hadoop</li>
<li>Integration test with Pax Exam (bonus chapter!)</li>
</ul>
<br />
We hope the community benefits from our experiences, we've poured a lot of ourselves into this title. For more publications on Karaf please see our <a href="http://www.packtpub.com/open-services-gateway-initiative-starter/book">Instant OSGi Starter</a>, and <a href="http://www.packtpub.com/learning-apache-karaf/book">Learning Apache Karaf</a>.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-80746961690449891372014-06-01T14:12:00.001-02:302014-06-01T14:13:50.551-02:30Up coming Apache Karaf releases, OpenDaylight update, and my acceptance into the ASF.<div class="separator" style="clear: both; text-align: center;">
</div>
We have two release candidates in progress: Apache Karaf 2.3.6 and 3.0.2.<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHCoHBNm7xfEHe68hBYPQwO6PvZWyr4WDb2Bd87xhjnT5s27Y72gQfwkVmzwpLwRvn4m3JxiGYbrZyOtifgZpA2Va0dZlUuqefNYqp_LOFwqx8o1si_leKInBdIJxLPnzz0m3QwEor1VQd/s1600/photo-6.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjHCoHBNm7xfEHe68hBYPQwO6PvZWyr4WDb2Bd87xhjnT5s27Y72gQfwkVmzwpLwRvn4m3JxiGYbrZyOtifgZpA2Va0dZlUuqefNYqp_LOFwqx8o1si_leKInBdIJxLPnzz0m3QwEor1VQd/s1600/photo-6.JPG" height="200" width="155" /></a><br />
<h4>
Our first target is the Karaf 2.3.x line. </h4>
<br />
<br />
Highlights in this RC include; <a href="https://issues.apache.org/jira/browse/KARAF-2815">Better management of RMI/JMX ports for pax-exam integration tests</a>, <a href="https://issues.apache.org/jira/browse/KARAF-2941">more robust JDBC against broken data sources</a>, <a href="https://issues.apache.org/jira/browse/KARAF-2914">several improvements</a> <a href="https://issues.apache.org/jira/browse/KARAF-2913">to JAAS</a>, among many other refinements and bug fixes.<br />
<br />
Wine pairing for this RC is Placido Chianti 2011<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEix0so9ME2TNOhlbCleGVX8rVGZARZDv9_CV9l5ztEcKBFBaIKjzlmB3PgrnxTEJOghNzutAkyfKAY7u0De7a0SFU3zJOqt0ssnR4oiWlZnXZr9jzFCadipmavnqEuu_HGckGlzL_or4jk-/s1600/photo-7.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEix0so9ME2TNOhlbCleGVX8rVGZARZDv9_CV9l5ztEcKBFBaIKjzlmB3PgrnxTEJOghNzutAkyfKAY7u0De7a0SFU3zJOqt0ssnR4oiWlZnXZr9jzFCadipmavnqEuu_HGckGlzL_or4jk-/s1600/photo-7.JPG" height="200" width="150" /></a></div>
<br />
<h4>
Our second release focus is the Karaf 3.0.x line.</h4>
<br />
Highlights in this RC include; <a href="https://issues.apache.org/jira/browse/KARAF-2978">RBAC recognize group configuration when use Publickey to login</a>, <a href="https://issues.apache.org/jira/browse/KARAF-2941">more robust JDBC against broken data sources</a>, <a href="https://issues.apache.org/jira/browse/KARAF-1698">add support for role based JMX authorization</a>, <a href="https://issues.apache.org/jira/browse/KARAF-3001">Mbean Server RBAC guard should support wildcard role</a>, among many other refinements and bug fixes.<br />
<br />
Wine pairing for this RC will be Gabbiano Chianti 2010.<br />
<br />
We can't wait to get these release candidates out to the community for validation and voting. Please keep an eye on our<a href="http://karaf.922171.n3.nabble.com/Karaf-Dev-f930721.html"> dev list</a> for when the votes go live.<br />
<br />
<h4>
Any updates on OpenDaylight on Apache Karaf?</h4>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy0RRKxGck7tpx1lqf1Yl67fY4UcWEhjvA66kD2cqIf2Lhdwovay87k9IkezpX9koil8Po03IKdtZW-Y0f7lItc3-13mBsrN_2RFhp7gTmLrWVfRskkdHHiAHjeL-Neqf32h8kSv3vbr6X/s1600/Screen+Shot+2014-05-19+at+12.55.05+PM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiy0RRKxGck7tpx1lqf1Yl67fY4UcWEhjvA66kD2cqIf2Lhdwovay87k9IkezpX9koil8Po03IKdtZW-Y0f7lItc3-13mBsrN_2RFhp7gTmLrWVfRskkdHHiAHjeL-Neqf32h8kSv3vbr6X/s1600/Screen+Shot+2014-05-19+at+12.55.05+PM.png" height="219" width="570" /></a></div>
<br />
Lots of initial features sets have been defined, and commands adapted to work in their new environment. It's still a work in progress, but coming along nicely :)<br />
<br />
There will be an open demo on Monday June 2nd, 2014 on the OpenDaylight Technical Work Stream call: <a href="https://wiki.opendaylight.org/view/Tech_Work_Stream:Main">https://wiki.opendaylight.org/view/Tech_Work_Stream:Main</a><br />
<br />
Topics on the call include:<br />
<br />
<br />
<ul>
<li>Karaf in OpenDaylight & Hands-On demo on developing ODL components for Karaf Runtime - Mathieu Lemay (40 mins) </li>
<li>Multi-Tenancy Discussion - David Lenrow (20 mins)</li>
</ul>
<br />
<h4>
Membership with the Apache Software Foundation!</h4>
<br />
On a personal note, I've recently accepted an invitation to become a <a href="http://apache.org/foundation/members.html">member</a> of the <a href="http://apache.org/">Apache Software Foundation</a>. I can not express how honoured I am to be given the opportunity to participate with the Apache Community on this level. I'm looking forward to years to come, helping to grow our communities, and contribute more to their success.<br />
<br />icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-53325328299495208512014-04-30T10:19:00.000-02:302014-04-30T11:59:00.713-02:30OpenDaylight on Apache Karaf!<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; margin-left: 1em; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgs3rSAVa6BCAsRc34ssRDjbitolfmuCuI054fRGIZD3bOfWfT0pC462kiQCHYieAzvcTKmFGDCiF8KXGPQAHOUCNn5t5_7_-59oQRTcBefeNhSZm81qkqRR7ra-joYsmuaE_Ikep7JKudZ/s1600/photo-5.JPG" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgs3rSAVa6BCAsRc34ssRDjbitolfmuCuI054fRGIZD3bOfWfT0pC462kiQCHYieAzvcTKmFGDCiF8KXGPQAHOUCNn5t5_7_-59oQRTcBefeNhSZm81qkqRR7ra-joYsmuaE_Ikep7JKudZ/s1600/photo-5.JPG" height="400" width="270" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">I'm placing aside a bottle of<br />
Colores Del Sol, Malbec, Mendoza, Argentina, 2010<br />
for when the first OpenDaylight Apache Karaf<br />
Release becomes available.</td></tr>
</tbody></table>
The <a href="http://www.opendaylight.org/">OpenDaylight</a> <a href="http://karaf.apache.org/">Apache Karaf</a> distribution is coming soon!<br />
<br />
<h4>
What is OpenDaylight?</h4>
<br />
OpenDaylight is an open platform for network programmability to enable <a href="http://en.wikipedia.org/wiki/Software-defined_networking">Software-Defined Networks</a> and create a solid foundation for <a href="http://en.wikipedia.org/wiki/Network_Functions_Virtualization">Network Functions Virtualization</a> for networks at any size and scale.<br />
<br />
<h4>
What is the OpenDaylight Apache Karaf Distribution?</h4>
<br />
To put it succinctly, it's an OpenDaylight distribution in which key ODL components are deployed on top of Apache Karaf. The base Karaf container has been configured to support OpenDaylight's specific needs, including Equinox core, key component features available by default, custom commands, and branding!<br />
<br />
<h4>
Why Apache Karaf?</h4>
<br />
OpenDaylight has been an OSGi based project from the start, now it's ready to improve its base environment experience via Karaf. Specifically, some of the key reasons for the distribution are:<br />
<ul>
<li>Ease of deployment.</li>
<li>Friendly console CLI.</li>
<li>Superior Pax Exam integration, and</li>
<li>Awesome, supportive community ;)</li>
</ul>
<br />
Stay tuned for updates as the OpenDaylight community moves towards the debuting of the new distribution.icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0tag:blogger.com,1999:blog-8119361957970651148.post-22294829209355753872014-04-13T19:45:00.001-02:302014-04-13T19:45:26.302-02:30Apache Karaf 2.3.5 and 3.0.1 Released!<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKs2syNO3xdkhiXrVmK7mXgmWY99lnW7XqtrvJ1lx9lsqwiUjjgIWaL9bOMNcF-ypjb3IVancWaCJkuvyYwHfT3kLOgO5spz3vi3Lg9TI-SSDCyB_JZu-DMGbaM7i6pl91JCBBv2H7HD6M/s1600/karaf-logo.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKs2syNO3xdkhiXrVmK7mXgmWY99lnW7XqtrvJ1lx9lsqwiUjjgIWaL9bOMNcF-ypjb3IVancWaCJkuvyYwHfT3kLOgO5spz3vi3Lg9TI-SSDCyB_JZu-DMGbaM7i6pl91JCBBv2H7HD6M/s1600/karaf-logo.png" height="86" width="320" /></a></div>
The <a href="http://karaf.apache.org/">Apache Karaf team</a> are pleased to announce the availability of Apache Karaf <a href="http://karaf.apache.org/index/community/download/karaf-2.3.5-release.html">2.3.5</a> and <a href="http://karaf.apache.org/index/community/download/karaf-3.0.1-release.html">3.0.1</a>!<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8SbXaVi3Vq63-WxFY15shYvAe0hfsp354vkF-dBaz8YX7whqtG0gHXJCPkJm62XpKJg8DKFcpEYW2a2GgdjyP7IifCoNh2v6AIbrli6iHuTAmXa7Qo0mpsE91W7GwLx_yWMWRF2jE5lCd/s1600/photo-4.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8SbXaVi3Vq63-WxFY15shYvAe0hfsp354vkF-dBaz8YX7whqtG0gHXJCPkJm62XpKJg8DKFcpEYW2a2GgdjyP7IifCoNh2v6AIbrli6iHuTAmXa7Qo0mpsE91W7GwLx_yWMWRF2jE5lCd/s1600/photo-4.JPG" height="267" width="320" /></a>These releases provide system update patches to the 2.3.x and 3.0.x lines. It is recommended that you review our release notes before updating your deployments.<br />
<br />
This release process has been something more special, as we produced two release candidates for review at the same time - hence <a href="http://icodebythesea.blogspot.ca/2014/04/double-decanter-day.html">double decanter day</a>.<br />
<br />
The <a href="http://karaf.apache.org/index/community/download/karaf-3.0.1-release.html">Karaf 3.0.1</a> RC process was enjoyed with Gabbiano Chianti 2011, while the <a href="http://karaf.apache.org/index/community/download/karaf-2.3.5-release.html">Karaf 2.3.5</a> RC was enjoyed over a bottle of Fetzer Vally Oaks Zinfandel 2010.<br />
<br />
<a href="http://karaf.apache.org/index/developers/release-guide.html">Best release process ever</a>.<br />
<br />
Happy developing!icbtshttp://www.blogger.com/profile/04070633252162860464noreply@blogger.com0