WildFly

WildFly 8 – A New Improved JBoss Application Server for Linux

WildFly 8 &-8211; A New Improved JBoss Application Server for Linux &-8211; this Article or News was published on this date:2019-05-28 19:28:49 kindly share it with friends if you find it helpful

As we all know that JBoss AS has been renamed to WildFly. A lots of new features has been added and lots of has been upgraded. Finally WildFly 8.0.0 Final has been released on Feb 11.2014. WildFly Project Lead Jason Greene announced the same.

Install WildFly in LinuxInstall WildFly in Linux

WildFly 8 JBoss Application Server

WildFly 8 is Red Hat‘s Java EE 7 compliant open source application server. The Main features are as below:

Java EE 7 Compatibility

The biggest change in this is that now WildFly 8 is official Java EE7 Certified.

High Performance Web Server

Undertow is new high performance web server written in Java. Now this has been implemented in WildFly 8. This is really designed for high throughput and scalability and can handle millions of connections. Undertow’s lifecycle is completely controlled by the embedding application. This is extremely lightweight with core jar having size of 1MB and embedded server using less than 4MB of heap space. This is really great.

3Port Reduction

Since it is using Undertow which support for Upgrading HTTP, which will allow multiple protocols to be multiplexed over single HTTP port. WildFly 8 has moved nearly all of its protocols to be multiplexed over two HTTP ports: one is management and another one is application port. This is really a big change and benefit to cloud providers (such as OpenShift) who run hundreds to thousands of instances on a single server. In total, it has two default ports for configuration and they are 9990 (Web Administration Console) and 8080 (Application Console).

Management Role Based Access Control & Auditing

This is the new and interesting thing implemented in WildFly 8. By using this we can create different users and can assign those one to different roles as per requirements. I’ll show you later with screen shots.

Logging

The management API now supports the ability to list and view the available log files on a server. Now, we have attribute called “add-logging-api-dependencies” available for any kind of deployments in which we want to skip container logging. This will disable the adding of the implicit server logging dependencies. We have another option i.e. we can use a jboss-deployment-structure.xml to exclude the logging subsystem. Using this, it will help to stop the logging subsystem from going through any deployment.

We can also make use of another parameter i.e. use-deployment-logging-config for enabling/disabling processing of logging configuration files within a deployment.

Note: System Property that we were using for disabling per logging has been deprecated from this version.

Clustering

Again Big change is one clustering. All Features related to Clustering support had been changed in WildFly 8 and these includes as below:

  1. Distributed web session has been optimized for it with new Java Based Web Server i.e. Undertow.
  2. mod_cluster support for Undertow.
  3. Optimized Distributed SSO(Single Sign-On) capabilities and support for Undertow.
  4. New/optimized distributed @Stateful EJB caching implementation.
  5. WildFly 8 added some new public clustering API.
  6. For creating singleton services it provides new public APIs.
CLI Improvements

CLI Configuration has also been improved. You know All admin love to work on CLI ;). So, now we can create alias for particular server and then can use that alias whenever want to connect to that server using connect command.

There are still lots of enhancements and updates done in WildFly 8. You can check all these at:

  1. http://wildfly.org/news/2014/02/11/WildFly8-Final-Released/

Installation of WildFly 8 in Linux

Before moving ahead with Installation make sure that you have Java EE 7 installed on your system. WildFly 8 will not work with previous revisions. Please follow the below guide to install Java EE 7 in the Linux systems.

  1. Install JDK/JRE 7u25 in Linux

Step 1: Downloading WildFly 8

Use the following link to download the latest WildFly zip file.

  1. http://download.jboss.org/wildfly/8.0.0.Final/wildfly-8.0.0.Final.zip

You may also use ‘wget‘ command to download directly on the command line.

[[email protected]]- wget http://download.jboss.org/wildfly/8.0.0.Final/wildfly-8.0.0.Final.zip

Copy zip file to any preferred location (e.g. ‘/data/‘ in my case) and extract using ‘unzip’ command.

[[email protected]]- cp wildfly-8.0.0.Final.zip /data/
[[email protected]]- cd /data/
[[email protected] data]- unzip wildfly-8.0.0.Final.zip

Step 2: Setting Environment Variables

Now set some environment variables. You can set these on system wise or within your configuration files. Here I am setting within configuration files standalone.sh and standalone.conf in ‘bin‘ folder.

[[email protected] data]- cd wildfly-8.0.0.Final
[[email protected] data]- cd bin/

Add these two following lines to standlone.sh/standlone.conf files. Please specify your WildFly installation location and Java Home location.

