Meet Fabric8 and video of fabric8 provisioning Apache Tomcat

Recently my fellow colleague Christian Posta wrote two great blog entries about fabric, which I want to share to you.

The new fabric8 logo
In his Meet Fabric8: An open-source integration platform based on Camel and ActiveMQ, Christian introduces us to fabric8, and talks about what fabric8 brings to the table from a DevOps perspective, and some of the other value-adds. Christian also talks about the history of the project.

In his 2nd blog DevOps with Apache Tomcat/TomEE and Fabric8, Christian talks and demonstrates some of the upcoming functionality in the next 1.1 beta7 release, where fabric8 adds support for provision and manage Apache Tomcat, and other containers. Christian recorded a video demonstrating this in action.

We are currently working hard on getting the last pieces into the 1.1 beta7 release which ought to be released this week. We have also worked on revamping the fabric8 website, and working on having the documentation in a nice bookish readable format, and as in PDF as well. The documentation is nicely readable now on handheld devices. I am also putting my touches on improving the quickstarts and examples to provide a lot more documentation and how-to. So expect the documentation, quickstarts, and other examples to have out attention, leading up to the 1.1 release.

We want to do a bunch of beta releases, as this makes it much easier for the community to try out fabric8, and help contribute to the project, before we reach 1.1 final release (ETA sometimes after the summer vacation).


Apache Camel, Groovy and hawtio at gr8conf

Today I presented Apache Camel at the gr8conf, which is a Groovy conference. So in my talk I presented what Camel can do with Groovy today.

Giving a talk about Apache Camel and Groovy at gr8conf 2014 in Copenhagen

The talk was recorded and will be later published by the gr8conf organizers. So keep an eye on their website when that happens.

Being here at the gr8conf is fun and a great event. I love how the groovy community and ecosystem has been able to establish this annual conference, running at its 6 year now. Also I take my hat off for the great people of the groovy team that do the great work on this language, that is now over 10 years old.

In my talk I also demonstrated hawtio which is a great web console, and a project that is fun to work on. So to prepare for gr8conf I developed a plugin example for hatwtio that is a Groovy Shell, so you can execute groovy scripts from the web console.

The source code for the example is in github at: https://github.com/hawtio/hawtio/tree/master/hawtio-plugin-examples/groovy-shell-plugin

And the plugin can easily be installed in Apache Tomcat, Karaf, JBoss Fuse, fabric8 etc.

Custom plugin installed in hawtio running on Apache Tomcat

If you are interested in learning how to build custom plugins for hawtio, then I think the groovy shell plugin is a good example, as it has a bit of backend service, and a simple web page to go with that.

So in my day time work I have great fun working with great technologies like Apache Camel, hawtio, and fabric8. And also a bit fun when I get a chance to work a bit with Groovy too. Anyway I just wanted to say that all these four awesome technologies has something in common. They are created/co-created by a great entrepreneur in our industry.

A slide with 4 great technologies that has something in common ...

Okay there is almost beer'o'clock here at gr8conf, as the organizers have brewed their own groovy beers we are going to taste soon in the scroll bar ;)


xPaaS in Action - Video from Red Hat JBoss Middleware keynote

At Red Hat Summit and Devnation the middleware keynote was presented, where Burr Suttor and his team accepted the following mission.

xPaaS mission for the keynote demo
They really did it on stage building a data center on stage using bare metal commodity hardware, and installing OpenStack and OpenShift as the cloud platform. And then JBoss Fuse 6.1 on top of that.

Red Hat also announced the availability of JBoss Fuse 6.1 at the summit, so Burr and his team is using the actual GA release for the demo.

You can watch the keynote as it has been published to youtube, and their mission starts at about 23 minutes into the video.

Link to video: https://www.youtube.com/watch?v=XPK2RTqlBxk


hawtio 1.3.0 released and a bit news about the 1st fabric8 community release

So today on april 1st we released hawtio 1.3.0. Well we are likely not making the same headlines as others news would do on this aprils fool day. But nevertheless it yet another sign of a great community and project where we release often.

It sure also helps that the release procedure is streamlined and much easier than some of the other projects we work on from time to time.

This release hasn't so many new features as the previous 1.2.3 release. But we upgraded to latest jolokia as well fixed a number of bugs, and prepared hawtio to support the upcoming fabric8 community release. You can find the changes for hawtio in the changelog page.

So we are working on making the codebase for fabric8 ready for the 1st community release. There is still some ongoing refactoring of naming such as fusesource -> fabric8 etc, to ensure the entire codebase is not using a company name or company brand - it is 100% an open source and free community project, using the ASL 2.0 license and source code hosted at github.

In the mean time we are also hacking on some great new stuff making into this 1st community release. For example the fabric will be poly container, meaning that support for Apache Tomcat, and JBoss WildFly is in the works, and other containers to follow.

James Strachan is currently hacking on the Tomcat, and he got the first piece working today, as he mentioned on the public fabric8 chat room today

[18:17:12] <+jstrachan> yay, got the hawtio console up in tomcat and the containers view shows a container (but it thinks its still updating ;)

Surely we are going to blog with more details about fabric8 when the 1st community release is around the corner. We likely will do a number of beta releases before the GA.


JBoss Fuse on OpenShift - How to connect to twitter

I recently recorded a video using JBoss Fuse on OpenShift to deploy a new container which runs a Camel based application that polls twitter feeds and logs them.

JBoss Fuse on OpenShift Video
I did the initial recording, and then the good OpenShift folks polished the video and did a voice over, so the video appears more professional with a great narrator.

The video and transcript is now online on the OpenShift website here.

