Reconfiguring the Dependent Components on Docker Swarm

The Mashery Local components are dependent upon each other to function properly. For example, the Cache and Traffic Manager components are dependent upon MySQL. Once the MySQL component is upgraded, the dependent components also need to be reconfigured.

Reconfiguring Script Syntax

To reconfigure dependent components, use the following command:
user-terminal:manifest-single-zone user$ ./reconfigure-tml-pod.sh <component name> <zone name>Input Parameters -
  • component name: Name of the dependent component to reconfigure. Allowed values:
    • nosql
    • cm
    • api
    • log
    • sql
    • cache
    • tm
  • zone name: Name of the Zone; for example, local

Example of Running Reconfiguration Script

user-terminal:manifest-single-zone user$ ./reconfigure-tml-pod.sh tm local
Deployment file for the given component and region : tm-pod-0.yaml
TML Deployment Name : tm-deploy-0
Reconfiguring TML pod: tm-deploy-0-795df89dcb-7jxfw

Reconfiguration Dependencies

After upgrading a component, only the components that depend upon it are required reconfiguration.
Note: If every component is upgraded, reconfiguration is not required.
Upgraded Component Dependencies to Reconfigure Command to Reconfigure
tml-tm none not applicable
tml-cache tml-tm
./reconfigure-tml-pod.sh tm local
tml-sql
  • tml-cache
  • tml-tm
./reconfigure-tml-pod.sh cache local./reconfigure-tml-pod.sh tm local 
tml-log
  • tml-sql
  • tml-cache
  • tml-tm
./reconfigure-tml-pod.sh sql local./reconfigure-tml-pod.sh cache local./reconfigure-tml-pod.sh tm local 
tml-cm
  • tml-log
  • tml-sql
  • tml-cache
./reconfigure-tml-pod.sh log local./reconfigure-tml-pod.sh sql local./reconfigure-tml-pod.sh cache local 
tml-nosql
  • tml-log
  • tml-sql
  • tml-cache
  • tml-tm
./reconfigure-tml-pod.sh log local./reconfigure-tml-pod.sh sql local./reconfigure-tml-pod.sh cache local./reconfigure-tml-pod.sh tm local 

Verifying the State of the Upgraded or Reconfigured Component

Verified the state of the upgraded component by running the following curl call from inside of the component. For example, for the Traffic Manager component:
[root@bac30afce666 builder]# curl http://localhost:9080/container/states
{
  "b2f5ea20-7327-4983-9732-707b60e08c68" : "ACTIVE",
  "53362875-ee6f-4274-8236-4ae4667c36f7" : "ACTIVE"

b2f5ea20-7327-4983-9732-707b60e08c68 - UUID of the Traffic Manager component

53362875-ee6f-4274-8236-4ae4667c36f7 - UUID of LFA (Linux for All) component