So download the Fuse Management Console (FMC) and fire up the shell with this command line:
From the shell, type the following which will list all of the bundles with threshold > 0
FMC:[email protected]> list -t 0
Some bundles of interest:
- Key Karaf bundles necessary for a running Karaf instance
- Fuse Fabric Zookeeper service
- Fuse Fabric Core
- Jetty bundles
- jclouds bundles
- Fuse Application Bundles
- Fuse Management Console Web Archive
FMC:[email protected]> fabric:create
Let’s take a quick step back. What containers are we talking about?
Fuse Fabric’s purpose is to manage, configure, and provision containers. The containers are Karaf containers. That’s right, Karaf containers which are OSGI containers. The management, configuration, and provisioning mechanisms are around Karaf, what bundles are installed, what features are enabled, what configurations are available for the features/bundles, etc. Karaf is the core container currently used for Apache ServiceMix and Fuse Enterprise ESB. If you’d like to brush up on Karaf a little bit, see the documentation at the Apache site.
So anything that is deployed through Fabric is Karaf containers, and the location, configurations, and accessibility of these containers is kept in the registry (which is implemented with Zookeeper). So far so good? Let’s get into how we specify configurations of these containers.
FMC:[email protected]> profile-list
The profiles that are available by default in the FMC can be used as starting points for creating your own profiles. Profiles can be inherited from and child profiles can override parent configurations. You can use inherit from multiple “?parent profiles”? as well. Suppose you have a set of containers that should all have the same camel route deployed but each container will have different configurations for that route. You can start with a parent profile and inherit from it for other profiles that specify more specific configuration.
Profiles can also be versioned. For example, out of the box you’ll see that all profiles are considered part of “version 1.0”. A version specifies a “set of profiles”.? If you wanted to create a new version, you create a new set of profiles for version 1.1 or 2.0 or whatever number you give it. Using versions, you can quickly deploy new versions of containers, apps, brokers, configurations, etc. to either select containers or to all containers. The versioning mechanisms is how Fuse Fabric allows you to support rolling upgrades of deployments to containers.
Reference: Managing large deployments of MQ and ESB with Fuse Fabric, Part I from our JCG partner Christian Posta at the Christian Posta Software blog.