Installation Guide

JBoss Enterprise Application Platform 6.2

For use with Red Hat JBoss Enterprise Application Platform 6

Edition 1

Nidhi Chaudhary

Lucas Costi

Russell Dickenson

Sande Gilda

Vikram Goyal

Eamon Logue

Darrin Mison

Scott Mumford

David Ryan

Misty Stanley-Jones

Keerat Verma

Tom Wells

Abstract

This book is a guide to the installation of Red Hat JBoss Enterprise Application Platform 6 and its patch releases.

Preface

Chapter 1. Product Overview

1.1. About Red Hat JBoss Enterprise Application Platform 6 (JBoss EAP 6)

Red Hat JBoss Enterprise Application Platform 6 (JBoss EAP 6) is a fast, secure, powerful middleware platform built upon open standards, and compliant with the Java Enterprise Edition 6 specification. It integrates JBoss Application Server 7 with high-availability clustering, powerful messaging, distributed caching, and other technologies to create a stable and scalable platform.
The new modular structure allows for services to be enabled only when required, significantly increasing start up speed. The Management Console and Management Command Line Interface remove the need to edit XML configuration files by hand, adding the ability to script and automate tasks. In addition, it includes APIs and development frameworks that can be used to develop secure, powerful, and scalable Java EE applications quickly.

1.2. Features of JBoss EAP 6

Table 1.1. 6.1.0 Features

Feature Description
Java Certification Certified implementation of the Java Enterprise Edition 6 Full Profile and Web Profile specifications.
Managed Domain
  • Centralized management of multiple server instances and physical hosts, while a Standalone Server allows for a single server instance.
  • Configurations, deployments, socket bindings, modules, extensions, and system properties are managed per server group.
  • Application security, including security domains, are managed centrally for simplified configuration.
Management Console and Management CLI New interfaces are provided to manage the domain or standalone server. Manual editing of XML configuration files is no longer required. The Management CLI also offers batch mode that can script and automate management tasks.
Simplified directory layout The modules/ directory now contains the application server modules, instead of using common and server-specific lib/directories. The domain/ and standalone/ directories contain the artifacts and configuration files for domain and standalone deployments.
Modular classloading mechanism Modules are loaded and unloaded on demand to provide performance and security benefits and a faster start-up and restart time.
Streamlined Data source management Database drivers are deployed just like other services. In addition, datasources are created and managed directly in the Management Console or Management CLI.
Faster start and stop time JBoss EAP 6 uses fewer resources and is extremely efficient in its use of system resources. This is especially beneficial for developers.

Chapter 2. Introduction

2.1. About the Red Hat Customer Portal

The Red Hat Customer Portal is the centralized platform for Red Hat knowledge and subscription resources. Use the Red Hat Customer Portal to:
  • Manage and maintain Red Hat entitlements and support contracts;
  • Download officially-supported software;
  • Access product documentation and the Red Hat Knowledgebase;
  • Contact Global Support Services; and
  • File bugs against Red Hat products.
The Customer Portal is available here: https://access.redhat.com.

Chapter 3. System Requirements

3.1. JBoss EAP 6 Installation Prerequisites

Each installation process for JBoss EAP 6 has a number of prerequisites. This section covers the common requirements, as well as those that are installation specific.

Common Prerequisites

ZIP/Installer Prerequisites

  • Administration privileges for the installation directory.
  • Ensure that the chosen JDK has been extracted (or installed). Refer to the JDK's documentation for information on how to do this.
  • On Microsoft Windows Server, ensure that the JAVA_HOME and PATH environment variables have been set, otherwise shortcuts will not work.
  • On Hewlett-Packard HP-UX, ensure that an unzip utility has been installed.

RPM Prerequisites

  • Register the server on the Red Hat Network.
  • Subscribe to the Red Hat Enterprise Linux Server base software channel appropriate to your Red Hat Enterprise Linux version.
  • Subscribe to the JBoss Application Platform for Server sub-channel, in the JBoss Enterprise Platform group.
  • A Java 6 JDK is required. This can be obtained by subscribing to the supplementary software channel for your Red Hat Enterprise Linux installation. For example; the channel for Red Hat Enterprise Linux version 6 installed on i386 architecture is rhel-i386-server-supplementary-6.

    Important

    A Java 6 JDK is required, even if you wish to use a Java 7 JDK.

Chapter 4. Install Instructions

4.1. JBoss EAP 6 Installation Methods

There are several different ways to install JBoss EAP 6. Each method is best used in certain situations. This topic provides a brief overview for each type of installation, and links to the sections that cover the relevant installation processes.

Table 4.1. Installation Methods

Method
Description
Instructions
Zip Installation
The Zip archive is suitable for installation on all supported operating systems. This process should be used if you wish to extract the instance manually.
JAR Installer
The JAR installer can be run in a console, or as a graphical wizard. Both options provide step-by-step instructions for installing and configuring the server instance. Additional setup, including the Quickstarts and Maven Repository, is also possible with the installer.
RPM Installation
JBoss EAP 6 can be installed with the supported RPM package graphical installer, or with a command-line interface. This method is suitable for supported installations of Red Hat Enterprise Linux 5 and 6.

4.2. Zip Installation

4.2.1. Download JBoss EAP 6 (Zip Installation)

Summary

The JBoss EAP 6 Zip file is available from https://access.redhat.com. The Zip file installation is platform-independent and is the preferred way to install JBoss EAP 6 on all supported platforms. This topic covers the steps to download the archive.

Procedure 4.1. Download the Zip file

  1. Select DownloadsJBoss Enterprise MiddlewareDownloads menu item.
  2. Select Application Platform from the Product drop-down menu.
  3. Select the correct JBoss EAP version from the Version drop-down menu.
  4. Click Download next to the Application Platform 6.1.0 option.
Result

JBoss EAP 6 has been downloaded successfully to the target machine, and is ready for installation.

4.2.2. Install JBoss EAP 6 (Zip Installation)

Summary

This topic covers the steps to install JBoss EAP 6 using the downloaded Zip file.

