What's new in tc Server 4.0

tc Server 4.0 has many changes. For a complete list of changes please see the tc Server 4.0 Release Notes

The most significant changes are

  • Introduction of Apache Tomcat 9.0 Runtime - We now have an Apache Tomcat 9.0 compatible runtime included in our distribution.
  • Distribution of Runtime Changes - tc Server will now have tc Runtime 9.0.x bundled with the tc Server installation. tc Runtime 7.0.x and 8.5.x will be available on-demand by using the command tcserver get-runtime or downloading the packages from VMware Tanzu Network.
  • Consolidated tc Server commands - A single tcserver command replaces tcruntime-instance, tcruntime-ctl, and tcruntime-admin commands.
  • Default tc Runtime Instance Directory - tc Runtime instances are now created in a default tc Runtime instances directory instead of the current directory. The path to this directory is configurable via a configuration file or the command line.
  • tc Runtime Separation - tc Runtimes are stored separate from the tc Server directory structure. This location is configurable via a configuration file or the command line.
  • tcserver.configuration properties - A tcserver.configuration properties has been introduced. This configuration file defines default properties used by the tcserver command.
  • RPM Packaging and Repository - The RPM packaging of tc Server has changed for tc Server 4.0. We now have a tc Server RPM, which contains the tc Server specific components, and an RPM for each tc Runtime version. All RPMs will be available on the Pivotal download site and the Pivotal RPM repository that was previously available is being phased out.

Apache Tomcat 9.0 Runtime

With the introduction of Apache Tomcat 9.0, user can now take advantage of the new features available. Here is a quick summary:

  • Updated Specifications: Servlet 4.0, JSP 2.3, EL 3.0, WebSocket 1.1, and JASPIC 1.1
  • Requires Java 8 to use
  • Add support for HTTP/2
  • Adds support for OpenSSL for TLS support with JSSE connectors
  • Add support for TLS virtual hosting, or Server Name Indication (SNI)

Distribution of Runtime Changes

Previous versions of tc Server 3.x included two versions of tc Runtimes (our Apache Tomcat distributions). In tc Server 4.x, we will only be delivering tc Runtime 9.0.x bundled with the tc Server installation. We have other runtimes easily available as on-demand tc Runtimes (7.0.x and 8.5.x). These runtime versions will be available by using the tcserverget-runtime command or downloading the tc Runtime from VMware Tanzu Network.

Consolidated tc Server Commands

The tcserver command is a new command. It isn’t just tcruntime-instance renamed to tcserver while it behaves very similarly to the former tcruntime-instance command it encapsulates tc Runtime instance provisioning, lifecycle, and overall administration.

For a full command reference please see tcserver command reference

Default tc Runtime Instance Directory

Previous versions of tc Server would use the current working directory to create tc Runtime instances unless a location was specified on the command line. This behavior has been replaced by using a default location. The default location is either ${TCSERVER_HOME}/../instances or /var/opt/pivotal/tcserver/instances if tc Server has been installed via RPM. This location may be changed by editing ${TCSERVER_HOME}/conf/tcserver.properties or defined per user by editing ${HOME}/.pivotal/tcserver.properties

For more information on tcserver.properties please see tcserver.properties Reference

tc Runtime Separation

The tc Runtimes are stored separate from the tc Server base directory. In previous versions tc Runtimes and tc Server were bundled together. This created some issues with permissions and upgrades. tc Server 4.0 separates tc Runtimes from the core of tc Server. The location is configurable by using a command line option to tcserver or using the new tcserver.properties file.

tc Runtimes can be downloaded manually from the Pivotal download site or by using the tcserverget-runtime command. This command is similar to the former tcruntime-admin get-runtimes command however the listing of available runtimes functionality has been moved to tcserverlist-runtimes

tcserver.configuration properties

A configuration file has been introduced to allow for customizations to the default values used by the tcserver command. Default values for instances-directory, runtimes-directory, and many other common properties may be defined in this file.

For a full list of configuration properties please see tcserver.properties

RPM Packaging and Repository

The tc Server RPMs have changed in the 4.0 release. There is no longer a single RPM for tc Server and tc Runtime versions. We now have an RPM for tc Server (containing the scripts, templates, and tools of tc Server) and one for each major tc Runtime (7.0.x, 8.5.x, 9.0.x).

Our Pivotal RPM repository for tc Server will no longer be available for version 4.0. We will now have all the RPMs available on our download site at VMware Tanzu Network.