MTS Container
Summary
MTS can best be described as a monolithic application, encompassing a multitude of submodules deployed as a single Java application. Of note, MTS bundles the Legacy CAT Primefaces web application, which HLN aims to fully deprecate and incorporate the CRUD functionality within the modern CAT-RCKMS web application.
Attributes
Type
Primary
Name
middle-tier-service
Image
middle-tier-service
Image Pull Policy
Always
Command
Arguments
Port
8080
Security Context
Allow Privilege Escalation:
false
Endpoints
External-to-Cluster
This container does have external-to-cluster exposed endpoints. As MTS provides a RESTful API interface for most of RCKMS data state objects, this document would be extraordinarily long and complex provide a list of all endpoints.
Internal
Liveness Probe
GET /mts-rs-rckms/
At this time, MTS does not have a dedicated liveness probe endpoint. This endpoint will return a "Hello World!" message if the Payara web application server has initialized and is operating in a nominal state.
Readiness Probe
GET /mts-rs-rckms/
At this time, MTS does not have a dedicated readiness probe endpoint. This endpoint will return a "Hello World!" message if the Payara web application server has initialized and is operating in a nominal state.
Environment Variables
All environment variables, unless otherwise indicated, are considered required.
General Variables
JAVA_TOOL_OPTIONS
Feature flags and default configuration overrides for the container's embedded JVM.
Example Value
Explanation of Options
-Xms4g: sets the initial heap size allocation to 4GB (4096 MiB)-Xmx9g: sets the maximum heap size allocation to 9GB (9216 MiB)-XX:+UseG1GC: enables the usage of theG1garbage collector.-XX:+PrintGCDetails -XX:+PrintGCDateStampscontrols verbosity of garbage collection logging output.-Xloggc:/hln/diagnostics/garbageCollection.logpath for the garbage collection logging output file.-XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=1 -XX:GCLogFileSize=10menables the rotation of log files once the maximum file size of 10MB has been reached.-XX:+UseStringDeduplicationavoids duplicate garbage collection log entries.
Postgres Database Connectivity
Due to differences in database implementations between AIMS environments, the following Postgres user accounts should be used in MTS and RRS connections:
AIMS Production:
rckmsAIMS Onboard:
rckmsAIMS PRR:
rckms_prr
Legacy CAT ("Primefaces") Configuration
Intra-mesh Connectivity
CAT_BS_URI
Define the URI for CAT-RCKMS application for this environment. As MTS generates system and email notifications, and data objects that do not use a relative path within the context of CAT-RCKMS, we must explicitly define this fragment of the URL.
Accepted Values
Any valid URL, including protocol, hostname, and path without a terminating slash. For example,
https://rckms-prod-authoring.aimsplatform.comorhttps://mirror.rckms.dev/catwould be considered acceptable values.
MTS RESTful Services (RS) Configuration
DEPLOY_SERVICE_URI
Define the URI for the Deploy Service embedded in this MTS instance.
Accepted Values
Any valid URL, including protocol, hostname, and path without terminating slash. For example,
https://rckms-mts.dmz.aimsplatform.com/deploy-serviceorhttps://mirror.rckms.dev/deploy-servicewould be considered acceptable values.
RS_CRUD_APP_CONTEXT
Define MTS RS API path pattern. Should match that set at build time for CAT-RCKMS, and pattern must be reflected in all services that communicate with MTS directly.
Accepted Values
Typically set to
/mts-rs-%s, but any string with a preceding slash that terminates with a string argument%swould be considered valid.
Probes
Liveness
Mode
HTTP (GET)
Arguments
Path:
/mts-rs-rckms/Port:
8080(must match container port)
Timings
Initial Delay of
45sPeriod of
30sTimeout of
5s
Thresholds
1Successes1Failures
Readiness
Mode
HTTP (GET)
Arguments
Path:
/mts-rs-rckms/Port:
8080(must match container port)
Timings
Initial Delay of
45sPeriod of
30sTimeout of
5s
Thresholds
1Successes1Failures
Startup
This container does not utilize startup probes.
Resources
2000
5120
N/A
2500
10500
N/A
Technology Stack
Container is built upon a Payara Server (derived from GlassFish Server), Debian base image, which includes OpenJDK 8 (Java Version 8u151).
As this base image is no longer actively supported, HLN has modified the encompassing Dockerfile to perform a variety of package updates from Debian 11 "Bullseye" repositories, as well as removing unused and outdated binaries.
Volume Mounts
java-diag
/hln/diagnostics
Workload Identity
MTS requires connectivity to a writable Postgres database instance.
Code Owners
Last updated