Procedure 4.2. Zip File Installation

  1. Move the Zip archive to the desired location.

    Move the Zip file to the server and directory where you will install JBoss EAP 6. The user who will start and stop the server must have read and write access to this directory.
  2. Use an appropriate application to extract the Zip archive to the desired location.

    In a Red Hat Enterprise Linux environment, use the unzip utility to extract the contents of the Zip archive.
    In a Microsoft Windows environment, right-click the file and select Extract All.
    In a Hewlett-Packard HP-UX environment, use the unzip utility to extract the contents of the Zip archive.
Result

JBoss EAP 6 has been installed successfully. The directory created by extracting the Zip archive is the top-level directory for the server. This is referred to as EAP_HOME.

4.2.3. Uninstall JBoss EAP 6 (Zip Installation)

Prerequisites

Backup any modified configuration files and deployments that may be reused in a later instance.

Summary

This section covers the steps required to uninstall a Zip installation of JBoss EAP 6.

Procedure 4.3. Uninstall JBoss EAP 6 (Zip installation)

  1. Go to the directory where you had extracted the JBoss EAP 6 folder from the Zip file.
  2. Delete the installation directory.

    JBoss EAP 6 installs in a single directory when you use the Zip installation method. Delete the installation directory to uninstall JBoss EAP 6.
  3. Optional: Delete any initialization scripts you created.

    If you created initialization scripts or other scripts which depended upon JBoss EAP 6 being installed on your computer, delete them.
Result

JBoss EAP 6 is uninstalled from the server.

4.3. Installer

4.3.1. Download JBoss EAP 6 (Installer)

Summary

The JBoss EAP 6 installer archive is available from https://access.redhat.com. The .jar archive can be used to run either the Graphical or Text-based installers. This topic covers the steps to download the archive.

Procedure 4.4. Download the Installer

  1. Select DownloadsJBoss Enterprise MiddlewareDownloads menu item.
    JBoss EAP 6 Download

    Figure 4.1. 

  2. Select Application Platform from the Product drop-down menu that appears on the next screen.
  3. Select the Application Platform 6.1.0 Installer.
  4. Click Download.
Result

JBoss EAP 6 is now downloaded to your target machine. It is ready for installation.

4.3.2. Run the JBoss Enterprise Application Platform Installer

The JBoss EAP installer can be run in either graphical or text mode. This topic covers the command to run the installer in each mode, as well as detailing the individual screens/setup options that form the installation process.

Procedure 4.5. Start the Installer

  1. Run one of the following commands to start the installation process:
    • Graphical Mode

      java -jar jboss-eap-6.1.1.ER4-installer.jar
    • Text Mode

      java -jar jboss-eap-6.1.1.ER4-installer.jar -console
  2. Follow the steps etc.

Table 4.2. JBoss EAP Installer Screens

Name
Appears
Description
Reference Material
Always
Select the language required for the installer and click next.
N/A
Always
The EULA for JBoss Enterprise Middleware. Select "I accept the terms of this license agreement", and click next.
N/A
Always
Set the installation path for JBoss EAP 7 and click Next.
N/A
Always
Create an admin user, and assign a password. The password must be at least eight characters long, with one digit and one non-alphanumeric character. Then click next.
N/A
Always
Install the quickstart examples. If you do not wish to install them, click Next. If you do, click Yes, configure the installation location, and then click next.
N/A
If you choose to install the quickstart examples
Select the filepath of the JDK, then click next.
N/A
If you choose to install the quickstart examples
If you want to skip setting up the maven-repository, select next. To set up the maven-repository, select "Specify the path (or URL) to an existing maven repository", set the location of the maven repo and the maven settings.xml file, and click next.
N/A
Always
Select the packs to install. Expand the JBoss Core pack, and deselect the AppClient/Docs packs if you feel they are unnecessary. Then click next.
N/A
Always
Determine whether the installation will use the default port bindings, or custom bindings. If you select custom bindings, select whether to configure the ports for standalone mode, domain mode, or both. Then click next.
N/A
If you select to configure the default port bindings for standalone mode
Configure the ports and system properties as required, then click next.
N/A
If you select to configure the default port bindings for domain mode
Configure the ports and system properties as required, then click next.
N/A
If you select to configure the default port bindings for domain mode
Configure the ports and system properties as required, then click next.
N/A
If you select to configure the default port bindings for domain mode
Configure the ports and system properties as required, then click next.
N/A
If you select to configure the default port bindings for domain mode
Configure the ports and system properties as required, then click next.
N/A
Server Launch
Always
Select the startup option required. If you wish to launch the server immediately, you can select whether to launch a browser once the installer is complete. Then click next.
N/A
Result

The installation is complete and JBoss EAP 6 is installed on your target machine.

4.3.3. Uninstall JBoss EAP 6 (Installer)

Summary

This section details the steps required to uninstall an instance of JBoss EAP 6 that was installed using either the graphical or text-based installer.

Procedure 4.6. Uninstall JBoss EAP 6 (Graphical Installation)

  1. During the installation of JBoss EAP 6 on the target machine, a directory called Uninstaller was created in the directory where you had installed JBoss EAP 6. This directory contains a file called uninstaller.jar. Navigate to this directory in a terminal window.
  2. Launch the GUI uninstaller by executing the following command:
    java -jar uninstaller.jar
  3. The execution of the command will launch the graphical uninstaller as shown in the following figure. Select the check box if you want to delete the JBoss EAP 6 installation directory.
    Uninstall JBoss EAP 6 using the graphical installer

    Figure 4.2. Uninstall JBoss EAP 6 using the graphical installer

  4. Press the Uninstall button to start the uninstall process.
  5. When the uninstall process is finished, press the Quit button to exit the uninstaller.
  6. After a successful uninstall, you may want to manually remove the Uninstaller directory from where you launched the uninstaller.

Procedure 4.7. Text-based Uninstall Process

  1. In a console, navigate to the Uninstaller directory created during the installation process. This can be found one level above EAP_HOME.
  2. Launch the Text-based uninstaller by executing the following command:
    java -jar uninstaller.jar -console
  3. Follow the steps to uninstall JBoss EAP 6.
Result:

JBoss EAP 6 is uninstalled from your server.

4.4. Graphical RPM Installation

4.4.1. Install JBoss EAP 6 (Graphical RPM Installation)

