Chapter 4. Installing Red Hat JBoss Fuse Service Works

JBoss Fuse Service Works provides an installer, jboss-fsw-installer-6.0.0.GA-redhat-4.jar, which can be used to initiate either a graphical or script-based installation.
With the installer, users can choose to install one or more of the following:
  • JBoss EAP (mandatory)
    • including HornetQ
  • SwitchYard - selecting this component also installs the following components:
    • jBPM
    • Drools
    • RiftSaw (BPEL)
    • Smooks
    • Apache Camel
    • Apache CXF
  • Runtime Governance Client (must be accompanied by SwitchYard)
  • Runtime Governance Server and Client
  • Design Time Governance (must be accompanied by S-RAMP Repository)
  • S-RAMP Repository
  • Red Hat JBoss Fuse Service Works quickstarts

4.1. Installing JBoss Fuse Service Works by GUI

Prerequisites

Important

The set of online remote repositories is a technology preview source of components. As such, it is not in scope of patching and is supported only for use in development environment. Using the set of online repositories in production environment is a potential source of security vulnerabilities and is therefore not a supported use case. For more information see https://access.redhat.com/site/maven-repository.

Note

If you have multiple versions of Java installed on your server, Red Hat recommends setting PATH, JAVA_HOME, and JBOSS_HOME to ensure the correct version of Java is used at runtime:
  • Set JAVA_HOME to the version of Java. For example, /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.VERSION/.
  • Set PATH to include the same version of Java.
  • Set JBOSS_HOME to your jboss-eap-6.1 directory.

Procedure 4.1. Install JBoss Fuse Service Works

  1. Open a new terminal and navigate to the folder where you have downloaded the JBoss Fuse Service Works installer file.
  2. Run the following command, replacing 6.0.0.GA-redhat-4 for the version you downloaded if required:
    java -jar jboss-fsw-installer-6.0.0.GA-redhat-4.jar
  3. You are presented with the End User License Agreement. If you agree with the terms, select I accept the terms of this license agreement and then select Next to continue.
  4. You are prompted for the location in which you want to install JBoss Fuse Service Works. Specify a location and select Next. You will be notified that an instance of JBoss EAP will be placed in the chosen location. Select OK to proceed.

    Warning

    A warning message is displayed if the directory already exists. Red Hat does not recommend installing over the top of an existing installation. However, if you wish to proceed, select Yes to continue.
  5. You are prompted for the installation packs to install. Select Next to continue with the default options.

    Note

    Depending on your deployment, you can select packs other than the default options. For example, if you do not wish to install every pack, you could select SwitchYard and Runtime Governance Client only, for a basic installation.
  6. You are prompted to create an administrative user. Once created, this user will be added to the ManagementRealm and can be used to access the Management Console and other applications secured using ManagementRealm. Enter the new username and password in the appropriate fields and select Next.
  7. You are prompted to create a governance user. It will give you access to S-RAMP, DTGov and RTGov consoles along with the S-RAMP Command Line Interface. Enter a username and password and select Next.
  8. You are then prompted to setup your Maven repository. This will enable you to build the quickstarts provided. Specify the location of an existing or new location for your Maven settings file (typically ~/.m2/settings.xml). If you do not currently have a settings file, a new settings.xml file will be created for you in the location you provide. Select Next.

    Note

    If you choose to skip the maven repository setup, you will be asked to confirm this decision. Select Yes to continue.
  9. You are prompted to configure the SAML keystore. It is used by a Java KeyStore to sign authentication tokens. Enter the SAML keystore password and select Next.
  10. You are then prompted to enable the Java Security Manager. It enforces access rules at the JVM runtime based on one or more security polices. Select Next when you are ready to proceed.

    Important

    Enabling the Java Security Manager may reduce server performance.
  11. At this point you are asked to choose between the default or advanced configuration. Select the default configuration for a basic configuration, and select Next to continue.
  12. You are prompted to configure the password vault. Enter the Vault keystore password in the appropriate fields and select Next.
  13. You are presented with a screen specifying default database settings. The installer creates a database that is used to hold data for various components of JBoss Fuse Service Works, including BPEL, jBPM and S-RAMP.
    Change the username and password to something secure and select Next to continue.

    Warning

    The default database is an H2 database. Red Hat recommends configuring an alternative database for production systems, using the advanced configuration options.
  14. You are presented with a list of packages that will be installed. Select Next to proceed.
  15. The installation will commence. A status bar for each component will display its progress. Once this is complete, select Next.
  16. Additional processing of tasks will commence. When the status bar indicates this has been completed, select Next.
  17. The console displays a message to let you know that the application has been successfully installed. Also, it offers you a list of URLs for accessing the Administration and BPEL Consoles, S-RAMP and DTGov User Interfaces and Gadget Server.
    If you want to repeat the same installation on other machines, select Generate installation script and properties file and choose a location and filename for the script.
  18. Select Done.
Result

The basic installation is complete.

Note

