Skip to content

Install JBoss EAP 6.3 on RHEL/CentOS 7

Overview

This guide provides comprehensive step-by-step instructions to install and configure JBoss Enterprise Application Platform (EAP) 6.3 on Red Hat Enterprise Linux (RHEL) or CentOS 7 systems. By following this guide, you will set up a production-ready JBoss environment with proper user management, system configuration, and service automation.

What You'll Learn

  • Install Oracle Java JDK 8 as a prerequisite
  • Configure Java environment variables system-wide
  • Install and configure JBoss EAP 6.3
  • Set up dedicated JBoss system user for security
  • Configure JBoss as a systemd/init.d service
  • Enable automatic startup on system boot

Prerequisites

Before starting this installation, ensure you have:

  • Operating System: RHEL 7 or CentOS 7 (64-bit)
  • Root Access: sudo privileges or root user access
  • Internet Connection: For downloading packages
  • Disk Space: Minimum 2GB free space for Java and JBoss
  • RAM: Minimum 2GB RAM (4GB+ recommended for production)

Important Notes

  • This guide uses Java JDK 8u91. For production environments, consider using the latest LTS version.
  • Ensure you have valid licenses for JBoss EAP 6.3 from Red Hat.
  • Oracle JDK download links may require Oracle account authentication.

Java JDK Installation

JBoss EAP requires Java Development Kit (JDK) 6 or higher. This guide uses Oracle JDK 8u91, which is recommended for JBoss EAP 6.3.

Step 1: Download Oracle Java JDK 8u91

Download the 64-bit Oracle JDK using wget with proper authentication headers:

wget --no-cookies \
     --no-check-certificate \
     --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" \
     "http://download.oracle.com/otn-pub/java/jdk/8u91-b14/jdk-8u91-linux-x64.tar.gz"

Alternative Download Method

If the wget command fails, manually download the JDK from the Oracle JDK Downloads page and transfer it to your server using scp or sftp.

Step 2: Extract Oracle Java JDK

Extract the downloaded tarball to the /opt directory:

cd /opt
sudo tar xzf /path/to/jdk-8u91-linux-x64.tar.gz

This creates a directory /opt/jdk1.8.0_91 containing the Java installation.

Step 3: Configure Java Using Alternatives

The alternatives system allows you to manage multiple Java versions. Register the JDK binaries:

sudo alternatives --install /usr/bin/java java /opt/jdk1.8.0_91/bin/java 2
sudo alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_91/bin/jar 2
sudo alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_91/bin/javac 2

Set the newly installed JDK as the default:

sudo alternatives --set jar /opt/jdk1.8.0_91/bin/jar
sudo alternatives --set javac /opt/jdk1.8.0_91/bin/javac

Understanding Priority Levels

The number 2 in the alternatives command represents the priority level. Higher numbers have higher priority when auto-selecting alternatives.

Step 4: Configure Java Environment Variables

Create a system-wide profile script to set Java environment variables:

sudo vim /etc/profile.d/jdk.sh

Add the following content to the file:

#!/bin/sh
export JAVA_HOME=/opt/jdk1.8.0_91
export JRE_HOME=/opt/jdk1.8.0_91/jre
export PATH=$PATH:/opt/jdk1.8.0_91/bin:/opt/jdk1.8.0_91/jre/bin

Make the script executable and load it:

sudo chmod +x /etc/profile.d/jdk.sh
source /etc/profile.d/jdk.sh

File Name Correction

Note that the original document had a typo (jsk.sh instead of jdk.sh). Ensure you use the correct filename jdk.sh throughout.

Step 5: Verify Java Installation

Confirm that Java is installed correctly and accessible:

java -version

Expected output:

java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)

You can also verify the environment variables:

echo $JAVA_HOME
echo $PATH

JBoss EAP 6.3 Installation

With Java properly configured, you can now proceed to install JBoss EAP 6.3.

Step 1: Extract JBoss EAP Archive

Navigate to the /opt directory and extract the JBoss EAP distribution:

cd /opt
sudo unzip jboss-eap-6.3.zip

Obtaining JBoss EAP

JBoss EAP requires a Red Hat subscription. Download it from the Red Hat Customer Portal or use the Red Hat Developer subscription for development purposes.

This creates a directory /opt/jboss-eap-6.3.

Create a symbolic link for easier version management and upgrades:

sudo ln -s /opt/jboss-eap-6.3 /opt/jboss63

Benefits of using symbolic links:

  • Simplifies path references in scripts and configurations
  • Makes version upgrades easier by just changing the link target
  • Maintains consistent paths across different JBoss versions

Step 3: Set JBoss Environment Variable

Export the JBOSS_HOME environment variable. For persistent configuration, add this to /etc/profile.d/jdk.sh:

export JBOSS_HOME=/opt/jboss63

Or set it temporarily in your current session:

export JBOSS_HOME=/opt/jboss63

Permanent Environment Variables

To make JBOSS_HOME permanent for all users, add the export command to /etc/profile.d/jdk.sh alongside the Java variables.


User and Permissions Configuration

Running JBoss as root is a security risk. Create a dedicated non-privileged user to run the JBoss service.

Step 4: Create JBoss Group and User

Create a dedicated jboss group and user account:

sudo groupadd jboss
sudo useradd -s /bin/bash -g jboss jboss