Summary

The Graphical RPM package method of installing JBoss EAP 6 is available for Red Hat Enterprise Linux 5 and Red Hat Enterprise Linux 6. This topic covers the steps required to complete the installation.

Procedure 4.8. Install JBoss EAP 6 (Graphical RPM Installation)

Use PackageKit to graphically install JBoss EAP 6 on your target machine.
  1. Launch PackageKit

    PackageKit is an open source package management software installed as part of Red Hat Enterprise Linux. On the target machine launch PackageKit by selecting SystemAdministrationAdd/Remove Software.
  2. Type
    jboss-eap6
    in the search box and then press the Find button. You will be presented with the JBoss EAP 6 package in the result box.
  3. Select the JBoss EAP 6 package and press the Apply button. See figure below.
    JBoss EAP 6 PackageKit Install

    Figure 4.3. JBoss EAP 6 PackageKit Install

  4. Follow the rest of the steps to install JBoss EAP 6 on your target machine.
Result

The installation is complete and JBoss EAP 6 is installed in your target machine.

4.5. Text-based RPM Installation

4.5.1. Install JBoss EAP 6 (Text-based RPM Installation)

Summary

The RPM package method of installing JBoss EAP 6 is appropriate for Red Hat Enterprise Linux 5 and Red Hat Enterprise Linux 6. This topic covers the steps required to install an instance using the command line.

Procedure 4.9. Text-based Installation Steps

Access and install the RPM package by using the YUM install via the Red Hat Network.
  1. Install the RPM package by using YUM and the Red Hat Network

    Use YUM to install the default JBoss EAP 6 group package by using the groupinstall command.
    [user@host ~]$ yum groupinstall jboss-eap6
  2. Configure init options.

    The RPM install contains init scripts for launching the server. The configuration for the init scripts are contained in several additional files. Refer to Section A.4, “RPM Installation Configuration Files for JBoss EAP 6” for details about these files and the options contained within.
Result

The installation is complete. The default EAP_HOME path for the RPM installation is /usr/share/jbossas. Refer to Section A.3, “RPM Package List for JBoss EAP 6” for a complete list of all the packages installed.

4.6. Automated Installation

4.6.1. Install Multiple Instances of JBoss EAP 6 (Installer)

Prerequisites

Summary

Multiple identical instances of JBoss EAP 6 can be installed using an automated script, generated during the installation process, using either the Graphical or Text-based installer. This topic covers the steps required to install JBoss EAP 6 using a generated script.

Procedure 4.10. Automated Installation

  • In a terminal, run the following command to install JBoss EAP 6 using the automated script:
    java -jar jboss-eap-6.1.0-installer.jar SCRIPT_NAME.xml
Result

An identical instance of JBoss EAP 6 has been installed, based on the automatically generated script.

4.7. Service Configuration

4.7.1. Configure JBoss EAP 6 as a Service in Red Hat Enterprise Linux (RPM Method)

Prerequisites

Summary

Use the following procedure to install JBoss EAP 6 as a service on Red Hat Enterprise Linux when the installation has been done using the RHN (RPM) method.

Procedure 4.11. Configure JBoss EAP 6 as a Service using the RPM Method in Red Hat Enterprise Linux

  1. Install JBoss EAP 6

    Install JBoss EAP 6 via the RPM method using one of the steps listed in the prerequisite sections listed above.
  2. Enable the service

    The RPM install method for JBoss EAP 6 installs the requisite service files in their correct locations. All you need to do to set it up as service is issue the following command:
    chkconfig jbossas on
Result

JBoss EAP 6 starts automatically when the Red Hat Enterprise Linux reaches its default run-level, and stops automatically when the operating system goes through its shutdown routine.

4.7.2. Configure JBoss EAP 6 as a Service in Red Hat Enterprise Linux (Zip, Installer)

Prerequisites

Summary

Use the following procedure to install JBoss EAP 6 as a service on Red Hat Enterprise Linux when the installation has been done with either the zip, text, or graphical methods. This process does not apply when the installation has been done using the RHN (RPM) method.

Procedure 4.12. Setup the Service

Note

The steps below describe running JBoss EAP 6 as a service in standalone mode. In order to run JBoss EAP 6 as a service in domain mode, use the same steps but replace jboss-as-standalone.sh with jboss-as-domain.sh.
  1. Locate the start-up script and configuration file

    The start-up script and an associated configuration file are located in the EAP_HOME/bin/init.d/ directory. Open the configuration file jboss-as.conf to edit it.
  2. Customize the start-up options in the jboss-as.conf file

    There are several options within the jboss-as.conf file. At the minimum, specify the correct values for JBOSS_HOME and the JBOSS_USER variables. If these variables are absent, add them.
  3. Copy files into system directories

    1. Copy the modified configuration file to the /etc/jboss-as directory.
      [user@host init.d]$ sudo mkdir /etc/jboss-as
      [user@host init.d]$ sudo cp jboss-as.conf /etc/jboss-as/
    2. Copy the start-up script to the /etc/init.d directory.
      [user@host init.d]$ sudo cp jboss-as-standalone.sh /etc/init.d
  4. Add the start-up script as a service.

    Add the new jboss-as-standalone.sh service to list of automatically started services, using the chkconfig service management command.
    [user@host init.d]$ sudo chkconfig --add jboss-as-standalone.sh
  5. Start the service.

    Test that the service has been installed correctly by using the standard syntax for starting Red Hat Enterprise Linux services.
    [user@host bin]$ sudo service jboss-as-standalone.sh start
    If everything has gone correctly, you should get a green [OK]. If you get an error, check the error logs and make sure your paths are correct in the configuration file.
  6. Make the service start automatically when you restart your server.

    To add the service to the list of services which start automatically when your server restarts, issue the following command.
    [user@host init.d]$ sudo chkconfig jboss-as-standalone.sh on
Result

JBoss EAP 6 starts automatically when the Red Hat Enterprise Linux reaches its default run-level, and stops automatically when the operating system goes through its shutdown routine.

4.7.3. Configure JBoss EAP 6 as a Service in Microsoft Windows Server (Zip, Installer)

Prerequisites

Summary

