Removing a Sub-Domain

When removing a sub-domain, upgrading the master namespace must be done in two steps.

First, perform an upgrade using topology-additional-subdomain.yaml but with all engines in the sub-domain to be removed (s2) configured with the ignore property set to true:

helm --kube-context context1 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml -f topology-additional-subdomain.yaml -f cluster1.yaml --set global.topology.domains[0].subdomains[1].engines[0].ignore=true --set global.topology.domains[0].subdomains[1].engines[1].ignore=true --version matrixx_version

This stops and then deletes the s2e1 and s2e2 engines. Next, upgrade the master namespace again using the topology-initial.yaml file to perform final cleanup:

helm --kube-context context1 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml -f topology-initial.yaml -f cluster1.yaml --version matrixx_version
Note: If you attempt to upgrade the master namespace in one step, the subdomain-operator-s2, engine-operator-s2e1, and engine-operator-s2e2 pods are deleted before they are able to finish cleaning up the sub-domain 2 engines.

Upgrade and uninstall the agent and engine namespaces with the following commands:

helm --kube-context context2 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml  -f topology-initial.yaml -f cluster2.yaml --version matrixx_version
helm --kube-context context1 upgrade mtx-engine-s1 matrixx/matrixx -n matrixx-engine-s1 -f base.yaml  -f topology-initial.yaml -f cluster1.yaml --version matrixx_version
helm --kube-context context2 upgrade mtx-engine-s1 matrixx/matrixx -n matrixx-engine-s1 -f base.yaml  -f topology-initial.yaml -f cluster2.yaml --version matrixx_version
helm --kube-context context1 uninstall mtx-engine-s2 -n matrixx-engine-s2
helm --kube-context context2 uninstall mtx-engine-s2 -n matrixx-engine-s2
kubectl --context context1 delete ns matrixx-engine-s2
kubectl --context context2 delete ns matrixx-engine-s2 

Finally, upgrade the Traffic Routing Agent (TRA) namespace with the following command:

helm --kube-context context1 upgrade mtx-tra matrixx/matrixx -n matrixx-tra -f base.yaml -f topology-initial.yaml -f cluster1.yaml -f tra.yaml --version matrixx_version