JBOSS_HOME=”/data/wildfly-8.0.0.Final”
JAVA_HOME=”/data/java/jre7/bin/java”

Note: For whole system wide, you can set it under ‘/etc/profile‘ file.

Step 3: Starting WildFly 8

Now start server i.e. for standalone mode use ‘standalone.sh‘ and for domain mode use ‘domain.sh‘.

[[email protected] bin]- ./standalone.sh
[[email protected] bin]- ./domain.sh

But, here I am starting in standalone mode. By default it will get start by ‘standalone.xml‘ file, But You can also start with some other configuration using ‘–server-config‘ option.

As below I am starting server with ‘standalone-full-ha.xml‘ and this file is present in “$JBOSS_HOME/standalone(profile)/configuration/”.

[[email protected] bin]- ./standalone.sh --server-config standalone-full-ha.xml
Sample Output
Calling "/data/wildfly-8.0.0.Final/standalone/configuration/standalone.conf"
Setting JAVA property to "/data/java/jre7/bin/java"
===============================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: "/data/wildfly-8.0.0.Final"

  JAVA: "/data/java/jre7/bin/java"

  JAVA_OPTS: "-client -Dprogram.name=standalone.sh -Xms64M -Xmx512M -XX:MaxPerm
Size=256M -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman"

===============================================================================

13:55:26,403 INFO  [org.jboss.modules] (main) JBoss Modules version 1.3.0.Final
13:55:33,812 INFO  [org.jboss.msc] (main) JBoss MSC version 1.2.0.Final
13:55:35,481 INFO  [org.jboss.as] (MSC service thread 1-1) JBAS015899: WildFly 8.0.0.Final "WildFly" starting
13:55:58,646 INFO  [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
...........
13:56:22,778 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
13:56:22,794 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
13:56:22,794 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.0.0.Final "WildFly" started in 64534ms - Started 229 of 356 services (172 services are lazy, passive or on-demand)

Step 4: Acessing WildFly 8

Now you can point your browser to ‘http://localhost:8080‘ (if using the default configured http port) which brings you to the Welcome Screen.

Install WildFly in LinuxWildfly Welcome Screen

Wildfly Welcome Screen

From here, you can access WildFly community documentation guides and enhanced web-based Administration Console access.

Step 5: Managing WildFly 8

WildFly 8 provides two administrative consoles for managing running instance:

    1. web-based Administration Console
    2. command-line interface

Before connecting to administration console or remotely using the command line, you will need to create a new user using the ‘add-user.sh‘ script in the bin folder.

Next, go to ‘bin‘ directory, set ‘JBOSS_HOME‘ in add-user.sh (if variable is not set on system bases) and create user as below.

[[email protected] bin]- ./add-user.sh

Once starting the script you will be guided through the process to add a new user:

Sample Output
What type of user do you wish to add?
 a) Management User (mgmt-users.properties)
 b) Application User (application-users.properties)
(a):
Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : admin
The username 'admin' is easy to guess
Are you sure you want to add user 'admin' yes/no? yes
Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
 - The password should not be one of the following restricted values {root, admin, administrator}
 - The password should contain at least 8 characters, 1 alphanumeric character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
 - The password should be different from the username
Password :
Re-enter Password :
What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]:
About to add user 'admin' for realm 'ManagementRealm'
Is this correct yes/no? yes
Added user 'admin' to file '/data/wildfly-8.0.0.Final/standalone/configuration/mgmt-users.properties'
Added user 'admin' to file /data/wildfly-8.0.0.Final/domain/configuration/mgmt-users.properties'
Added user 'admin' with groups  to file /data/wildfly-8.0.0.Final/standalone/configuration/mgmt-groups.properties'
Added user 'admin' with groups  to file /data/wildfly-8.0.0.Final/domain/configuration/mgmt-groups.properties'
Is this new user going to be used for one AS process to connect to another AS process?
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? yes
To represent the user add the following to the server-identities definition 
Press any key to continue . . .

Now access the web-based Administration Console at ‘http://localhost:9990/console‘ and enter the new created username and password to directly access the Management Console.

Install WildFly in LinuxWildFly Login

WildFly Login

First Screen After login.

Install WildFly in LinuxWildFly Web Panel

WildFly Web Panel

If you prefer to handle your server from the CLI, run the ‘jboss-cli.sh‘ script from the ‘bin‘ directory that offers the same capabilities available via the web-based UI.

[[email protected] bin]- cd bin
[[email protected] bin]- ./jboss-cli.sh --connect
Connected to standalone controller at localhost:9999

