CLI - single cluster upgrade
CAUTION:
Supported upgrade paths
Service Mesh Manager supports upgrades from the prior minor release and patch releases. The current supported upgrade path is: v1.11.x
to v1.12.x
In case you have installed your Calisti deployment using the Calisti CLI, use the CLI to upgrade to the new version.
- If you are using Calisti on a single cluster, follow this guide.
- If you are using Calisti in a multi-cluster setup, see CLI - multi-cluster upgrade.
-
Download the Service Mesh Manager command-line tool for version 1.12.0. The archive contains the
smm
andsupertubes
binaries. Extract these binaries and update your local copy on your machine. For details, see Accessing the Service Mesh Manager binaries. -
Deploy a new version of Service Mesh Manager.
The following command upgrades the Service Mesh Manager control plane. The new version has the same Istio control plane (version 1.15.3), so there is no need to restart workloads.
In the following examples,
smm
refers to version 1.12.0 of the binary.-
If you want to upgrade only Service Mesh Manager:
smm install -a
-
If you want to upgrade both Service Mesh Manager and Streaming Data Manager use below command
smm install -a --install-sdm
-
In case you want to have custom settings for your Istio control plane, you can provide that during the installation:
smm install -a --istio-cr-file <custom-istio-cr-file.yaml>
-
-
-
Check that the Service Mesh Manager control plane is upgraded and already uses the new Istio control plane.
-
If you are upgrading only Service Mesh Manager, run the following command to verify that the installation is complete.
kubectl get pods -n=smm-system -L istio.io/rev
The output should be similar to:
NAME READY STATUS RESTARTS AGE REV istio-operator-v113x-64bc574fdf-mdtwj 2/2 Running 0 21m istio-operator-v115x-8558dbb88c-6r6fx 2/2 Running 0 21m mesh-manager-0 2/2 Running 0 21m prometheus-node-exporter-76jwv 1/1 Running 0 18m prometheus-node-exporter-ptbwk 1/1 Running 0 18m prometheus-node-exporter-w86lc 1/1 Running 0 18m prometheus-smm-prometheus-0 4/4 Running 0 19m cp-v115x.istio-system smm-6b5575474d-l88lg 2/2 Running 0 19m cp-v115x.istio-system smm-6b5575474d-wp727 2/2 Running 0 19m cp-v115x.istio-system smm-als-6b995458c-z8jt9 2/2 Running 0 19m cp-v115x.istio-system smm-authentication-78d96d6fc9-hg89p 2/2 Running 0 19m cp-v115x.istio-system smm-federation-gateway-7c7d9b7fb5-xgv5t 2/2 Running 0 19m cp-v115x.istio-system smm-federation-gateway-operator-ff8598cb7-xj7pk 2/2 Running 0 19m cp-v115x.istio-system smm-grafana-7bcf9f5885-jhwpg 3/3 Running 0 19m cp-v115x.istio-system smm-health-56896f5b9b-r54w8 2/2 Running 0 19m cp-v115x.istio-system smm-health-api-665d4787-pw7z4 2/2 Running 0 19m cp-v115x.istio-system smm-ingressgateway-b6d5b5b84-l5llx 1/1 Running 0 17m cp-v115x.istio-system smm-kubestatemetrics-5455b9697-5tbgq 2/2 Running 0 19m cp-v115x.istio-system smm-leo-7b64559786-2sj4c 2/2 Running 0 19m cp-v115x.istio-system smm-prometheus-operator-66dbdb499d-sz6t8 3/3 Running 1 19m cp-v115x.istio-system smm-sre-alert-exporter-668d9cbd68-926t5 2/2 Running 0 19m cp-v115x.istio-system smm-sre-api-86cf44fbbb-lxvxd 2/2 Running 0 19m cp-v115x.istio-system smm-sre-controller-858b984df6-6b5r6 2/2 Running 0 19m cp-v115x.istio-system smm-tracing-76c688ff6f-7ctjk 2/2 Running 0 19m cp-v115x.istio-system smm-vm-integration-5df64bdb4b-68xgh 2/2 Running 0 19m cp-v115x.istio-system smm-web-677b9f4f5b-ss9zs 3/3 Running 0 19m cp-v115x.istio-system
-
If you are upgrading both Service Mesh Manager and Streaming Data Manager, run the following command to verify that the installation is complete.
kubectl get pods -A -L istio.io/rev
The output should be similar to:
NAMESPACE NAME READY STATUS RESTARTS AGE REV cert-manager cert-manager-67575448dd-8qbws 1/1 Running 0 5h56m cert-manager cert-manager-cainjector-79f8d775c7-ww7fw 1/1 Running 0 5h56m cert-manager cert-manager-webhook-5949cc4b67-gwknv 1/1 Running 0 5h56m cluster-registry cluster-registry-controller-b86f8857c-44jh8 1/1 Running 0 5h57m csr-operator-system csr-operator-5955b44674-bvl9p 2/2 Running 0 5h56m istio-system istio-meshexpansion-v115x-d8555488f-btdx6 1/1 Running 0 37m v115x.istio-system istio-system istiod-v115x-555749b797-dcwwm 1/1 Running 0 5h55m v115x.istio-system istio-system istiod-sdm-iv115x-6c8cfb5fc5-85w2d 1/1 Running 0 5h55m sdm-iv115x.istio-system kafka kafka-operator-operator-76df6db8d4-l4kkq 3/3 Running 2 (5h52m ago) 5h53m sdm-iv115x.istio-system smm-registry-access imagepullsecrets-controller-6c45b46459-qb9j8 1/1 Running 0 6h1m smm-system istio-operator-v113x-6fb944b86b-xgpbd 2/2 Running 0 5h55m smm-system istio-operator-v115x-68dcbc59c8-vt2mp 2/2 Running 0 5h55m smm-system mesh-manager-0 2/2 Running 0 5h56m smm-system prometheus-node-exporter-74dcm 1/1 Running 0 5h53m smm-system prometheus-node-exporter-8s458 1/1 Running 0 5h59m smm-system prometheus-node-exporter-vmth4 1/1 Running 0 5h59m smm-system prometheus-node-exporter-xsk8j 1/1 Running 0 5h59m smm-system prometheus-smm-prometheus-0 4/4 Running 0 5h55m v115x.istio-system smm-system smm-656d45f7cc-c2kd6 2/2 Running 0 5h55m v115x.istio-system smm-system smm-656d45f7cc-xrx9n 2/2 Running 0 5h55m v115x.istio-system smm-system smm-als-855c6878b7-55gvd 2/2 Running 0 5h55m v115x.istio-system smm-system smm-authentication-666547f79f-hwt6t 2/2 Running 0 5h55m v115x.istio-system smm-system smm-federation-gateway-fd4bbb4f8-4nql8 2/2 Running 1 (5h54m ago) 5h55m v115x.istio-system smm-system smm-federation-gateway-operator-bd94d8444-nbvjz 2/2 Running 0 5h55m v115x.istio-system smm-system smm-grafana-59c54f67f4-tft2h 3/3 Running 0 5h55m v115x.istio-system smm-system smm-health-86b8dbdf68-k8bfr 2/2 Running 0 5h55m v115x.istio-system smm-system smm-health-api-69bc97d89-gkdp5 2/2 Running 0 5h55m v115x.istio-system smm-system smm-ingressgateway-9875bc895-v95m9 1/1 Running 0 37m v115x.istio-system smm-system smm-kubestatemetrics-86c6f96789-cxsrb 2/2 Running 0 5h55m v115x.istio-system smm-system smm-leo-8446486596-2w7fc 2/2 Running 0 5h55m v115x.istio-system smm-system smm-prometheus-operator-77cd64556d-ghz5r 3/3 Running 1 (5h55m ago) 5h55m v115x.istio-system smm-system smm-sre-alert-exporter-5dd8b64d58-ccrnh 2/2 Running 0 5h55m v115x.istio-system smm-system smm-sre-api-998fc554b-lpvsq 2/2 Running 0 5h55m v115x.istio-system smm-system smm-sre-controller-68c974c9db-grb44 2/2 Running 0 5h55m v115x.istio-system smm-system smm-tracing-5886d59dd-7k6kt 2/2 Running 0 5h55m v115x.istio-system smm-system smm-vm-integration-5cb96cdd78-mh5lh 2/2 Running 0 5h55m v115x.istio-system smm-system smm-web-55f45cc8c5-gd894 3/3 Running 0 5h55m v115x.istio-system supertubes-control-plane supertubes-control-plane-5bdbfcf5b6-85bw7 2/2 Running 0 5h57m supertubes-system prometheus-operator-grafana-5fd88bcf86-55kgg 4/4 Running 0 5h53m sdm-iv115x.istio-system supertubes-system prometheus-operator-kube-state-metrics-5dbf8656db-wlzfw 2/2 Running 2 (5h53m ago) 5h53m sdm-iv115x.istio-system supertubes-system prometheus-operator-operator-7bdc575546-b4n94 2/2 Running 1 (5h53m ago) 5h53m sdm-iv115x.istio-system supertubes-system prometheus-operator-prometheus-node-exporter-69cmx 1/1 Running 0 5h53m supertubes-system prometheus-operator-prometheus-node-exporter-75b7q 1/1 Running 0 5h53m supertubes-system prometheus-operator-prometheus-node-exporter-skksk 1/1 Running 0 5h53m supertubes-system prometheus-operator-prometheus-node-exporter-v2pll 1/1 Running 0 5h53m supertubes-system prometheus-prometheus-operator-prometheus-0 3/3 Running 0 5h53m sdm-iv115x.istio-system supertubes-system supertubes-6f6b86b497-c5zqf 3/3 Running 1 (5h54m ago) 5h54m sdm-iv115x.istio-system supertubes-system supertubes-ui-backend-c97564f84-c2vd6 2/2 Running 2 (5h54m ago) 5h54m sdm-iv115x.istio-system zookeeper zookeeper-operator-6ff85cf58d-6kxhk 2/2 Running 1 (5h54m ago) 5h54m sdm-iv115x.istio-system zookeeper zookeeper-operator-post-install-upgrade-qq4kf 0/1 Completed 0 5h54m
-
Restarting workloads
After the upgrade has completed, the Pods running in applications' namespaces are still running the old version of Istio proxy sidecar.
-
To obtain the latest security patches, restart these
Controllers
(Deployments
,StatefulSets
, and so on) either using thekubectl rollout
command, or by instructing the CI/CD systems enabled on the cluster. For example, to restart the deployments in a namespace, you can run:kubectl rollout restart deployment --namespace <name-of-your-namespace>
-
If the upgrade also involved a minor or major version upgrade of Istio, the
kubectl rollout
command will only ensure that the latest patch level is being used on the Pods.For example: Service Mesh Manager 1.8.2 comes with Istio 1.11, while Service Mesh Manager 1.9.0 is bundled with Istio 1.12. By upgrading from Service Mesh Manager 1.8.2 to 1.9.0, and then restarting the
Controllers
will only result in the latest 1.11 Istio sidecar proxy to be started in thePods
.To upgrade to the new minor/major version of Istio on your workloads, complete the Upgrading your business applications procedure.