Skip to content

Commit 3340560

Browse files
authored
Merge pull request #49364 from JStickler/OSSMDOC-628A
OSSMDOC-628: make SMCP upgrade generic.
2 parents 2fa9f55 + fc4d6f6 commit 3340560

File tree

6 files changed

+38
-88
lines changed

6 files changed

+38
-88
lines changed

modules/ossm-understanding-versioning.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,4 @@ Depending on the version of the update you are making, the upgrade process is di
2020

2121
* *Minor upgrades* - Minor upgrades require both updating to the most recent {SMProductName} Operator version and manually modifying the `spec.version` value in your `ServiceMeshControlPlane` resources.
2222

23-
* *Major upgrades* - Major upgrades require both updating to the most recent {SMProductName} Operator version and manually modifying the `spec.version` value in your `ServiceMeshControlPlane` resources. Because major upgrades may contain changes that are not backwards compatible, additional manual changes might be required.
23+
* *Major upgrades* - Major upgrades require both updating to the most recent {SMProductName} Operator version and manually modifying the `spec.version` value in your `ServiceMeshControlPlane` resources. Because major upgrades can contain changes that are not backwards compatible, additional manual changes might be required.

modules/ossm-upgrade-20-21-changes.adoc

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,29 @@ Upgrading the control plane from version 2.0 to 2.1 introduces the following arc
1111

1212
Mixer has been completely removed in {SMProductName} 2.1. Upgrading from a {SMProductName} 2.0.x release to 2.1 will be blocked if Mixer is enabled.
1313

14+
If you see the following message when upgrading from v2.0 to v2.1, update the existing `Mixer` type to `Istiod` type in the existing Control Plane spec before you update the `.spec.version` field:
15+
16+
[source,text]
17+
----
18+
An error occurred
19+
admission webhook smcp.validation.maistra.io denied the request: [support for policy.type "Mixer" and policy.Mixer options have been removed in v2.1, please use another alternative, support for telemetry.type "Mixer" and telemetry.Mixer options have been removed in v2.1, please use another alternative]”
20+
----
21+
22+
For example:
23+
24+
[source,yaml, subs="attributes,verbatim"]
25+
----
26+
apiVersion: maistra.io/v2
27+
kind: ServiceMeshControlPlane
28+
spec:
29+
policy:
30+
type: Istiod
31+
telemetry:
32+
type: Istiod
33+
version: v{MaistraVersion}
34+
----
35+
36+
1437
[id="ossm-upgrading-differences-behavior_{context}"]
1538
.Behavioral changes
1639

