Access Keys:
Skip to content (Access Key - 0)

Installing Tcat Server on Solaris

Jun 14, 2011 16:33

Jason Brittain

Jul 29, 2011 16:58

Mulesoft Tcat Server Documentation

Installing Tcat Server on Solaris

Mulesoft Documentation Page


Installing Tcat Server on Solaris

This document describes how to install MuleSoft Tcat Server on the Solaris operating system. A basic installation using the Solaris installer is described below, followed by advanced installations in headless, text-only mode. In addition, this document describes how to start and stop Tcat Server, access the Tcat console, and provides advanced configuration and security steps..

For additional information and to install Tcat Server on other operating systems, please see:

Please send comments or questions to:


Solaris Operating Systems Supported

Tcat Server is supported on all Solaris operating systems that have a supported Java runtime. Server restarts are supported on Solaris 10 and 11.

For additional operating systems supported, please see installation documentation on: Linux, Microsoft Windows and Mac OS X.

Required Software

Tcat Server operates within a Java Viurtual Machine (JVM) and requires the Java SE Runtime Environment (JRE). However, it is strongly recommended that you install the Java SE Developers Kit (JDK). JDK includes JRE and provides for additional utilities.

JRE/JDK Versions Supported

MuleSoft recommends the latest Oracle/Sun HotSpot JDK or JRE. The following runtimes are known to work with Tcat Server:

  • Oracle/Sun JRE or JDK version 1.6.0_04 or later (also known as "Java 6").
  • Oracle/Sun JRE or JDK version 1.5 (all builds) will also work if you are only running the Tcat agent. The Tcat console requires versions 1.6.0_04 or later.
  • Oracle/JRockit version 1.6.0_20 or higher JDK (Note: the Tcat console v6.4.1 and lower show zero logs in the logs tab)

Note that Tcat Server runs in two or more Java Virtual Machines:

  1. The Tcat console runs in Tomcat 6.0, and requires JDK or JRE 1.6.0_04 or higher.
  2. The Tcat agents can run in Tomcat 5.5 or higher, including Tomcat 7, and require JDK or JRE 1.5.0 or higher