Use the following procedures to configure JBoss EAP 6 as a service on Microsoft Windows Server.

Procedure 4.13. Configure a Service for JBoss EAP 6 in Microsoft Windows Server

  1. Create system environment variables

    Create two system environment variables:
    • JBOSS_HOME pointing to the JBoss EAP 6 installation directory.
    • NOPAUSE=1
  2. If not already configured, download and extract the Native Utilities package for your architecture

    If the Native Utilities for Windows Server package has not been installed as part of the JBoss EAP 6 installation, download the relevant 32-bit or 64-bit package from the Red Hat Customer Portal at https://access.redhat.com. Extract the Native Utilities zip archive over the JBoss EAP 6 installation.
    This will result in a native directory in the following location in the JBoss EAP 6 installation: EAP_HOME\modules\system\layers\base\
  3. Install the service

    Open a terminal, and change directories to EAP_HOME\modules\system\layers\base\native\sbin
    A new service can be created with the service install command, with the available options shown in the following table.

    Table 4.3. service install options

    Argument or Switch Description
    /controller HOST:PORT
    The host and port of the management interface. If omitted, the default is localhost:9999.
    /host [DOMAIN_HOST]
    Indicates that domain mode is to be used, optionally specifying the name of the domain controller. If the domain controller name is omitted, the default name is master.
    /loglevel LEVEL
    The log level for the service, either: ERROR, INFO, WARN or DEBUG. If omitted, the default is INFO
    /name SERVICE_NAME
    The name of the service to be created, must not contain spaces. If omitted, the default is JBossEAP6
    /desc "DESCRIPTION"
    The description of the service. If omitted, the default is "JBoss Enterprise Application Platform 6"
    /serviceuser DOMAIN\USERNAME
    Specifies the name of the account under which the service will run. Use an account name in the format of DOMAIN\USERNAME. If omitted, the service runs as the Local System account.
    /servicepass PASSWORD
    Password for /serviceuser account.
    /jbossuser USERNAME
    Optional, the JBoss EAP 6 username to use for the shutdown command.
    /jbosspass PASSWORD
    Password for /jbossuser account, required if /jbossuser is specified.
    Below are basic examples of an install command to create a new service in either standalone or domain mode. Execute the following command, adjusting the log level for the service as required:
    • Standalone mode:
      service.bat install /loglevel INFO
    • Domain mode:
      If you are not using the default master for your JBoss EAP 6 domain controller, replace master with the correct host name or alias of the JBoss EAP 6 domain controller.
      service.bat install /host master /loglevel INFO
    A new Windows service will be created with name JBossEAP6.
  4. Verify the new service in the Services console

    Execute the following command in a terminal to open the Windows Services console:
    services.msc
    If the default service name was used, in the list of Windows services, the new service will have the display name: JBoss Enterprise Application Platform 6. From the Services console you can start and stop the service, as well change its settings on how and when it starts.
  5. Starting and stopping the JBoss EAP 6 service from a terminal

    To start the service from a terminal, use the following command, changing the service name if necessary:
    net start JBossEAP6
    To stop the service from a terminal, use the following command, changing the service name if necessary:
    net stop JBossEAP6
Result

A JBoss EAP 6 service is configured in Microsoft Windows Server.

Procedure 4.14. Uninstall the JBoss EAP 6 service from Microsoft Windows Server

  • If the service is running, first open a terminal and stop the service by executing the net stop command with the name of the service:
    net stop JBossEAP6
    In a terminal, change directories to EAP_HOME\modules\system\layers\base\native\sbin and execute the following command:
    service uninstall
Result

The JBoss EAP 6 service has been removed from Microsoft Windows Server.

Chapter 5. Patching and Upgrading JBoss EAP 6

5.1. About Patches and Upgrades

The patching mechanism in JBoss EAP 6 applies updates which are made available to a specific 'minor' version of JBoss EAP 6, for example JBoss EAP 6.2. Patches can contain one-off, security, or cumulative updates.
Upgrading between major and minor releases of JBoss EAP (for example, from 6.1 to 6.2) requires a different process.

5.2. Patch Installation

5.2.1. About Patching Mechanisms

JBoss patches are released in two forms.
  • Asynchronous updates: one-off patches which are released outside the normal update cycle of the existing product. These may include security patches, as well as other one-off patches provided by Red Hat Global Support Services (GSS) to fix specific issues.
  • Planned updates: These include cumulative patches, as well as micro, minor or major upgrades of an existing product. Cumulative patches include all previously developed asynchronous updates for that version of the product.
Deciding whether a patch is released as part of a planned update or an asynchronous update depends on the severity of the issue being fixed. An issue of low impact is typically deferred, and is resolved in the next cumulative patch or minor release of the affected product. Issues of moderate or higher impact are typically addressed in order of importance as an asynchronous update to the affected product, and contain a fix for only a specific issue.
Cumulative and security patches for JBoss products are distributed in two forms: zip (for all products) and RPM (for a subset of products).

Important

A JBoss product installation must always only be updated using one patch method: either zip or RPM patches.
Security updates for JBoss products are provided by an erratum (for both zip and RPM methods). The erratum encapsulates a list of the resolved flaws, their severity ratings, the affected products, textual description of the flaws, and a reference to the patches. Bug fix updates are not announced via an erratum.
For more information on how Red Hat rates JBoss security flaws, refer to: Section 5.2.5, “Severity and Impact Rating of JBoss Security Patches”
Red Hat maintains a mailing list for notifying subscribers about security related flaws. See Section 5.2.2, “Subscribe to Patch Mailing Lists”

5.2.2. Subscribe to Patch Mailing Lists

Summary

The JBoss team at Red Hat maintains a mailing list for security announcements for Red Hat JBoss Enterprise Middleware products. This topic covers what you need to do to subscribe to this list.

Prerequisites

  • None

Procedure 5.1. Subscribe to the JBoss Watch List

  1. Click the following link to go to the JBoss Watch mailing list page: JBoss Watch Mailing List.
  2. Enter your email address in the Subscribing to Jboss-watch-list section.
  3. [You may also wish to enter your name and select a password. Doing so is optional but recommended.]
  4. Press the Subscribe button to start the subscription process.
  5. You can browse the archives of the mailing list by going to: JBoss Watch Mailing List Archives.
