
|
At a Glance |
|
|
Catalog |
System |
|
Category |
Application Servers |
|
User volumes |
yes |
|
Min. memory |
160M |
|
OS |
Linux |
|
Constraints |
no |
JBOSS is an application server appliance based on open source JBoss. JBOSS supports two separate versions of JBoss software:
JBOSS supports a number of advanced technologies and features:
JBOSS automatically deploys web applications from either a locally mounted content volume or a network filesystem accessible through the fs terminal. Several pre-configured execution environments, derived from the standard JBoss configurations, are available. The path to the application documents is configurable, so that the same volume can be shared between multiple web servers and other appliances serving different content.
JBOSS has three generic output terminals intended for accessing external services: The db terminal is for accessing various databases; the fs terminal is for accessing shared file storage (using NFS); and the aux terminal is for sending e-mail messages to an SMTP server.
The log terminal can be used to connect JBOSS to a shared file system on which JBOSS can store log files.
The configuration of the server is provided through properties. These properties are designed to cover most uses in an easy-to-configure way and in most cases only a few need to be set to non-default values.
|
Name |
Latest version |
|
JBOSS |
1.0.2-1 |
|
JBOSS64 |
1.0.2-1 |
Resources
32-bit version
|
Resource |
Minimum |
Maximum |
Default |
Tested |
|
CPU |
0.1 |
16 |
0.25 |
- |
|
Memory |
160 MB |
4 GB |
1 GB |
- |
|
Bandwidth |
1 Mbps |
2 Gbps |
250 Mbps |
- |
64-bit version
|
Resource |
Minimum |
Maximum |
Default |
Tested |
|
CPU |
0.1 |
16 |
0.25 |
- |
|
Memory |
160 MB |
32 GB |
1 GB |
- |
|
Bandwidth |
1 Mbps |
2 Gbps |
250 Mbps |
- |
Memory requirements for JBOSS
Java applications usually require increased amount of RAM to function properly, and the amount of memory required by JBOSS depends on the requirements of the running applications. JBOSS may crash or not work properly if not enough memory is available. In the case of a crash, a dashboard message is recorded.
|
Name |
Direction |
Protocol |
Description |
|
in |
in |
HTTP |
Serves HTTP requests coming from web clients. |
|
db |
out |
HTTP |
Access to a database server. Usage is defined by whatever scripts reside on the content volume (if any). This terminal may be left unconnected if it is not used. |
|
fs |
out |
HTTP |
Access to a network file system for shared file storage, providing read/write file access over NFS. The connected server must have a read/write share named /mnt/data. The mounted remote file system is 'seen' as /mnt/fs within the appliance's filesystem space. This terminal may be left unconnected if it is not used. |
|
log |
out |
CIFS |
Access to a CIFS-based network file system for storing access and error logs. The connected server must allow anonymous logins and have a read/write share named share. This terminal may be left unconnected if it is not used. |
|
aux |
out |
HTTP |
Access to an SMTP server for sending outgoing e-mail. This terminal may be left unconnected if it is not used. |
|
net |
out |
HTTP |
Gateway output for subnet access. This terminal may be left unconnected if it is not used. |
|
mon |
out |
CCE |
Sends performance and resource usage statistics. This terminal may be left unconnected if not used. |
Volumes
|
Name |
Description |
|
temp |
A mandatory read/write volume for temporary storage. Used for temporary files and application deployment. The required size depends on the size of deployed applications and re-deployment frequency. This volume is automatically cleaned upon appliance start. JBOSS monitors the free disk space on this volume and records dashboard messages when amount of free disk space drops under 5% or 2%. |
|
content |
A read/only or read/write volume for application storage. This volume is only used if the content_on_fs property is set to no, in which case this volume is mandatory. If content_on_fs is set to yes and the content volume exists, the appliance will fail to start. |
Properties
General Properties
|
Name |
Type |
Description |
|
jboss_env |
String |
One of the four modes of operation: |
|
jboss_cfg |
String |
Configuration of JBoss. Possible values: |
|
heap_size |
Int |
Amount of memory allocated for Java heap (the -Xms and -Xmx options). If this property equals '0', the value is auto-calculated by JBOSS (approximately 70% of RAM). If this property is empty, JBOSS does not pass -XMs and -XMx properties to JVM at all, and these properties may be specified directly by the user in the java_opts property. |
|
perm_size |
Int |
Amount of memory allocated for Java permanent objects (the -XX:PermSize and -XX:MaxPermSize options). If this property equals '0', value is autocalculated by JBOSS (approximately 20% of RAM). If this property is empty, JBOSS does not pass -XX:PermSize and -XX:MaxPermSize properties to JVM at all, and these properties may be specified directly by user in java_opts property. |
|
java_opts |
String |
This string is added to the JAVA_OPTS environment variable before launching JVM. Additional options and parameters may be specified here (ex. heap size, perm size, debug options, and so on.). |
|
tcp_port |
Integer |
Port that JBOSS listens on for incoming connections. |
|
app_base |
String |
Directory for the user deployable applications, relative to the root of the data source (mounted content volume or NFS-mounted share). |
|
content_on_fs |
String |
Specifies whether the content is relative to the file system at the fs terminal or is on the content volume. |
|
timezone |
String |
Specifies the time zone used in the appliance. If this property is empty, the timezone is not modified and is left as-is. A list of supported time zones is available here? . |
Logging Properties
|
Name |
Type |
Description |
|
logs_enabled |
String |
Enables or disables logging. Valid values are yes or no. If the log terminal is not connected, and this property set to yes, JBOSS fails to start. |
|
logs_dir |
String |
Directory where logs are stored relative to the root of the log share. |
|
log_filename |
String |
Filename for the log file. |
|
log_level |
String |
Logging level. {valid values and default required} |
Clustering Properties
|
Name |
Type |
Description |
|
partition_name |
String |
The name of a partition. All instances of JBOSS on the grid which have same partition name are joined into a cluster. If this property is empty clustering support is disabled. Default: (empty) |
Simple web/application server
This is the simplest way to use a JBOSS appliance. One IN gateway routes all incoming HTTP traffic to the JBOSS appliance. In this scenario, JBOSS uses a local content volume.