For more information, follow the official WildFly 8 documentation at https://docs.jboss.org/author/display/WFLY8/Documentation.

Read Also : WildFly (JBoss AS) – How to Access and Manage CLI Using GUI

WildFly (JBoss AS) – How to Access and Manage CLI Using GUI

WildFly (JBoss AS) &-8211; How to Access and Manage CLI Using GUI &-8211; this Article or News was published on this date:2019-05-28 19:28:26 kindly share it with friends if you find it helpful

In last article, we have discussed about WildFly-8 (New enhanced version on Jboss AS). We have gone through the new functionalities and features added/upgraded to this version. Today, in this post we are going to discuss about the CLI management using GUI and how to manage the Server using GUI version on CLI management.

  1. WildFly – A New Improved JBoss Application Server for Linux
WildFly CLI ManagementWildFly CLI Management

WildFly CLI Management

Since Jboss AS 7, we have got a command line (CLI) tool for connecting to JBoss application and managing all tasks from command line environment. Some of the tasks that we can do using CLI console are as below.

  1. Deploy/Undeploy web application in standalone/Domain Mode.
  2. View all information about the deployed application on runtime.
  3. Start/Stop/Restart Nodes in respective mode i.e. Standalone/Domain.
  4. Adding/Deleting resource or subsystems to servers.

In this post, we are going to discuss about the different tasks and the way for launching CLI in GUI. Currently we can connect to GUI using two ways as shown below:

Method 1

By passing –gui option to “jboss-cli” script provided with Jboss/WildFly.

[[email protected] bin]- ./jboss-cli.sh --gui
WildFly CLI ManagementWildFly Cli Access

WildFly Cli Access

Method 2

Directly launching required jar from CLI (this is same which is in built in script itself).

[[email protected] bin]- java -Dlogging.configuration=file:$JBOSS_HOME/bin/jboss-cli-logging.properties -jar $JBOSS_HOME/jboss-modules.jar -mp $JBOSS_HOME/modules org.jboss.as.cli –gui
WildFly CLI ManagementWildFly Cli Gui

WildFly Cli Gui

You can take help from tool tip available on each node.

WildFly CLI ManagementWildFly Tooltip

WildFly Tooltip

For Getting Information about the resources of any module, just right click on that node and click on “read-resource”. After entering required values, all will get entered in command bar. Finally, click on submit button and you will see all details in Output tab.

WildFly CLI ManagementWildFly Modules

Modules Information

WildFly CLI ManagementWildFly Output

Output Script

Deploy/Undeploy

WildFLy’s GUI environment also supports for the deployments and undeployments of the web applications via the “Deployments” menu.

Using this we can construct our commands which can deploy applications present on our local file System, i.e. we don’t need to connect and copy application to Server for Deployments.

Step 1: Click on “Deployments” menu and then deploy. It will open a new dialog box asking for the location of the Web Application need to be deployed.

WildFly CLI ManagementWildFly Application Deployment

Application Deployment

Step 2: Select your web application. Provide “Name” and “Runtime Name”. Along with this you have to disable or deploy it forcefully by using mentioned check boxes.

WildFly CLI ManagementDeploy Name

Deploy Name

Step 3: Finally, click on Ok. After this you can see that it will create command within cmd box. Finally click on “Submit” button for submitting the deployment request.

WildFly CLI ManagementDeployment Command

Deployment Command

Step 4: After submitting, if everything goes fine. You will see output message in “Output” tab.

WildFly CLI ManagementOutput Command

Output Command

Step 5: For Un-deployment of any application, again you have to click on “Undeploy” option available in “Deployment” menu. This will provide you new pop up containing list of all deployed applications. In my case I have only one application available. Select application need to undeploy and then click OK.

WildFly CLI ManagementUndeployment Application

Undeployment Application

Creating and Executing CLI scripts

Whenever you click on option available on CLI’s GUI, then it creates corresponding command in its “cmd” prompt. Suppose, you have some task that you want to perform again and again. In that case you can avail use of “Script” execution facility available in this GUI version.

For example, Getting list of deployment resources, I have created a cli script and executed that from GUI as below.

WildFly CLI ManagementCreating Cli Script

Creating Cli Script

WildFly CLI ManagementOpen Cli Script

Open Cli Script

WildFly CLI ManagementRun Cli Script

Run Cli Script

It’ll show you the description of all available deployment resources.

WildFly CLI ManagementAll Deployments

All Deployments

One more helpful feature available in GUI is that It automatically keep the history of last 15 CLI scripts. So, you don’t need to load same script again and again. This can be really helpful for some kind of repeating task.