Result

After confirmation of your email address, you will be subscribed to receive security related announcements from the JBoss patch mailing list.

5.2.3. Install Patches in Zip Form

5.2.3.1. The patch Command

The patch command is used to apply downloaded zip patches to a single JBoss EAP 6 server instance. It cannot be used to automatically patch JBoss EAP 6 server instances across a managed domain, but individual server instances in a managed domain can be patched independently.

Important

JBoss EAP 6 server instances which have been installed using the RPM method cannot be updated using the patch command. Refer to Section 5.2.4, “Install Patches in RPM form” to update RPM-installed JBoss EAP 6 servers.

Note

The patch command can only be used with patches produced for versions of JBoss EAP 6.2 and later. For patches for versions of JBoss EAP prior to 6.2, you should instead refer to the relevant version's documentation available at https://access.redhat.com/site/documentation/.
In addition to applying patches, the patch command can give basic information on the state of installed patches, and also provides a way to immediately rollback the application of a patch.
Before starting a patch application or rollback operation, the patch tool will check the modules and other miscellaneous files that it is changing for any user modifications. If a user modification is detected, and a conflict-handling switch has not been specified, the patch tool will abort the operation and warn that there is a conflict. The warning will include a list of the modules and other files that are in conflict. To complete the operation, the patch command must be re-run with a switch specifying how to resolve the conflict: either to preserve the user modifications, or to override them.

Table 5.1. patch Command Arguments and Switches

Argument or Switch Description
apply Applies a patch.
--override-all If there is a conflict, the patch operation overrides any user modifications.
--override-modules If there is a conflict as a result of any modified modules, this switch overrides those modifications with the contents of the patch operation.
--override=path(,path) For specified miscellaneous files only, this will override the conflicting modified files with the files in the patch operation.
--preserve=path(,path) For specified miscellaneous files only, this will preserve the conflicting modified files.
info Returns information on currently installed patches.
rollback Rollsback the application of a patch.
--reset-configuration=TRUE|FALSE Required for rollback, this specifies whether to restore the server configuration files as part of the rollback operation.

5.2.3.2. Installing Patches in Zip Form Using the patch Command

Summary

This task describes how to use the patch command to install patches for JBoss EAP 6 that are in the zip format.

Important

The patch command is a feature that was added in JBoss EAP 6.2. For versions of JBoss EAP prior to 6.2, the process to install patches in zip form is different, and you should instead refer to the relevant version's documentation available at https://access.redhat.com/site/documentation/.

Prerequisites

  • Valid access and subscription to the Red Hat Customer Portal.
  • A current subscription to a JBoss product installed in zip format.
  • Access to the Management CLI for the server instance to be updated. Refer to Launch the Management CLI in the Administration and Configuration Guide.

Procedure 5.2. Apply a zip patch to a JBoss EAP 6 server instance using the patch command

Warning

Before installing a patch, you should backup your JBoss product along with all customized configuration files.
  1. Download the patch zip file from the Customer Portal at https://access.redhat.com/downloads/
  2. From the Management CLI, apply the patch with the following command with the appropriate path to the patch file:
    [standalone@localhost:9999 /] patch apply /path/to/downloaded-patch.zip
    The patch tool will warn if there are any conflicts in attempting the apply the patch. Refer to Section 5.2.3.1, “The patch Command” for available switches to re-run the command to resolve any conflicts.
  3. Restart the JBoss EAP 6 server instance for the patch to take effect:
    [standalone@localhost:9999 /] shutdown --restart=true
Result

The JBoss EAP 6 server instance is patched with the latest update.

5.2.3.3. Rollback the Application of a Patch in Zip Form Using the patch Command

Summary

This task describes how to use the patch command to rollback the application of a previously applied zip patch in JBoss EAP 6.

Warning

Rolling back the application of a patch using the patch command is not intended as a general uninstall functionality. It is only intended to be used immediately after the application of a patch which had undesirable consequences.

Important

The patch command is a feature that was added in JBoss EAP 6.2. For versions of JBoss EAP prior to 6.2, the process to rollback patches in zip form is different, and you should instead refer to the relevant version's documentation available at https://access.redhat.com/site/documentation/.

Prerequisites

  • A patch that was previously applied using the patch command.
  • Access to the Management CLI for the server instance. Refer to Launch the Management CLI in the Administration and Configuration Guide.

Procedure 5.3. Rollback a patch from a JBoss EAP 6 server instance using the patch command

  1. From the Management CLI, use the patch info command to find the ID of the patch that is to be rolled back.
    • For cumulative patches, the patch ID is the value of the first cumulative-patch-id shown in the patch info output.
    • One-off security or bug fix patch IDs are listed as the value of the first patches shown in the patch info output, with the most recently applied one-off patch listed first.
  2. From the Management CLI, rollback the patch with the appropriate patch ID from the previous step.

    Warning

    Use caution when specifying the value of the --reset-configuration switch.
    If set to TRUE, the patch rollback process will also rollback the JBoss EAP 6 server configuration files to their pre-patch state. Any changes that were made to the JBoss EAP 6 server configuration files after the patch was applied will be lost.
    If set to FALSE, the server configuration files will not be rolled back. In this situation, it is possible that the server will not start after the rollback, as the patch may have altered configurations, such as namespaces, which may no longer be valid and have to be fixed manually.
    [standalone@localhost:9999 /] patch rollback PATCH_ID --reset-configuration=TRUE
    The patch tool will warn if there are any conflicts in attempting the rollback the patch. Refer to Section 5.2.3.1, “The patch Command” for available switches to re-run the command to resolve any conflicts.
  3. Restart the JBoss EAP 6 server instance for the patch rollback to take effect:
    [standalone@localhost:9999 /] shutdown --restart=true
Result

The patch, and optionally also the server configuration files, are rolled back on the JBoss EAP 6 server instance.

5.2.4. Install Patches in RPM form

Summary

JBoss patches are distributed in two forms: ZIP (for all products) and RPM (for a subset of products). This task describes the steps you need to take to install the patches via the RPM format.

Prerequisites

  • A valid subscription to the Red Hat Network.
  • A current subscription to a JBoss product installed via an RPM package.