Appliances in use:
Properties in use:
|
Property |
Value |
Description |
|
jboss_env |
JBoss 4, JDK 5 |
JBoss environment in use. |
|
jboss_cfg |
default |
Default configuration of JBoss. |
|
tcp_port |
80 |
Default port for HTTP. |
|
app_base |
content |
Applications are located in /content subdirectory of the data volume. |
|
content_on_fs |
off |
Content is located on local volume. |
|
logs_enabled |
no |
No logging. |
Simple web/application server with external data store, database and monitoring
This is a more complex example which uses external data storage, a database appliance and a monitoring appliance.

Appliances in use:
Properties in use:
|
Property |
Value |
Description |
|
jboss_env |
JBoss 5, JDK 6 |
Latest JBoss environment in use. |
|
jboss_cfg |
default |
Default configuration of JBoss. |
|
tcp_port |
80 |
Default port for HTTP. |
|
app_base |
content |
Applications are located in /content subdirectory of the NFS-mounted data volume. |
|
content_on_fs |
on |
Content is located on NFS-mounted volume. |
|
logs_enabled |
yes |
With logging. |
|
logs_dir |
/jboss_logs |
Log file is located in /jboss_logs/ subdirectory of the NAS appliance. |
|
log_filename |
jboss-runtime.log |
Log file is named "jboss-runtime.log". |
|
log_level |
EMERG |
Only emergency messages are logged. |
Application server with frontend
In this example the frontend WEB5 appliance processes static content, and redirects all requests for dynamically-generated content to the backend JBOSS appliance.

Appliances in use:
Properties in use:
|
Property |
Value |
Description |
|
jboss_env |
JBoss 4, JDK 5 |
JBoss environment in use. |
|
jboss_cfg |
default |
Default configuration of JBoss. |
|
tcp_port |
8080 |
Standard JBoss TCP port. |
|
app_base |
content |
Applications are located in /content subdirectory of the data volume. |
|
content_on_fs |
off |
Content is located on local volume. |
|
logs_enabled |
no |
No logging. |
Complex hosting environment with clustered and fault-tolerant frontend, databases, backend servers.
This is a complex application with a clustered frontend, multiple clustered databases and a clustered JBoss backend.

The gw4 input gateway receives incoming requests and forwards them to the URL switch sw1 which separates requests for static content (sent through output terminals 1-3, through the load balancer lb1, and thence to the web frontend servers web1 and web2) from application calls (sent through output terminals 5-7, through the backend load balancer lb2, and then to the JBoss application servers AppSrv4 and AppSrv5). The frontend web farm (web1 and web2) processes incoming requests, and either replies with static content, or forwards requests to the backend servers through the second load balancer lb2. The frontend servers use clustered MySQL database appliances db_1_1 and db_1_2. The second load balancer lb2 balances traffic between clustered JBoss appliances AppSrv4 and AppSrv5. These in turn use clustered database appliances db_2_1 and db_2_2. Data storage is provided via NFS by the NAS appliance nas.
Appliances in use:
Properties in use:
|
Property |
Value |
Description |
|
jboss_env |
JBoss 5, JDK 6 |
Latest JBoss environment in use. |
|
jboss_cfg |
all |
'all' configuration of JBoss, includes clustering. |
|
tcp_port |
8080 |
Default port for JBoss. |
|
app_base |
content |
Applications are located in /content subdirectory of the NFS-mounted data volume. |
|
content_on_fs |
on |
Content is located on NFS-mounted volume. |
|
logs_enabled |
no |
No logging. |
|
Copyright © 2011 CA.
All rights reserved.
|
|