You can try all this by yourself, by following this getting started guide first, and then you can install the twitter application afterwards, as shown in the video.

- Getting started with JBoss Fuse on OpenShift
JBoss Fuse on OpenShift: How to Connect to Twitter


Apache Camel 2.13.0 released

We have just released Apache Camel 2.13.0 which you can download from Apache, as well from Maven Central. This release is about 6 months of work since Camel 2.12.0 was released.

In this release the community have contributed a number of new components such as integration with Splunk, Apache Hadoop 2.x, Infinispan, JGroups, and a few others. We also have a component to integrate with Apache Kafka, but currently the documentations is outstanding.

The Splunk component was developed and contributed by Preben Asmussen, whom wrote a blog post about it in action.

A number of open source projects has migrated to use the ASL2 license which allows us to provide the Infinispan and JGroups components out of the box - Yeah the ASL2 license rocks!

There is also a new language that leverages JSonPath which makes routing using JSon payloads.

We also improved support for Spring 4.x, so you should be able to use Spring with this release. However the release is built and tested against Spring 3.2.8. If you have any trouble let us know, but we intended to upgrade for Spring 4.x for the next release.

This release comes with the usual hardening, improvements and bug fixes we do for each release.

You can find more information in the release notes, and make sure to read the sections in the bottom of the page, when you upgrade.


hawtio 1.2.3 Released - Screenshots of some of the new hawt stuff

Today we released hawtio 1.2.3 - yay that is a beautify version number ;) 1-2-3 hawtio is ready for download and use.

The highlights of this new release from the changelog includes:

  • New hawtio Chrome Extension for easier connection to remote JVMs from your browser without having to run a hawtio server or connect through a web proxy
  • Upgraded to TypeScript 0.9.5 which is faster
  • threads plugin to monitor JVM thread usage and status.
  • Moved java code from hawtio-web into hawtio-system
  • Clicking a line in the log plugin now shows a detail dialog with much more details.
  • ActiveMQ plugin can now browse byte messages.
  • Improved look and feel in the Camel route diagram.
  • Breadcrumb navigation in Camel plugin to make it easier and faster to switch between CamelContext and routes in the selected view.
  • Added Type Converter sub tab (requires Camel 2.13 onwards).
  • Better support for older Internet Explorer browsers.
  • Lots of polishing to work much better as the console for fabric8
  • Fixes these 175 issues and enhancements

I will like to showcase the chrome extension a bit more.

hawtio as chrome extension

In the last 1.2.2 release we had a preview of the Google Chrome Extension which now has been improved and polished. So let's kick of this blog by installing and using hawtio 1.2.3 in your google web browser.

Just follow the instructions on the getting started page. And hawtio should be available from the web browser as shown below.

What we would do next is to connect to the remote JVM which we want to manage and gain insight what happens in the JVM. For example to connect to the upcoming Apache ActiveMQ 5.10 message broker, you connect using the details shown in the screenshot.

And when connected to the broker, you can access the server log, and as well manage the broker, such as browsing the queues and topics, and much more.

Browsing remote ActiveMQ server log using hawtio directly from your web browser.
You can also launch hawtio using the Chrome App Launcher from your operating system. For example from my OSX I can click the app launch icon which now includes hawtio.
Launch hawtio as a native application from your OS

Another highlight is the improved look and feel of the Camel plugin. Though we are not done yet, so we would like feedback on this, as finding the right colors that everybody
likes isn't so easy :)

Improved Camel Diagram look and feel

The Camel diagram which shows the routes visually now shows the various EIPs using different colors. For example the Apache Camel Servlet Tomcat example is shown below:

Camel diagram improved with more colors

Also we added a breadcrumb functionality which is known in IDEA which makes switching between routes and endpoints in the Camel plugin faster. To use that click that double arrow on the top right corner of the Camel Tree as shown below:

Double arrow accesses the breadcrumb functionality for fast switching between routes and endpoints.
And we are also ready for the upcoming Apache Camel 2.13 release, which allows hawtio to list all the registered type converters, and associated utilization statistics, as illustrated below:

Camel 2.13 can now list all the registered type converters and their utilization
Another functionality I want to highlight is the Maven plugins we included in last release.

Maven Plugin to bootup with hawtio

For example we can bootup the examples that comes out of box with Apache Camel. For example to run the management example with the hawtio web console, all we do is.

davsclaus:~/Downloads$ tar xf apache-camel-2.12.3.tar.gz
davsclaus:~/Downloads$ cd apache-camel-2.12.3
davsclaus:~/Downloads/apache-camel-2.12.3$ cd examples/
davsclaus:~/Downloads/apache-camel-2.12.3/examples$ cd camel-example-management/
davsclaus:~/Downloads/apache-camel-2.12.3/examples/camel-example-management$ mvn compile io.hawt:hawtio-maven-plugin:1.2.3:camel

And hawtio opens a web page with hawtio ready to use. With that I can gain insight into the Camel example and see real time data from the routes, and so forth.

hawtio plugin launched together with the Camel Management Example
You can find more details about the hawtio Maven plugins here.

Want to learn more

You can find more details about hawtio at the website. Its 100% open source, and licensed using the permissive Apache License. The source code is at gihub.

At the DevNation conference next month, Stan Lewis, James Strachan, and myself is demonstrating and talking more about hawtio. For example James will talk about open source integration in the cloud, where hawtio is the console for JBoss Fuse and fabric8. Stan Lewis gives two talks about hawtio, one focused how you can extend and write your custom plugins, and as well how to skin the look and feel, to create your own custom consoles.