Procedure 5.4. Apply a patch to a JBoss product via the RPM method

Security updates for JBoss products are provided by errata (for both zip and RPM methods). The errata encapsulates a list of the resolved flaws, their severity ratings, the affected products, textual description of the flaws, and a reference to the patches.
For RPM distributions of JBoss products, the errata include references to the updated RPM packages. The patch can be installed by using yum.

Warning

Before installing a patch, you must backup your JBoss product along with all customized configuration files.
  1. Get notified about the security patch either via being a subscriber to the JBoss watch mailing list or by browsing the JBoss watch mailing list archives.
  2. Read the errata for the security patch and confirm that it applies to a JBoss product in your environment.
  3. If the security patch applies to a JBoss product in your environment, then follow the link to download the updated RPM package which is included in the errata.
  4. Use
    yum update
    to install the patch.

    Important

    When updating an RPM installation, your JBoss product is updated cumulatively with all RPM-released fixes.
Result

The JBoss product is patched with the latest update using the RPM format.

5.2.5. Severity and Impact Rating of JBoss Security Patches

To communicate the risk of each JBoss security flaw, Red Hat uses a four-point severity scale of low, moderate, important and critical, in addition to Common Vulnerability Scoring System (CVSS) version 2 base scores which can be used to identify the impact of the flaw.

Table 5.2. Severity Ratings of JBoss Security Patches

Severity Description
Critical
This rating is given to flaws that could be easily exploited by a remote unauthenticated attacker and lead to system compromise (arbitrary code execution) without requiring user interaction. These are the types of vulnerabilities that can be exploited by worms. Flaws that require an authenticated remote user, a local user, or an unlikely configuration are not classed as critical impact.
Important
This rating is given to flaws that can easily compromise the confidentiality, integrity, or availability of resources. These are the types of vulnerabilities that allow local users to gain privileges, allow unauthenticated remote users to view resources that should otherwise be protected by authentication, allow authenticated remote users to execute arbitrary code, or allow local or remote users to cause a denial of service.
Moderate
This rating is given to flaws that may be more difficult to exploit but could still lead to some compromise of the confidentiality, integrity, or availability of resources, under certain circumstances. These are the types of vulnerabilities that could have had a critical impact or important impact but are less easily exploited based on a technical evaluation of the flaw, or affect unlikely configurations.
Low
This rating is given to all other issues that have a security impact. These are the types of vulnerabilities that are believed to require unlikely circumstances to be able to be exploited, or where a successful exploit would give minimal consequences.
The impact component of a CVSS v2 score is based on a combined assessment of three potential impacts: Confidentiality (C), Integrity (I) and Availability (A). Each of these can be rated as None (N), Partial (P) or Complete (C).
Because the JBoss server process runs as an unprivileged user and is isolated from the host operating system, JBoss security flaws are only rated as having impacts of either None (N) or Partial (P).

Example 5.1. CVSS v2 Impact Score

The example below shows a CVSS v2 impact score, where exploiting the flaw would have no impact on system confidentiality, partial impact on system integrity and complete impact on system availability (that is, the system would become completely unavailable for any use, for example, via a kernel crash).
C:N/I:P/A:C
Combined with the severity rating and the CVSS score, organizations can make informed decisions on the risk each issue places on their unique environment and schedule upgrades accordingly.
For more information about CVSS2, please see: CVSS2 Guide.

5.3. Upgrade Instructions

5.3.1. Upgrade the JBoss EAP 6 ZIP Installation

Prerequisites

Summary

This procedure covers upgrading a JBoss EAP 6 ZIP installation between minor versions (for example, from JBoss EAP 6.1 to 6.2). For installing patches for a specific minor version, refer to the Patch Installation section. Upgrading to the latest release of JBoss EAP 6 requires some initial work to back up the existing installation.

Warning

For managed domains, the master Host Controller (or Domain Controller) instance should be upgraded first, before each Host Controller is upgraded.

Procedure 5.5. Upgrade to the latest JBoss EAP 6 version

  1. Move the downloaded ZIP archive to the desired location. It is recommended that this is a different location to the existing JBoss EAP 6 installation.

    Important

    If you wish to install the latest version of JBoss EAP 6 to the same directory location as the existing installation, you will need to move the existing installation to a different location before proceeding. This is to prevent modified configuration files, deployments, and upgrades from being lost.
  2. Unzip the archive. This step installs a clean instance of the latest JBoss EAP 6 release.
  3. Copy the EAP_HOME/domain/ and EAP_HOME/standalone/ directories from the previous installation over the new installation directories.

    Note

    New features in the new release, such as new subsystems, may not be activated if configuration files are copied from an older JBoss EAP 6 installation. To use these new features, it is necessary to compare and update the old configuration files with the ones from the new version.
  4. Review the changes made to the bin directory of the previous installation, and make the equivalent modifications to the new directory.

    Warning

    Files in the bin directory should not be overwritten by the files from previous versions. Changes should be made manually.
  5. Review the remaining modified files from the previous installation, and move these changes into the new installation. These files may include:
    • The welcome-content directory.
    • Custom modules in the modules directory.
    • Custom bundles in the bundles directory.
Result

The JBoss EAP 6 ZIP installation has been successfully upgraded to the latest release.

5.3.2. Upgrade the JBoss EAP 6 RPM Installation

Prerequisites

  • Ensure that the base operating system is up to date and that the system is subscribed and enabled to get updates for the Base OS channel.
  • Ensure that the correct JBoss EAP 6 RHN channel is enabled. For example, on a x86, 64 bit architecture, this will be the JBoss Application Platform (v 6) for 6Server x86_64 channel (jbappplatform-6-x86_64-server-6-rpm).
  • Back up any modified configuration files, deployments, and all user data.
Summary

Upgrading to the latest release of JBoss EAP 6 requires some initial work to back up the existing installation. This topic covers upgrading the RPM installation via the Red Hat Network (RHN).

Warning

For managed domains, the master Host Controller (or Domain Controller) instance should be upgraded first, before each Host Controller is upgraded.