@@ -22,8 +45,3 @@ Mixer has been completely removed in {SMProductName} 2.1. Upgrading from a {SMPr
2245
** xDS v2 is no longer supported
2346
** Deprecated filter names
2447
* Older versions of proxies may report 503 status codes when receiving 1xx or 204 status codes from newer proxies.
25-
26-
[NOTE]
27-
====
28-
Red Hat is unable to support `EnvoyFilter` configuration except where explicitly documented. This is due to tight coupling with the underlying Envoy APIs, meaning that backward compatibility cannot be maintained.
29-
====

modules/ossm-upgrade-known-issues.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
Known issues that may affect your upgrade include:
99

10-
* {SMProductName} does not support the use of `EnvoyFilter` configuration except where explicitly documented. If you are using Envoy Filters, and the configuration generated by Istio has changed due to the new version of Envoy introduced by upgrading your `ServiceMeshControlPlane`, that has the potential to break any `EnvoyFilter` you may have implemented.
10+
* {SMProductName} does not support the use of `EnvoyFilter` configuration except where explicitly documented. This is due to tight coupling with the underlying Envoy APIs, meaning that backward compatibility cannot be maintained. If you are using Envoy Filters, and the configuration generated by Istio has changed due to the lastest version of Envoy introduced by upgrading your `ServiceMeshControlPlane`, that has the potential to break any `EnvoyFilter` you may have implemented.
1111
1212
* https://issues.redhat.com/browse/OSSM-1505[OSSM-1505] `ServiceMeshExtension` does not work with {product-title} version 4.11. Because `ServiceMeshExtension` has been deprecated in {SMProductName} 2.2, this known issue will not be fixed and you must migrate your extensions to `WasmPluging`
1313

modules/ossm-upgrading-from-20-to-21.adoc

Lines changed: 0 additions & 68 deletions
This file was deleted.

modules/ossm-upgrading-from-21-to-22.adoc renamed to modules/ossm-upgrading-smcp.adoc

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,15 @@
22
// * service_mesh/v2x/upgrading-ossm.adoc
33

44
:_content-type: PROCEDURE
5-
[id="ossm-upgrading-from-21-22_{context}"]
6-
= Upgrading to {SMProductName} 2.2
5+
[id="ossm-upgrading-smcp_{context}"]
6+
= Upgrading the Service Mesh control plane
77

88
To upgrade {SMProductName}, you must update the version field of the {SMProductName} `ServiceMeshControlPlane` v2 resource. Then, once it is configured and applied, restart the application pods to update each sidecar proxy and its configuration.
99

1010
.Prerequisites
1111

1212
* You are running {product-title} 4.9 or later.
13-
* You have the {SMProductName} version 2.2.x operator.
14-
* You cannot upgrade your `ServiceMeshControlPlane` from 1.1 to 2.2 directly. Because of possibly breaking changes at each stage, you must migrate from 1.1 to 2.0, then upgrade from 2.0 to 2.1, then upgrade 2.1 to 2.2.
13+
* You have the latest {SMProductName} Operator.
1514
1615
.Procedure
1716

@@ -22,7 +21,7 @@ To upgrade {SMProductName}, you must update the version field of the {SMProductN
2221
$ oc project istio-system
2322
----
2423

25-
. Check your v2 `ServiceMeshControlPlane` resource configuration to make sure it is valid.
24+
. Check your v2 `ServiceMeshControlPlane` resource configuration to verify it is valid.
2625
+
2726
.. Run the following command to view your `ServiceMeshControlPlane` resource as a v2 resource.
2827
+
@@ -36,18 +35,18 @@ $ oc get smcp -o yaml
3635
Back up your control plane configuration.
3736
====
3837

39-
. Update the `.spec.version` field from v2.1 to v2.2, and apply the configuration.
38+
. Update the `.spec.version` field and apply the configuration.
4039
+
4140
For example:
4241
+
43-
[source,terminal]
42+
[source,yaml, subs="attributes,verbatim"]
4443
----
4544
apiVersion: maistra.io/v2
4645
kind: ServiceMeshControlPlane
4746
metadata:
4847
name: basic
4948
spec:
50-
version: v2.2
49+
version: v{MaistraVersion}
5150
----
5251
+
5352
Alternatively, instead of using the command line, you can use the web console to edit the control plane. In the {product-title} web console, click *Project* and select the project name you just entered.

service_mesh/v2x/upgrading-ossm.adoc

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,27 +26,28 @@ For more information about upgrading Operators, refer to the xref:../../operator
2626
endif::[]
2727

2828
[id="upgrading-control-plane"]
29-
== Upgrading the Service Mesh control plane
29+
== Upgrading the control plane
3030

3131
You must manually update the control plane for minor and major releases. The community Istio project recommends canary upgrades, {SMProductName} only supports in-place upgrades. {SMProductName} requires that you upgrade from each minor release to the next minor release in sequence. For example, you must upgrade from version 2.0 to version 2.1, and then upgrade to version 2.2. You cannot update from {SMProductName} 2.0 to 2.2 directly.
3232

3333
When you upgrade the service mesh control plane, all Operator managed resources, for example gateways, are also upgraded.
3434

35+
Although you can deploy multiple versions of the control plane in the same cluster, {SMProductName} does not support canary upgrades of the service mesh. That is, you can have different SCMP resources with different values for `spec.version`, but they cannot be managing the same mesh.
36+
3537
include::modules/ossm-upgrade-21-22-changes.adoc[leveloffset=+2]
3638

3739
For more information about migrating your extensions, refer to xref:../../service_mesh/v2x/ossm-extensions.adoc#ossm-extensions-migration-overview_ossm-extensions[Migrating from ServiceMeshExtension to WasmPlugin resources].
3840

39-
include::modules/ossm-upgrading-from-21-to-22.adoc[leveloffset=+2]
4041

4142
include::modules/ossm-upgrade-20-21-changes.adoc[leveloffset=+2]
4243

43-
include::modules/ossm-upgrading-from-20-to-21.adoc[leveloffset=+2]
44+
include::modules/ossm-upgrading-smcp.adoc[leveloffset=+2]
4445

45-
include::modules/ossm-migrating-to-20.adoc[leveloffset=+1]
46+
include::modules/ossm-migrating-to-20.adoc[leveloffset=+2]
4647

4748
[id="upgrading-data-plane"]
4849
== Upgrading the data plane
4950

50-
You must restart your application pods and workloads to apply updates to the Envoy proxy or changes to proxy configuration.
51+
Your data plane will still function after you have upgraded the control plane. But in order to apply updates to the Envoy proxy and any changes to the proxy configuration, you must restart your application pods and workloads.
5152

5253
include::modules/ossm-upgrade-apps-workloads.adoc[leveloffset=+2]

0 commit comments

Comments
 (0)