The following Java Runtimes have also been tested but are known to not work, and are unsupported:

  • Oracle JDK or JRE version 7, releases earlier than update 2 (due to HotSpot loop optimization bugs)
  • Oracle/Sun JDK or JRE versions 1.6.0_03 or lower (due to JAXB.. any 1.6.0 Oracle/Sun Hotspot JVM lower than 1.6.0_04 won't work)

Setting the JAVA_HOME environment variable

An environment variable must be set that points to the current JRE or JDK. Tcat Server first looks for an installed JDK with the JAVA_HOME environment variable. If it doesn't find a JDK, it looks for a JRE with the JRE_HOME environment variable.

Installing Tcat Server

You will need to know the default credentials to access the Tcat Server dashboard once installation is complete. Both the username and password default to "admin" as detailed below.

Download Tcat Server for Solaris

Download the latest Tcat Server release by going to the Tcat Overview Page and clicking on the Download Now button.

Installation with the Solaris Installer

Follow these steps to install Tcat Server with the Solaris installer. All defaults may be chosen for an initial installation. However, custom ports, installation directory and a service instance name can be customized by changing the defaults as shown below. Later, when installing additional Tcat Server instance on one or more remote computers, the Tcat console need not be installed.

  1. Download Tcat Server from the link above.
  2. Run the installer. The welcome screen will open in a few moments, click Next and accept the license agreement.
  3. Choose a Standard Installation to install both Tcat Server and the Tcat console. Choose Custom Installation if you wish to only install Tcat Server on a remote computer that will be administered by your primary installation. The Custom Installation option will also allow you to install Apache Tomcat documentation.
  4. After choosing the directory for installation, the next screen allows you to configure ports. Ports can also be later changed in the conf/server.xml and conf/Catalina/localhost/ files.
  5. The next screen allows you to define a unique service name for this instance of Tcat Server.
  6. Choose whether you would like symlinks created, and if so, the folder to create them in.
  7. The installation will then start and take several minutes to complete.
  8. Start Tcat Server by opening a Command Prompt window and executing /opt/TcatServer6/bin/tcat6 start
  9. Open a web browser and navigate to: http://localhost:8080/console
  10. Log in with "admin" for both the username and password.
  11. The Tcat Server dashboard will launch in your web browser.

Your next steps after launching the Tcat dashboard include registering a server in the console, and then adding a new web application to the server instance. See the Working with Servers guide for additional steps in these procedures.

Upgrade Installation

If you are upgrading from a previous release of Tcat Server, see Upgrading to Tcat Server 6 R4 and follow the upgrade instructions provided in this document.

Advanced Installations

This section demonstrates how to install Tcat Server in headless and unattended modes with custom options.

Headless (Text-Based) Installation

The "headless" (text-only) mode of installation allows users to customize the installation in both an attended (interactive) and unattended (non-interactive) mode. In the interactive mode, users answer configuration questions in the shell, and then the installer begins an unattended installation. In the non-interactive mode, users can automate multiple installs with an external configuration file.

Attended Headless Installation

To begin the headless installation, open a Command Prompt window and navigate to the directory where Tcat Server was downloaded, then type the following at the prompt (using your downloaded filename as it may differ from this):

sh -c

The installer's interaction in the Command Prompt window will look similar to this:

Unattended Headless Installation

Several options are available for an unattended headless installation:

1. Default Installation
If you wish to install Tcat Server with all default options, use the -q argument instead of -c. This will install the software in its default location of /opt/TcatServer6 with both Tcat Server and the Tcat console. It will also use all default port numbers, which can later be changed in the conf/server.xml and conf/Catalina/localhost/ files.

The command for a default installation is:
sh -q

2. Installation with an External Options File
An options file can be produced and referenced during the headless installation. If the installer has already been run, then a default option file response.varfile already exists in the .install4j directory within your installation directory. It is best to copy and modify this file and use it for future installations. Otherwise, the following code can be copied into a new text file, and customized for your use if necessary. It can then be used as the installation option file when installing Tcat Server version 6.4.4. The contents of this varfile is in the same format as a simple Java properties file:

After producing the above options file, and naming it response.varfile, execute the following command in the Command Prompt window to start installation:

To also display debugging information about the installation in the Command Prompt window, use the following command to start installation:

Adding Tcat Server Capabilities to an Existing Apache Tomcat Installation

Tcat Server capabilities can be added to an existing Apache Tomcat installation. All Tomcat 5.5.x and higher releases, and all Tomcat 6.0.x and 7.0.x releases are supported. Please reference Add Tcat Server Capabilities to an Existing Tomcat Install for installation instructions.

Installing Multiple Tcat Instances on a Single Computer

Multiple instances of Tcat Server can be run on a single machine. One instance (or more) of the Tcat console will allow users to manage all the additional Tcat Server instances, each running in their own Java Virtual Machine (JVM). For more information, see Installing Multiple Tcat Instances on a Single Machine.

Starting and Stopping Tcat Server on Solaris 10 and 11

If you want to use the standard Tomcat catalina or startup commands to start Tomcat, any environment variables you set in the Tcat console will not take effect until you restart Tomcat using Tcat Server commands. Therefore, for best results when setting environment variables in the Tcat console, you should always start Tomcat using Tcat Server commands described below.

By default, Tcat Server will automatically start after installation on Solaris 10 and higher, as part of the Solaris Service Management Framework (SMF). Or, without using SMF, you may also directly invoke the Tcat Server init script, named "tcat6". You may invoke the tcat6 script in the Tcat Server bin/ directory, or in the path /etc/init.d/tcat6 if you installed Tcat Server with root privileges. By default you should use SMF, but if you have insufficient permissions to use SMF, then the tcat6 init script will work. For any single Tcat Server installation, you should choose to invoke either SMF or the tcat6 init script, not both.

Using SMF, you may query the service to inspect its current state:

Or, if you're not using SMF, you may query Tcat's status:

To stop Tcat Server, disable its SMF service:

Or, if you're not using SMF, you may stop Tcat Server:

To start Tcat Server from a disabled state, run:

Or, if you're not using SMF, you may start Tcat Server:

You can also restart the server via SMF:

Or, if you're not using SMF, you may restart Tcat Server:

Additional Options on Solaris

  • If your shell user does not have root permissions when you run the installer, the installer will not be able to add a tomcat shell user, nor will the installer be able to install the Tcat Server SMF service. This is okay, and is a fully supported use case on Solaris. The user you use to run the Tcat installer will be the user that the Tcat JVM runs as, and you should start|stop|restart Tcat Server on the command line via the tcat6 init script as described in the Starting and Stopping on Solaris 10 and 11 section above.
  • Installing Tcat Server inside a Solaris zone is also supported. The installer is unaware it is being installed in a non-global zone and the installation will work the same as if you are installing it in the global zone. If you have root privileges in a zone, but the zone does not allow you to use SMF, then the installer may be unable to install the SMF service, but the installation will not fail – it will succeed and complete the installation without the SMF service. You will be able to operate Tcat Server without SMF on the command line via the tcat6 init script as described in the Starting and Stopping on Solaris 10 and 11 section above. By default, Solaris 10 and 11 allow SMF to be used as root inside non-global zones. If you do not have root privileges in your non-global zone, installing Tcat inside this zone is the same as installing Tcat in the global zone without root privileges.
  • If you installed as root via the installer, you can invoke the init script for start|stop|restart|status:

As a next step, you may wish to start the Tcat console as detailed in the following section.

Starting the Tcat Console

The Tcat console is an administration console for managing and monitoring Tomcat instances. To run the Tcat console on a local installation, enter http://localhost:8080/console in your web browser. If the server is remote or you changed the default port, replace localhost:8080 with the correct server name and port where the console is deployed.

You can now select and register one or more of the unregistered servers, adding them to server groups as needed. For more details, see Working with Servers.

Advanced Options and Security

This section details a few important advanced options. For more information about configuring Tcat Server, please see the Administration Guide.

Make Contents of Webapps Directory Unwriteable

By default, the Tcat console enables a user to edit files on any Tcat Server instance registered to it. For additional security, you may wish to make the Webapps directory unwriteable.

This property is set in the spring-services.xml file located in the webapps/agent/WEB-INF/ directory. Below is the relevant snippet:

To disable this ability, take the following steps:

  1. Uncomment last element shown in the above snipper, replacing this
    with this
  2. Save the file
  3. Restart Tcat Server instance

Modifying JAVA_OPTS

You may wish to modify the JAVA_OPTS environment variable for several reasons:

  • To enable JMX so that you obtain more detailed information about connectors and server status, e.g.,
  • To increase memory settings because you are installing all the components offered in the installer, as an example: -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M
  • To modify the secure port, as an example: -Dtcat.securePort=51444

JAVA_OPTS can be modified after installing Tcat Server using the Tcat console. This can be done in two ways:

  1. Manually setting the options on each server by modifying the server's environment variables
  2. Or by modifying the options in the server profile that you use across multiple Tcat Server instances. This requires administration privileges.

Uninstalling Tcat Server

The following options will uninstall Tcat Server:

  • For a Tcat Server installation with the Solaris installer, choose the uninstall shell script in the Tcat installation directory (the default location is: /opt/TcatServer6).
  • If Tcat Server and Tomcat were manually installed in the same directory, and you want to delete both programs, simply delete the entire folder.
  • If Tcat Server was manually installed on an existing Tomcat installation, delete the console, agent webapps and their folders from the webapps directory.