Procedure 5.6. Upgrade to the latest JBoss EAP 6 release

  1. Run the following command in a terminal to upgrade the installation:
    [user@host] yum update
  2. Manually merge each created *.rpmnew file that contains changes into the production configuration files.
Result

JBoss EAP 6 has been successfully upgraded.

5.3.3. Upgrade JBoss EAP Cluster from 6.0 to 6.1

Prerequisites

  • None
Summary

JBoss EAP 6.1 does not support the creation of clusters where the different nodes are made up of different versions of JBoss EAP servers. Thus, a mixed cluster based on different versions is not supported and all nodes within a cluster must be the same version - 6.1.

Warning

The upgrade process for migrating traffic from a 6.0 cluster to a 6.1 cluster is therefore based on transferring all traffic to the 6.1 cluster and then shutting down the servers or nodes in the 6.0 cluster.

Procedure 5.7. Setup a JBoss EAP Cluster in 6.1

  1. Refer to the HTTP Clustering and Load Balancing chapter of the JBoss EAP 6.1 Administration and Configuration Guide for instructions on how to setup a JBoss EAP cluster in 6.1.
  2. Migrate all traffic to this new cluster using the steps outlined in the Migrate Traffic between Clusters chapter of the JBoss EAP 6.1 Administration and Configuration Guide
Result

Your JBoss EAP 6.0 cluster has been migrated to a cluster based on JBoss EAP 6.1.

Appendix A. Reference Material

A.1. Available Downloads for JBoss EAP 6

JBoss EAP 6 includes a number of different installation types and optional components, which are available for download on the Red Hat Customer Portal at https://access.redhat.com/. The following table explains the different options. Some components are only appropriate for certain operating systems or architectures, and thus are only available for those specific variations.

Table A.1. Available Downloads

Name Description Operating Systems
Apache HTTP Server
A standalone Apache HTTP server instance for each supported operating system and architecture. This HTTP server has been tested and verified to work with JBoss EAP 6.
Red Hat Enterprise Linux 5, Red Hat Enterprise Linux 6, Microsoft Windows Server 2008, Solaris 10 and 11
Native Components
Components which have been compiled to be optimized for a specific platform. For instance, DLLs are provided for Microsoft Windows Server environments. In some cases, the native components may provide performance improvements.
Red Hat Enterprise Linux 5, Red Hat Enterprise Linux 6, Microsoft Windows Server 2008, Solaris 10 and 11, Hewlett-Packard HP-UX
Native Utilities
Utilities specific to each supported operating system and architecture, such as scripts and utilities for installing JBoss EAP 6 as a service in your operating system and generating SSL encryption keys and certificates.
Red Hat Enterprise Linux 5, Red Hat Enterprise Linux 6, Microsoft Windows Server 2008, Solaris 10 and 11, Hewlett-Packard HP-UX
Webserver Connector Natives
Pre-compiled modules for Apache, Microsoft, and Oracle iPlanet web servers, for HTTP load balancing and high-availability capabilities. These binaries are extensively tested and known to work well with JBoss EAP 6.
Red Hat Enterprise Linux 5, Red Hat Enterprise Linux 6, Microsoft Windows Server 2008, Solaris 10 and 11, Hewlett-Packard HP-UX
Javadocs
Documentation for all public APIs exposed by JBoss EAP 6. You can install these into your local HTTP server or IDE, or can view them on your local machine.
Platform-independent
Installer
Java installer for JBoss EAP 6. Includes steps to install the Quickstarts and Maven Repository.
Platform-independent
Maven Repository
A Maven repository which you can download and make available in your local development environment, and which contains artifacts common to applications built upon JBoss EAP 6. The Maven repository is also available through the JBoss EAP 6 Installer.
Platform-independent
Quickstarts
Example applications to help you get started developing Java EE 6 applications with APIs supplied with JBoss EAP 6. The Quickstarts are also available through the JBoss EAP 6 Installer.
Platform-independent
Source Code
The Java source code for JBoss EAP 6, provided so that you can recompile it in your own environment or audit it yourself.
Platform-independent
Application Platform
The Zip installation package, which can be installed and run on every supported platform. This is the most common way to install JBoss EAP 6.
Platform-independent

Important

The RPM installation method's downloads are not available on the Customer Portal, but via the Red Hat Network (RHN).

A.2. Directory Structure of JBoss EAP 6

Summary

JBoss EAP 6 includes a simplified directory structure, compared to previous versions. This topic contains a listing of the directories, and a description of what each directory contains.

It also includes directory structures of the standalone/ and domain/ folders.

Table A.2. Top-level directories and files

Name Purpose
appclient/ Contains configuration details for the application client container.
bin/ Contains start-up scripts for JBoss EAP 6 on Red Hat Enterprise Linux and Microsoft Windows.
bundles/ Contains OSGi bundles which pertain to JBoss EAP 6 internal functionality.
docs/ License files, schemas, and examples.
domain/ Configuration files, deployment content, and writable areas used when JBoss EAP 6 runs as a managed domain.
modules/ Modules which are dynamically loaded by JBoss EAP 6 when services request them.
standalone/ Configuration files, deployment content, and writable areas used when JBoss EAP 6 runs as a standalone server.
welcome-content/ Contains content used by the Welcome web application which is available on port 8080 of a default installation.
jboss-modules.jar
The bootstrapping mechanism which loads modules.

Table A.3. Directories within the domain/ directory

Name Purpose
configuration/ Configuration files for the managed domain. These files are modified by the Management Console and Management CLI, and are not meant to be edited directly.
data/ Information about deployed services. Services are deployed using the Management Console and Management CLI, rather than by a deployment scanner. Therefore, do not place files in this directory manually.
log/ Contains the run-time log files for the host and process controllers which run on the local instance.
servers/ Contains the equivalent data/, log/, and tmp/ directories for each server instance in a domain, which contain similar data to the same directories within the top-level domain/ directory.
tmp/ Contains temporary data such as files pertaining to the shared-key mechanism used by the Management CLI to authenticate local users to the managed domain.

Table A.4. Directories within the standalone/ directory

