Deploying a New Cluster on AWS using Kubernetes
Customize Kubernetes Cluster
Since Kubernetes clusters could be set up in many different ways and they can be shared by many applications, it is the Administrator's responsibility to have the cluster set up and be ready for deployment.
Note for MacOS: If you have already installed minikube or kubetctl before, it's better to remove those to do a clean install (remove any trace of previous Kubernetes installation):
The following settings should be customized:
"tml_cluster_name": "Tibco Mashery Local Reference Cluster", "aws_access_key_id": "", "aws_secret_access_key": "", "aws_default_region": "us-east-1", "aws_s3_region": "us-east-1", "k8s_aws_zones": ["us-east-1e"], "k8s_master_count": 1, "k8s_master_size": "m3.medium", "k8s_master_volume_size": 32, "k8s_node_count": 3, "k8s_node_size": "m3.large", "k8s_node_volume_size": 32,
For the Kubernetes worker nodes, use "k8s_node_size" recommended in the following table:
For the Kubernetes master node, use "k8s_master_size" recommended in the following table:
Customize TIBCO Mashery Local Cluster
Note: IMPORTANT! Before you customize your TIBCO Mashery Local cluster, make sure the
tml_image_tag 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:
![](GUID-D1669C50-DF64-47F8-8507-21A6C6395F73-display.jpg)
![](GUID-D1669C50-DF64-47F8-8507-21A6C6395F73-display.jpg)
The following settings can be customized:
"tml_image_tag": "v5.0.0.1", "tml_cm_count": 1, "tml_tm_count": 3, "tml_cache_count": 3, "tml_sql_count": 2, "tml_log_count": 2, "tml_nosql_count": 3, "tml_sql_storage_size": "10Gi", "tml_log_storage_size": "10Gi", "tml_nosql_storage_size": "10Gi", "tml_tm_http_enabled": "true", "tml_tm_http_port": 80, "tml_tm_https_enabled": "false", "tml_tm_https_port": 443, "tml_tm_oauth_enabled": "false", "cassandra_max_heap": "512M", "cassandra_replication_factor": 2
Note:
Single Zone Deployment | Multiple Zone Deployment | |
---|---|---|
tml_cm_count | Number of Cluster Manager Containers | Number of Cluster Manager Containers per zone |
tml_tm_count | Number of Traffic Manager Containers | Number of Traffic Manager Containers per zone |
tml_cache_count | Number of Memcached Containers | Number of Memcached Containers per zone |
tml_sql_count | Number of MySQL Containers | Number of MySQL Containers per zone |
tml_log_count | Number of Log Service Containers | Number of Log Service Containers per zone |
tml_nosql_count | Number of Cassandra Containers | Number of Cassandra Containers per zone |
Setting up Mashery Service Configuration Data
Mashery Local offers the option of importing service configuration data offline. A sample data.zip is provided with the TIBCO Mashery Local build that can be loaded into the database during TIBCO Mashery Local cluster creation.
TIBCO Mashery Local also offers the capability to sync data from an active MoM host at the time of cluster creation. To load the data using the MoM sync configuration, specify the following three properties in the tml_sql_properties.json:
"mom-host": "<MOM_HOST>", "apiKey": "<MOM_API_KEY>", "apiSecret": "<MOM_API_SECRET>",
Generating Deployment Scripts and Configuration
For single-zone deployment, run the following command and find generated deployment scripts and configuration in folder "manifest-single-zone":
./compose.sh manifest-single-zone.json
For multiple zone deployment, run the following command and find generated deployment scripts and configuration in folder "manifest-multi-zones":
./compose.sh manifest-multi-zones.json
Copyright © Cloud Software Group, Inc. All rights reserved.