This section describes the various options available for running your UltraESB instance, which you have installed by following the Installation Guide.
UltraESB is shipped with a default configuration which has been split into 2 different configuration files, for management and maintenance tasks.
While the ultra-root.xml provides the more static server configurations like transports, management/monitoring, clustering, caching etc. the ultra-dynamic.xml provides the dynamic service and mediation configurations. Keeping this split as it is, is vital in supporting the graceful configuration updates and configuration provisioning, which you will see how to effectively do in the Configuration and Administration.
| Default Configuration The default configuration is configured to start the HTTP/S transport listeners and it exposes 2 sample proxy services named echo-proxy, a proxy service, which proxies the sample echo service running at port 9000 and echo-back, a mock service which echo the request itself as the response from the ESB. |
There are 3 different ways in running the UltraESB standalone server;
Running UltraESB within the IDE will be discussed in-detail under the User Guide, and this sections introduces to the first and third options in running the UltraESB.
Running UltraESB with start-up script
This is the more common way of running the UltraESB at development phase, and it directly starts the server with the default configuration.
For starting the UltraESB with the default configuration, on Linux based systems, use a command line shell to navigate to the ULTRA_HOME/bin directory and execute the ultraesb.sh script.
For starting the UltraESB with default configuration on Windows based systems, navigate to the ULTRA_HOME/bin directory using the file browser and double click on the ultraesb.bat script.
Upon firing the above command to execute the ultraesb.sh or by double clicking on the ultraesb.bat script, the following output will be displayed on the console.
Starting AdroitLogic UltraESB ...
Using JAVA_HOME : /opt/jdk1.6.0_23
Using ULTRA_HOME: /opt/ultraesb-1.6.0
Using ULTRA_CONF: /opt/ultraesb-1.6.0/conf
Reading configuration from : /opt/ultraesb-1.6.0/conf/ | Current directory is : /opt/ultraesb-1.6.0/.
2011-08-30 19:14:04,101 [-] [main] INFO LicenseManager Server ID : f0a714b0-33cd-430a-ba58-1f73cffc3730 Days left for evaluation : 29
2011-08-30 19:14:04,103 [-] [main] INFO LicenseManager You are currently using this software under an evaluation license of 30 days. To obtain a full license free of charge, please visit http://adroitlogic.org
2011-08-30 19:14:04,791 [-] [main] INFO PooledMessageFileCache Directory : /opt/ultraesb-1.6.0/tmp/localhost locked for file cache : null
2011-08-30 19:14:04,816 [-] [main] INFO PooledMessageFileCache Memory mapping is enabled for : 8192 bytes of each file
2011-08-30 19:14:04,816 [-] [main] INFO PooledMessageFileCache Initialized cache of : 200 files at : /opt/ultraesb-1.6.0/tmp/localhost
2011-08-30 19:14:04,891 [-] [main] INFO ConfigurationImpl Starting UltraESB/1.6.0 (GA) (c) 2010-2011 AdroitLogic. All Rights Reserved - localhost
2011-08-30 19:14:04,891 [-] [main] INFO ConfigurationImpl Server name : localhost
2011-08-30 19:14:04,891 [-] [main] INFO ConfigurationImpl Pre-initialization of the engine..
2011-08-30 19:14:04,893 [-] [ZabbixAgent] INFO ZabbixAgent Agent started on port : 11819
2011-08-30 19:14:06,683 [-] [main] INFO ServerManager Starting server ...
2011-08-30 19:14:06,683 [-] [main] INFO ServerManager Linux - amd64 [2.6.35-28-generic] / Processors : 4
2011-08-30 19:14:06,685 [-] [main] INFO ServerManager Total physical memory : 3,852,284K (547,476K free) Heap max : 1,004,928K
2011-08-30 19:14:06,685 [-] [main] INFO ServerManager Java HotSpot(TM) 64-Bit Server VM, Sun Microsystems Inc. [19.0-b09]
2011-08-30 19:14:06,714 [-] [main] INFO ServerManager Clustering is disabled
2011-08-30 19:14:06,752 [-] [main] INFO HttpsNIOListener Https transport sender : https-sender using default identity
2011-08-30 19:14:06,752 [-] [HttpNIOSender-http-sender] INFO HttpNIOSender Starting NIO Sender : http-sender ...
2011-08-30 19:14:06,752 [-] [main] INFO HttpsNIOListener Https transport sender : https-sender is using the default trust store
2011-08-30 19:14:06,866 [-] [HttpsNIOSender-https-sender] INFO HttpsNIOSender Starting NIO Sender : https-sender ...
2011-08-30 19:14:06,870 [-] [main] INFO SimpleQueueWorkManager Started instance : default
2011-08-30 19:14:06,870 [-] [main] INFO SimpleQueueWorkManager Started Work Manager : default
2011-08-30 19:14:06,871 [-] [main] INFO ServerManager Initializing transport listeners
2011-08-30 19:14:06,874 [-] [main] INFO ServerManager Starting Proxy Services, Endpoints and Sequences
2011-08-30 19:14:06,874 [-] [main] INFO ServerManager UltraESB server root configuration started successfully
2011-08-30 19:14:06,874 [-] [main] INFO ConfigurationImpl Starting dynamic sub-contexts..
2011-08-30 19:14:06,874 [-] [main] INFO ConfigurationImpl Merging configuration from file : conf/ultra-dynamic.xml
2011-08-30 19:14:07,834 [-] [main] INFO echo-proxy-outSequence Sequence : echo-proxy-outSequence started
2011-08-30 19:14:07,834 [-] [main] INFO Address Started Address : address of endpoint : echo-proxy-inDestination
2011-08-30 19:14:07,835 [-] [main] INFO echo-proxy-inDestination Started endpoint : echo-proxy-inDestination
2011-08-30 19:14:07,835 [-] [main] INFO Address Started Address : address of endpoint : echo-proxy-outDestination
2011-08-30 19:14:07,835 [-] [main] INFO echo-proxy-outDestination Started endpoint : echo-proxy-outDestination
2011-08-30 19:14:07,836 [-] [main] INFO echo-proxy Proxy service : echo-proxy started
2011-08-30 19:14:07,929 [-] [main] INFO echo-back-inSequence Sequence : echo-back-inSequence started
2011-08-30 19:14:07,929 [-] [main] INFO echo-back Proxy service : echo-back started
2011-08-30 19:14:07,929 [-] [main] INFO ConfigurationImpl Merged configuration from file : conf/ultra-dynamic.xml
2011-08-30 19:14:07,930 [-] [main] INFO ServerManager Starting transport listeners
2011-08-30 19:14:07,948 [-] [HttpNIOListener-http-8280] INFO HttpNIOListener Starting NIO Listener : http-8280 on port : 8280 ...
2011-08-30 19:14:07,950 [-] [main] INFO HttpsNIOListener Loading Identity Keystore from : conf/keys/identity.jks
2011-08-30 19:14:07,957 [-] [main] INFO HttpsNIOListener Loading Trust Keystore from : conf/keys/trust.jks
2011-08-30 19:14:07,995 [-] [main] INFO ConfigurationImpl UltraESB/1.6.0 (GA) - localhost started with root configuration..
2011-08-30 19:14:07,995 [-] [HttpsNIOListener-https-8443] INFO HttpsNIOListener Starting NIO Listener : https-8443 on port : 8443 ...
Stopping the just started server is a matter of terminating the program by pressing CTRL + C on the command line.
The UltraESB installation installs itself on first execution for an evaluation period of 30 days. You should then submit the generated Server ID reported by the LicenseManager and the following details to license@adroitlogic.com in-order to obtain a full production license for perpetual use on any number of instances, FREE OF CHARGE.
[Required]
Name of the Licensee: *
Number of Instances you wish to use: *
Server ID: *
[Optional]
Contact Name
Contact Email address
Description of use :
Comments and Feedback :
| Production License Typically you will receive your license key within one business day. Your current 'Server ID' is printed on the console as the UltraESB starts. |
While this approach is more common in starting/stopping ESB in development mode which will report any errors on the console for easy resolution, almost all of the production deployments prefer starting the UltraESB as a daemon on Linux with Java Service Wrapper.
Running UltraESB in production
In production you might want the server to run as a UNIX daemon and you also want to guarantee the availability (i.e. if the server crashes an instance will automatically be started) and so forth. UltraESB uses Java Service Wrapper to run the server as a UNIX daemon.
| Note Production deployments are only supported on Linux and hence the Java Service Wrapper is also configured only to run on Linux as a daemon and running the server on Windows as a service in production is not recommended. |
Starting the server as a daemon is exposed with the ultraesb-daemon.sh. Execute the daemon script to see the command usages as follows;
The usage of the daemon script will be displayed as follows;
Usage: ./ultraesb-daemon.sh { console | start | stop | restart | status | dump }
These options and there respective usage are as follows;
- console - start the server on console, mostly equal to the previous start-up mode
- start - starts the server as a daemon
- stop - stop the server started as a daemon
- restart - restart the server started as a daemon
- status - check status of the server started as a daemon
- dump - dump the JVM state with a thread dump to the wrapper log
For example to start the UltraESB instance use the following command
Then to stop the started server instance you can use
Once the UltraESB is started and running, you could use the UltraESB management console (Uconsole) or the management terminal (Uterm) to manage/monitor the instance. The usages of the Uconsole and Uterm will be covered under relevant sections.
For advance options available for start-up commands please refer to the Configuration and Administration.




