When upgrading, you may want to have some additional control over when each individual sub-domain is upgraded. This requires some additional steps.
Procedure
-
Upgrade the sub-domain 1 (s1) engines:
-
Upgrade the s1 engine namespaces:
helm --kube-context context1 upgrade mtx-engine-s1 matrixx/matrixx -n matrixx-engine-s1 -f base.yaml -f topology-upgrade_version.yaml -f cluster1.yaml --version upgrade_version
helm --kube-context context2 upgrade mtx-engine-s1 matrixx/matrixx -n matrixx-engine-s1 -f base.yaml -f topology-upgrade_version.yaml -f cluster2.yaml --version upgrade_version
-
Upgrade the namespace containing the agents but not the masters:
helm --kube-context context2 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml -f topology-upgrade_version.yaml -f cluster2.yaml --version upgrade_version
-
Upgrade the namespace containing the masters configured to disable the sub-domain 2 (s2) and sub-domain 3 (s3) subdomain-operator instances:
helm --kube-context context1 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml -f topology-upgrade_version.yaml -f cluster1.yaml --set global.topology.domains[0].subdomains[1].disable=true --set global.topology.domains[0].subdomains[2].disable=true --version upgrade_version
The Helm --set
option allows you to temporarily modify configuration values from the command prompt rather than editing
topology-upgrade_version.yaml.
The topology-operator pod updates only the s1 MtxSubdomain CR, skipping the s2 and s3 MtxSubdomain CRs. The subdomain-operator-s1 pod acts upon the updated s1 MtxSubdomain
CR to upgrade the s1 engines.
-
Upgrade the sub-domain 2 (s2) engines:
-
Upgrade the s2 engine namespaces:
helm --kube-context context1 upgrade mtx-engine-s2 matrixx/matrixx -n matrixx-engine-s2 -f base.yaml -f topology-upgrade_version.yaml -f cluster1.yaml --version upgrade_version
helm --kube-context context2 upgrade mtx-engine-s2 matrixx/matrixx -n matrixx-engine-s2 -f base.yaml -f topology-upgrade_version.yaml -f cluster2.yaml --version upgrade_version
-
Upgrade the namespace containing the masters configured to disable the s3 subdomain-operator:
helm --kube-context context1 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml -f topology-upgrade_version.yaml -f cluster1.yaml --set global.topology.domains[0].subdomains[2].disable=true --version upgrade_version
The topology-operator pod updates only the s2 MtxSubdomain CR. It has already updated the s1 MtxSubdomain CR and is skipping updating the s3 MtxSubdomain CR. The
subdomain-operator-s2 acts upon the updated s2 MtxSubdomain CR to upgrade the s2 engines.
-
Upgrade the sub-domain 3 (s3) engines:
-
Upgrade the s3 engine namespaces:
helm --kube-context context1 upgrade mtx-engine-s3 matrixx/matrixx -n matrixx-engine-s3 -f base.yaml -f topology-upgrade_version.yaml -f cluster1.yaml --version upgrade_version
helm --kube-context context2 upgrade mtx-engine-s3 matrixx/matrixx -n matrixx-engine-s3 -f base.yaml -f topology-upgrade_version.yaml -f cluster2.yaml --version upgrade_version
-
Upgrade the namespace containing the masters:
helm --kube-context context1 upgrade mtx-operators matrixx/matrixx -n matrixx-operators -f base.yaml -f topology-upgrade_version.yaml -f cluster1.yaml --version upgrade_version
The topology-operator pod updates the s3 MtxSubdomain CR. it has already updated the s1 and s2 MtxSubdomain CRs. The subdomain-operator-s3 acts upon the updated s3
MtxSubdomain CR to upgrade the s3 engines.