1.4. Initialize Your Local Container


Prerequisites

This tutorial assumes you have a fresh installation of Red Hat JBoss Fuse on your local machine (see Installation Guide). If you have previously experimented with the local container instance, it might be a good idea to perform a cold start before you proceed.

Forcing a cold start

(Optional) If you are not sure what state your local container is in or if you have previously used your local container in the context of a fabric, it is a good idea to force a cold start before you continue. This ensures that your container is in a known state (a plain, unmanaged container) and makes it more likely that you will be able to follow the tutorial steps without any problems.
To force a cold start, perform the following steps:
  1. If the container is currently running, shut it down by entering the following console command:
    JBossFuse:karaf@root> shutdown -f
    Note
    If your container has any child instances running, you must also shut the child instances down. On *NIX systems, you could use the command ps -ef | grep karaf to discover any child instances.
  2. Delete the InstallDir/data/ directory.
    Warning
    This will completely wipe the state of the container (apart from the configuration settings stored under InstallDir/etc/).
    Note
    If your container has any child instances, you must also delete the InstallDir/instances/ directory, which contains the data for the child instances.
  3. Start the container by entering the following commands:
    cd InstallDir/bin
    ./fuse

Create a fabric on your local container

To access the necessary Fabric functionality and Fabric commands, you need to create a fabric on your local container. Perform the following steps:
  1. Any existing users in the InstallDir/etc/users.properties file are automatically used to initialize the fabric's user data, when you create the fabric. You can populate the users.properties file, by adding one or more lines of the following form:
    Username=Password[,RoleA][,RoleB]...
    But there must not be any users in this file that have the admin role. If the InstallDir/etc/users.properties already contains users with the admin role, you should delete those users before creating the fabric.
    Warning
    If you leave some administrator credentials in the users.properties file, this represents a security risk because the file could potentially be accessed by other containers in the fabric.
    Note
    The initialization of user data from users.properties happens only once, at the time the fabric is created. After the fabric has been created, any changes you make to users.properties will have no effect on the fabric's user data.
  2. To create the fabric container, enter the following console command:
    JBossFuse:karaf@root> fabric:create --new-user AdminUser --new-user-password AdminPass
      --zookeeper-password ZooPass --wait-for-provisioning
    The --new-user and --new-user-password options specify the credentials for a new administrator user. The ZooPass password specifies the password that is used to protect the Zookeeper registry.
    Note
    If you use a VPN (virtual private network) on your local machine, it is advisable to log off VPN before you create the fabric and to stay logged off while you are using the local container. A local Fabric Server is permanently associated with a fixed IP address or hostname. If VPN is enabled when you create the fabric, the underlying Java runtime is liable to detect and use the VPN hostname instead of your permanent local hostname. This can also be an issue with multi-homed machines. To be absolutely sure about the hostname, you could specify the IP address explicitly—see chapter "Creating a New Fabric" in "Fabric Guide".

Install JClouds and Fabric commands on the local container

After a cold start, the container does not have the required cloud commands installed by default. To enable support for accessing and administering the AWS EC2 provider, deploy the cloud-aws.ec2 profile into your local container, as follows:
JBossFuse:karaf@root> fabric:container-add-profile root cloud-aws.ec2
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.