When running the installer on Windows, you may be prompted to provide administrator credentials during installation. To prevent this from happening, add the izpack.mode=privileged option to the installation command:
java -Dizpack.mode=privileged -jar jboss-fsw-installer-6.0.0.GA-redhat-4.jar

4.1.1. Configure Advanced Settings

During the JBoss Fuse Service Works installation, you can choose between a default or advanced configuration. This section provides additional instructions if you choose to proceed with the advanced configuration.

Procedure 4.2. Task

  1. After choosing Perform advanced configuration, select the items you want to configure and select Next.
  2. If you chose the Install password vault option, the Configure password vault screen appears. This mechanism encrypts sensitive strings and stores them in an encrypted keystore.
    Enter your keystore information in the required fields and select Next.
  3. If you chose the Enable SSL security option,the SSL Security screen appears. Enter the location and password of a keystore under the respective fields. Confirm the password and select Next.
  4. If you chose the Enable LDAP authentication option, the LDAP Configuration screen appears. You can use the LDAP server as an authentication and authorization authority, both for applications and the management interface.
    Enter the required information to suit your system requirements and select Next.
  5. A screen displaying the new security realm configurations appears. Select Next to continue.
  6. If you chose the Install JDBC Driver option, the JDBC Driver Setup screen appears. You can setup your database connection using this screen.
    Type the Database Username and Password under the respective fields. Confirm the password and select Next.

    Note

    JBoss Fuse Service Works requires a database to hold data for various components, including BPEL, jBPM and S-RAMP. It is used to hold state information that must be persisted from action to action so that recovery is possible in case of a server crash.
    Clustering does not rely upon this database in the default configuration. Instead, Infinispan is used as a memory grid.

4.2. Installing JBoss Fuse Service Works by Script

In addition to running the installer GUI, you can also run the installer by script. This method of installation removes the need to step through the graphical installer for every installation, enabling simplified repeat installations or installations in bulk.
Prerequisites

In order to install JBoss Fuse Service Works by script, you must have already run the installer in graphical mode, and saved the installation script when prompted at the end of the installation. The script will have been saved in EAP_HOME, along with an associated .variables file; for example, InstallConfigRecord.xml and InstallConfigRecord.xml.variables.

Procedure 4.3. 

  1. You can change the installation directory by editing the script and modifying the value specified within the <installpath> element.

    Note

    You can specify either a full directory path or a path relative to the directory in which you run the script.

    Warning

    Red Hat does not support installing over an existing instance of Fuse Service Works. Therefore be sure to select a new or empty directory.
  2. Run the script using the following command, replacing 6.0.0.GA-redhat-4 for the version you downloaded if required:
    java -jar jboss-fsw-installer-6.0.0.GA-redhat-4.jar InstallConfigRecord.xml
    The script runs and prompts you to provide Governance, SAML keystore, and Vault keystore passwords, as shown below:
    [ Starting automated installation ]
    Read pack list from xml definition.
    Try to add to selection [Name: Red Hat JBoss Enterprise Application Platform and Index: 0]
    Try to add to selection [Name: Red Hat JBoss Fuse Service Works and Index: 1]
    Try to add to selection [Name: Switchyard quickstarts and Index: 2]
    Try to remove from selection [Name: RT-Gov Client-only and Index: 3]
    Try to add to selection [Name: RT-Gov Server+Client and Index: 4]
    Try to add to selection [Name: RTGov Server quickstarts and Index: 5]
    Try to add to selection [Name: DT-Gov run-time and Index: 6]
    Try to add to selection [Name: DT-Gov quickstarts and Index: 7]
    Try to add to selection [Name: S-RAMP run-time and Index: 8]
    Try to add to selection [Name: S-RAMP quickstarts and Index: 9]
    Try to add to selection [Name: Red Hat JBoss Fuse Service Works quickstarts and Index: 10]
    Modify pack selection.
    Pack [Name: RT-Gov Client-only and Index: 3] removed from selection.
    Governance password:
    Confirm Governance password:
    SAML keystore password:
    Re-enter SAML keystore password:
    Vault keystore password:
    Re-enter vault keystore password:

4.2.1. Supplying Passwords to the Installation Script

When installing JBoss Fuse Service Works by script, the user will be prompted to supply various passwords during installation by default.
If you would like a fully automated installation, add the passwords to the associated .variables file and run the installer with the -variablefile option. For example, assuming the script is named InstallConfigRecord.xml:
java -jar jboss-fsw-installer-6.0.0.GA-redhat-4.jar InstallConfigRecord.xml -variablefile InstallConfigRecord.xml.variables
You can also supply them directly on the command line as key/value pairs by using the -variables option:
java -jar jboss-fsw-installer-6.0.0.GA-redhat-4.jar InstallConfigRecord.xml -variables KEY_1=VALUE_1 KEY_2=VALUE_2 ...

Warning

Red Hat recommends you remove plaintext passwords from the .variables file after installation to avoid compromise.