Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inconsistence in istioctl upgrade on 1.12 version #37908

Closed
cnvergence opened this issue Mar 14, 2022 · 6 comments
Closed

Inconsistence in istioctl upgrade on 1.12 version #37908

cnvergence opened this issue Mar 14, 2022 · 6 comments
Assignees
Labels
area/upgrade Issues related to upgrades

Comments

@cnvergence
Copy link
Member

cnvergence commented Mar 14, 2022

Bug Description

Installing default 1.12.1 Istio on the cluster with istioctl install --set profile=default -y
and upgrading it to 1.12.2 and then to 1.12.3 with istioctl upgrade --set profile=default -y
will result in the following error:

Control Plane - istio-ingressgateway pod - istio-ingressgateway-8c48d875-zkztr - version: 1.12.2
Control Plane - istiod pod - istiod-58d79b7bff-7qfrs - version: 1.12.2

Upgrade version check passed: 1.12.2 -> 1.12.3.

Upgrade check: Warning!!! The following IOPS will be changed as part of upgrade. Please double check they are correct:
spec:
  installPackagePath: /var/folders/w9/y0g091cn7fb7shnmqw84vp_m0000gn/T/istio-install-packages/istio-1.12.1/manifests
    -> <empty> (REMOVED)
  values:
    pilot:
      env:
        ENABLE_LEGACY_FSGROUP_INJECTION: <empty> -> false (ADDED)

2022-03-14T14:32:58.144294Z	info	Error: failed to apply the Istio Control Plane specs. Error: errors occurred during operation: creating default tag would conflict:
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/namespace.sidecar-injector.istio.io]. This may cause injection to occur twice.
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/object.sidecar-injector.istio.io]. This may cause injection to occur twice.
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/rev.namespace.sidecar-injector.istio.io]. This may cause injection to occur twice.
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/rev.object.sidecar-injector.istio.io]. This may cause injection to occur twice.

Error: failed to apply the Istio Control Plane specs. Error: errors occurred during operation: creating default tag would conflict:
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/namespace.sidecar-injector.istio.io]. This may cause injection to occur twice.
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/object.sidecar-injector.istio.io]. This may cause injection to occur twice.
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/rev.namespace.sidecar-injector.istio.io]. This may cause injection to occur twice.
Error [IST0139] (MutatingWebhookConfiguration istio-sidecar-injector) Webhook overlaps with others: [istio-revision-tag-default/rev.object.sidecar-injector.istio.io]. This may cause injection to occur twice.

Version

client version: 1.12.3
control plane version: 1.12.2
data plane version: 1.12.2 (1 proxies)

Additional Information

This is probably related to the fact that the upgrade command does not check if the default revision exists on the cluster, as the install command does.
The newer version should not have this issue, as there istioctl upgrade is an alias to the istioctl install.

The question is if it should be fixed in the release-1.12 or not

@istio-policy-bot istio-policy-bot added the area/upgrade Issues related to upgrades label Mar 14, 2022
@litong01
Copy link
Contributor

@cnvergence were you using upgrade command going from 1.12.1 to 1.12.2? would like to have your confirmation so that I can try this to recreate the issue. This webhook thing has been a headache lately.

@litong01 litong01 self-assigned this Mar 14, 2022
@cnvergence
Copy link
Member Author

cnvergence commented Mar 14, 2022

yes, this is only related to upgrade command on 1.12.
The error pops up only after the second upgrade.

I may have the solution for this already, but don't know if it should be fixed on release-1.12.

@litong01
Copy link
Contributor

using install command wont cause this issue. add it here so that other may try to use install rather than upgrade command for upgrading.

@litong01
Copy link
Contributor

this procedure will also create the same error

1. install istio 1.12.2
2. use upgrade command to upgrade to 1.12.3 (not issue)
3. use upgrade command to upgrade to 1.12.4

The above procedure create the same error.

@litong01
Copy link
Contributor

litong01 commented Mar 14, 2022

also tried from 1.12.3 to 1.12.4 to 1.12.5 same error.
This problem does not occur on 1.13.x. which basically direct the upgrade to install command. So in 1.13.0 or newer, upgrade and install are the same thing, but it is different in prior releases.

@cnvergence
Copy link
Member Author

cnvergence commented Mar 15, 2022

that's correct, I believe the revision tag logic from install, should be also included in the upgrade on 1.12
Specifically, the logic from this PR #33773

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/upgrade Issues related to upgrades
Projects
None yet
Development

No branches or pull requests

3 participants