This creates:

  • A system group named jboss
  • A user named jboss with bash shell belonging to the jboss group

User Account Details

The -s /bin/bash option sets the login shell to bash, which is useful for administrative tasks. The -g jboss option assigns the user to the jboss group.

Step 5: Change Directory Ownership

Grant the jboss user ownership of the JBoss installation:

sudo chown -Rf jboss:jboss /opt/jboss63

The -R flag applies ownership recursively to all subdirectories and files, while -f forces the operation without prompting.

Security Best Practice

Never run JBoss as the root user in production environments. Always use a dedicated service account with minimal privileges.


Service Configuration

Configure JBoss to run as a system service for automatic startup and easier management.

Step 6: Copy JBoss Startup Script

Copy the JBoss standalone startup script to the init.d directory:

sudo cp /opt/jboss63/bin/init.d/jboss-as-standalone.sh /etc/init.d/jboss

Step 7: Create JBoss Configuration Directory

Create a directory to store JBoss service configuration:

sudo mkdir -p /etc/jboss-as

Copy the configuration template:

sudo cp /opt/jboss63/bin/init.d/jboss-as.conf /etc/jboss-as/

Step 8: Configure JBoss Service User

Edit the JBoss configuration file to specify the service user:

sudo vim /etc/jboss-as/jboss-as.conf

Add or modify the following line:

JBOSS_USER=jboss

Additional configuration options you may want to set:

# JBoss installation directory
JBOSS_HOME=/opt/jboss63

# JBoss configuration to use (default, standalone, etc.)
JBOSS_CONFIG=standalone.xml

# JBoss mode (standalone or domain)
JBOSS_MODE=standalone

# Bind address
JBOSS_BIND_ADDRESS=0.0.0.0

Configuration Options

Review the jboss-as.conf file for additional configuration options such as heap size, binding addresses, and server profiles.

Step 9: Configure Service Startup

Make the init script executable and configure it to start on boot:

sudo chmod 755 /etc/init.d/jboss
sudo chkconfig --add jboss
sudo chkconfig --level 234 jboss on

This configuration:

  • Sets executable permissions on the startup script
  • Registers JBoss with the system service manager
  • Enables automatic startup at runlevels 2, 3, and 4

Runlevel Configuration

  • Runlevel 2: Multi-user mode without NFS
  • Runlevel 3: Full multi-user mode (typical server mode)
  • Runlevel 4: Unused/custom
  • Runlevel 5: Multi-user mode with GUI

Step 10: Start JBoss Service

Start the JBoss service and verify it's running:

sudo service jboss start

Expected output:

Starting jboss-as: [  OK  ]

Check service status:

sudo service jboss status

Service Management Commands

sudo service jboss start    # Start JBoss
sudo service jboss stop     # Stop JBoss
sudo service jboss restart  # Restart JBoss
sudo service jboss status   # Check status

Verification and Testing

Verify JBoss Installation

After starting JBoss, verify the installation by checking:

  1. Process Status:

    ps aux | grep jboss
    

  2. Log Files:

    tail -f /opt/jboss63/standalone/log/server.log
    

  3. Port Listening:

    sudo netstat -tulpn | grep java
    

JBoss EAP 6.3 default ports: - 8080: HTTP listener - 9990: Management console (HTTP) - 9999: Management native interface

  1. Web Console Access:

Open a web browser and navigate to:

http://your-server-ip:8080

Firewall Configuration

If you cannot access JBoss from a remote machine, configure the firewall:

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=9990/tcp
sudo firewall-cmd --reload

Create Management User

To access the JBoss management console, create an administrative user:

/opt/jboss63/bin/add-user.sh

Follow the interactive prompts to create a management user.

Access the management console at:

http://your-server-ip:9990/console


Troubleshooting

Common Issues and Solutions

JBoss Fails to Start

Check logs:

tail -100 /opt/jboss63/standalone/log/server.log

Common causes: - Port conflicts (check with netstat -tulpn) - Insufficient permissions - Java not found in PATH - Insufficient memory

Permission Denied Errors

Ensure all JBoss directories are owned by the jboss user:

sudo chown -Rf jboss:jboss /opt/jboss63

Service Not Starting on Boot

Verify chkconfig settings:

chkconfig --list jboss

Re-enable if needed:

sudo chkconfig --level 234 jboss on

Cannot Access Management Console
  1. Verify JBoss is running
  2. Check firewall rules
  3. Ensure management user is created
  4. Check binding address in configuration

Next Steps

After successfully installing JBoss EAP 6.3, consider these next steps:

  • Configure JBoss for your specific application requirements
  • Set up SSL/TLS certificates for secure connections
  • Configure database connection pools
  • Deploy your applications
  • Set up monitoring and logging
  • Configure clustering for high availability (if needed)
  • Implement backup and disaster recovery procedures
  • Tune JVM parameters for optimal performance

Additional Resources


Summary

This guide covered the complete installation process for JBoss EAP 6.3 on RHEL/CentOS 7, including:

✅ Oracle Java JDK 8 installation and configuration
✅ Environment variable setup for Java and JBoss
✅ JBoss EAP 6.3 extraction and installation
✅ Security configuration with dedicated service user
✅ System service configuration for automatic startup
✅ Verification and testing procedures
✅ Troubleshooting common issues

Your JBoss EAP 6.3 instance is now ready for application deployment and configuration.


Last updated: October 2025