Name Purpose
configuration/ Configuration files for the standalone server. These files are modified by the Management Console and Management CLI, and are not meant to be edited directly.
deployments/ Information about deployed services. The standalone server does include a deployment scanner, so you can place archives in this directory to be deployed. However, the recommended approach is to manage deployments using the Management Console or Management CLI.
lib/ External libraries which pertain to a standalone server mode. Empty by default.
tmp/ Contains temporary data such as files pertaining to the shared-key mechanism used by the Management CLI to authenticate local users to the server.

A.3. RPM Package List for JBoss EAP 6

Summary

JBoss EAP 6 is installed on Red Hat Enterprise Linux 6 using the YUM package group JBoss EAP 6. That group is made up of the following packages.

Table A.5. Package List

Package Description
jbossas-appclient JEE Application Client Container
jbossas-bundles OSGi bundles
jbossas-core Core components. This is required for all configurations.
jbossas-domain Domain configuration
jbossas-hornetq-native Container for the JBoss AS HornetQ files
jbossas-jbossweb-native JBoss Enterprise Web Platform
jbossas-modules-eap JBoss EAP modules
jbossas-product-eap Product configuration components. This customizes product execution.
jbossas-standalone Standalone configuration
jbossas-welcome-content-eap Welcome content used in startup messages and console pages

Important

The jbossas-hornetq-native package is included for high availability in JBoss EAP 6 but it is not activated by default.

A.4. RPM Installation Configuration Files for JBoss EAP 6

Summary

The RPM installation of JBoss EAP 6 includes three additional configuration files to the ZIP installation. These files are used by the service init script to specify the application server's launch environment. One of these files applies to all JBoss EAP 6 instances, while the other two provide overrides for standalone and domain mode servers.

Table A.6. Additional RPM Configuration Files

File Description
/etc/jbossas/jbossas.conf This file is read first and applies to all JBoss EAP 6 instances.
/etc/sysconfig/jbossas Settings specific to standalone servers. Values specified here will override those in jbossas.conf when running as a standalone server.
/etc/sysconfig/jbossas-domain Settings specific to domain-mode servers. Values specified here will override those in jbossas.conf when running as a domain-mode server.
The following table shows a list of available configuration properties along with their default values.

Table A.7. RPM Installation Configuration Properties

Property Description
JBOSS_USER
The system user account that the JBoss EAP 6 runs as. This user also has ownership of the files.
Default value: jboss
JBOSS_GROUP
The system user group that the JBoss EAP 6 files belong to.
Default value: jboss
JBOSS_STARTUP_WAIT
The number of seconds that the init script will wait until confirming that the server has launched successfully after receiving a start or restart command.
Default value: 60
JBOSS_SHUTDOWN_WAIT
The number of seconds that the init script will wait for the server to shutdown before continuing when it receives a stop or restart command.
Default value: 20
JBOSS_CONSOLE_LOG
The file that the CONSOLE log handler will be redirected to.
Default value: /var/log/jbossas/$JBOSSCONF/console.log
JAVA_HOME
The directory where your Java Runtime Environment is installed.
Default value: /usr/lib/jvm/jre
JBOSS_HOME
The directory where the application server files are installed.
Default value: /usr/share/jbossas
JAVAPTH
The path where the Java executable files are installed.
Default value: $JAVA_HOME/bin
JBOSSCONF
The server mode to launch this server in, standalone or domain.
Default value: standalone or domain depending on server mode.
JBOSSSH
The script which is used to launch to server.
Default value: $JBOSS_HOME/bin/$JBOSSCONF.sh
JBOSS_SERVER_CONFIG
The server configuration file to use.
There is no default for this property. Either standalone.xml or domain.xml can be defined at start.
JBOSS_HOST_CONFIG This property allows a user to specify the host configuration (such as host.xml). It has no value set as the default.

Appendix B. Installer Screenshots

B.1. Language Selection

Select the required language for the installer.

Figure B.1. JBoss EAP Installer Language Selection

B.2. End User License Agreement

Agree to the End User License Agreement to continue.

Figure B.2. JBoss EAP Installer End User License Agreement

B.3. Installation Path

Define the installation path for the JBoss EAP instance.

Figure B.3. JBoss EAP Installer Installation Path

B.4. Administrative User Creation

Create an administrative user.

Figure B.4. JBoss EAP Installer Administrative User Creation

B.5. Quickstart Installation

Install the JBoss EAP quickstarts.

Figure B.5. JBoss EAP Installer Quickstart Setup

B.6. JDK Setup

Set the location of the installed JDK.

Figure B.6. JBoss EAP Installer JDK Setup

B.7. Maven Repository Setup

Configure the JBoss EAP Maven Repository.

Figure B.7. JBoss EAP Installer Maven Repository Installation

B.8. Pack Installation

Select the optional packages to install.

Figure B.8. JBoss EAP Installer Package Installation

B.9. Socket Binding Setup

Determine whether to use the default bindings, or configure custom bindings.

Figure B.9. JBoss EAP Installer Socket Bindings

B.10. Socket Bindings (Standalone) Configuration

Configure custom socket bindings for standalone mode.

Figure B.10. JBoss EAP Installer Standalone Socket Binding Configuration

B.11. Socket Bindings (Domain) Configuration

Configure custom socket bindings for domain mode.

Figure B.11. JBoss EAP Installer Domain Socket Binding Configuration

B.12. Socket Bindings (ha-domain) Configuration

Configure custom socket bindings for ha-domain mode.

Figure B.12. JBoss EAP Installer ha-domain Socket Binding Configuration

B.13. Socket Bindings (full-domain) Configuration

Configure custom socket bindings for full-domain mode.

Figure B.13. JBoss EAP Installer full-domain Socket Binding Configuration

B.14. Socket Bindings (full-ha-domain) Configuration

Configure custom socket bindings for full-ha-domain mode.

Figure B.14. JBoss EAP Installer full-ha-domain Socket Binding Configuration

Appendix C. Revision History

Revision History
Revision 2.0-23 Wed Feb 12 2014 Russell Dickenson
Red Hat JBoss Enterprise Application Platform 6.2.0 GA

Legal Notice

Copyright © 2014 Red Hat, Inc..
This document is licensed by Red Hat under the Creative Commons Attribution-ShareAlike 3.0 Unported License. If you distribute this document, or a modified version of it, you must provide attribution to Red Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.