Customizing the Local Edition Deployment Manifest

Important: Before you customize your TIBCO Cloud™ API Management - Local Edition cluster, make sure the value in the tml_image_tag parameter matches your Docker image build. For example, to verify "tml_image_tag": "v5.0.0.1" , you can check the Docker image build in Jenkins as shown below:



Files to Modify

In the Installer container, change to the following folder:

/var/jenkins_home/docker-deploy/azure/swarm/

Update the following deployment manifest using the descriptions in the tables in the "Customize Swarm Cluster" section below:

  • manifest-azure-swarm.json for deployment in a single Azure zone.

Customize Swarm Cluster

The following parameters must be configured in the manifest:

Parameter Description
tml_image_tag API Management - Local Edition Docker image tag. This must be updated to match your Docker image build. For more information see the note at the top of this section.
tml_cluster_name Name for the Local Edition cluster.
tml_cluster_mode There are two valid modes:
  • tethered - Local Edition gets the configuration data from Local Edition cloud. In this mode, an Administrator must specify mom_key and mom_secret in the following file:

    /var/jenkins_home/docker-deploy/properties/tml_cluster_properties.json

  • untethered - Data is configured via the Local Edition configuration manager UI.
tml_zones The zone's name.
tml_image_registry_host Azure Resource Group - for example, tmlContainerRegistry.

This must be consistent with the value specified for CONTAINER_REGISTRY in the configure_azure Jenkins job that is run when creating Local Edition Docker images.

Also see: https://azure.microsoft.com/en-us/services/container-registry/

tml_cm_count Number of Cluster Manager containers.
tml_tm_count Number of Traffic Manager containers.
tml_cache_count Number of Memcached containers.
Note: In Docker Swarm deployments, cache instances are limited to 1. Therefore, tml_cache_count should not be set to a value greater than 1 in Docker Swarm deployments.
tml_sql_count Number of MySQL containers.
tml_log_count Number of Log Service containers.
tml_nosql_count Number of Cassandra containers.

The following are additional parameters, for controlling services, that can be configured:

"tml_tm_http_enabled": "true",
"tml_tm_http_port": 80,
"tml_tm_https_enabled": "true",
"tml_tm_https_port": 443,
"tml_tm_oauth_enabled": "true",
"tml_tm_oauth_port": 8083,
 
"tml_api_http_enabled": "true",
"tml_api_http_port": 7080,
"tml_api_https_enabled": "true",
"tml_api_https_port": 7443,
 
"tml_cm_http_enabled": "true",
"tml_cm_http_port": 8080,
"tml_cm_https_enabled": "true",
"tml_cm_https_port": 8443,

Generating Deployment Scripts and Configuration

Generate deployment scripts and configuration by running the following command in the /var/jenkins_home/docker-deploy/azure/swarm/ folder:

./compose.sh manifest-azure-swarm.json

The deployment scripts and configuration are generated in the manifest-azure-swarm folder.

An example output:

TMG_CLUSTER_NAME: Local Edition Swarm Cluster
TMG_CLUSTER_MODE: tethered
in "tethered" mode, admin must specify "api_key" and "api_secret" in "tml_sql_properties.json" and "tml_log_properties.json"
TMG_CLUSTER_TAG: 6922993653aa7f38744d8a3e50daccf3
TMG_ZONE_NAME: 0: eastus
TMG_ZONE_COUNT: 1
TMG_RELEASE_VERSION: 5.2.0