1.7. Provision Containers


Provisioning containers

All of the prerequisites are now in place for provisioning Red Hat JBoss Fuse containers in the cloud. After joining your local container to the fabric (which enables you to administer the fabric remotely), you can provision a new container in the cloud by entering a single console command.

Join the local container to the fabric

To enable administration of the new fabric, first join your local container to the fabric. This makes it possible to administer the fabric by entering console commands in your local container. Invoke the join command as follows:
JBossFuse:karaf@root> fabric:join -n --zookeeper-password admin 50.19.18.91
Where 50.19.18.91 is the public IP address of the registry container in the cloud (alternatively, you could use the public hostname here). The remote Fabric Server's Zookeeper password must be provided, in order to join the current container to the fabric.
Important
Don't forget to include the -n option, which ensures that the local container remains a non-managed container (if you forget the -n option, the local container will be re-provisioned automatically and you will lose access to the JClouds and Fabric console commands).
To check that the join has been successful, try listing the containers in the fabric, as follows:
JBossFuse:karaf@root> fabric:container-list
[id]                           [version] [alive] [profiles]                     [provision status]
registry                       1.0       true    fabric, fabric-ensemble-0000-1 success
root*                          1.0       true    fabric

Create container and deploy profile in one step

If you already know what profiles you want to deploy in the new containers, the most efficient approach is to create the compute instances and specify the profiles all in the same command.
For example, to create two new compute instances as part of the current fabric and to deploy the profiles mq and fabric into each new container, enter the following console command:
JBossFuse:karaf@root> fabric:container-create-cloud --name aws-ec2
--hardwareId t1.micro --os-family rhel --os-version 6.0
--profile mq --profile fabric mqserver 2
Note how you can deploy multiple profiles, by specifying the --provider option multiple times. This command produces output like the following:
Looking up for compute service.
Creating 2 nodes in the cloud. Using operating system: rhel. It may take a while ...
Node fabric-3ea09446 has been created.
Node fabric-3ca09444 has been created.
Configuring firewall.
Configuring firewall.
Installing fabric agent on container mqserver1. It may take a while...
Installing fabric agent on container mqserver2. It may take a while...
Overriding resolver to publichostname.
Overriding resolver to publichostname.
                  [id] [container]                    [public addresses]             [status]                       
  us-east-1/i-3ca09444 mqserver2                      [50.19.15.210]                 success                        
  us-east-1/i-3ea09446 mqserver1                      [184.72.214.117]               success

Create container and deploy profile in two steps

You can create containers and deploy profiles in separate steps, as follows:
  1. Create two new Fabric Containers, mqserver1 and mqserver2, as follows:
    JBossFuse:karaf@root> fabric:container-create-cloud --name aws-ec2
    --hardwareId t1.micro --os-family rhel --os-version 6.0 mqserver 2
  2. Deploy the profiles mq and fabric into each of the new Fabric Containers, as follows:
    JBossFuse:karaf@root> fabric:container-change-profile mqserver1 mq fabric
    
    JBossFuse:karaf@root> fabric:container-change-profile mqserver2 mq fabric

Check the provision status

After creating and deploying, you can test the provision status of the new containers using the fabric:container-list command, as follows:
JBossFuse:karaf@root> fabric:container-list
[id]                           [version] [alive] [profiles]                     [provision status]
mqserver1                      1.0       true    fabric, mq                     success
mqserver2                      1.0       true    fabric, mq                     success
registry                       1.0       true    fabric, fabric-ensemble-0000-1 success
root*                          1.0       true    fabric
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.