rancher: Unable to update istio configuration in air-gapped environment in Rancher v2.5.x
What kind of request is this (question/bug/enhancement/feature request):
Bug
Steps to reproduce (least amount of steps as possible):
- Provision a Rancher v2.5.5 instance and an air-gapped custom cluster (specifically it should not have access to github.com, I mimicked this in my non-air-gapped lab environment by adding the following to the coredns ConfigMap to prevent the resolution of github.com domains):
github.com:53 {
errors
cache 30
loop
forward . 192.168.200.1
}
- Install Monitoring in the cluster: Cluster Explorer -> Apps & Marketplace -> Charts -> Monitoring
- Install Istio in the cluster: Cluster Explorer -> Apps & Marketplace -> Charts -> Istio
- Upgrade the Istio installation, changing the configuration, e.g. enable the Egress Gateway component.
Result:
Observe the upgrade has no effect and that the logs of the istioctl-installer Job Pod show the following error (in the case of mimicking air-gap with coredns ConfigMap change the exact lookup github.com error message will differ slightly):
Upgrade version check passed: 1.7.3 -> 1.7.3.
2021-01-13T14:30:17.398813Z info Error: failed to generate Istio configs from file [/app/istio-base.yaml] for the current version: 1.7.3, error: Get "https://github.com/istio/istio/releases/download/1.7.3/istio-1.7.3-osx.tar.gz": dial tcp: lookup github.com on 10.43.0.10:53: no such host
Error: failed to generate Istio configs from file [/app/istio-base.yaml] for the current version: 1.7.3, error: Get "https://github.com/istio/istio/releases/download/1.7.3/istio-1.7.3-osx.tar.gz": dial tcp: lookup github.com on 10.43.0.10:53: no such host
Other details that may be helpful:
There is an issue reporting this behaviour in the istio/istio GH repo at https://github.com/istio/istio/issues/28995
Behaviour originates from the istio upgrade command in the istioctl-installer Job https://github.com/rancher/istio-installer/blob/master/scripts/create_istio_system.sh
The error appears to come from here in the istio codebase, but at a first glance I could not determine the difference between the istioctl install and istioctl upgrade that means this is encountered only on the upgrade command, and not on the install.
Environment information
- Reproduced in Rancher v2.5.5, encountered by user in v2.5.2
gz#13932
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 27 (24 by maintainers)
Commits related to this issue
- Add local mirror of istio releases to support upgrades in airgapped installations Workaround for https://github.com/rancher/rancher/issues/30842 — committed to bashofmann/istio-installer by bashofmann 3 years ago
- [rancher-istio] Add local mirror of istio releases to support upgrades in airgapped installations Workaround for https://github.com/rancher/rancher/issues/30842 Signed-off-by: Bastian Hofmann <basho... — committed to bashofmann/charts-1 by bashofmann 3 years ago
- Add local mirror of istio releases to support upgrades in airgapped installations Workaround for https://github.com/rancher/rancher/issues/30842 — committed to bashofmann/istio-installer by bashofmann 3 years ago
- [rancher-istio] Add local mirror of istio releases to support upgrades in airgapped installations Workaround for https://github.com/rancher/rancher/issues/30842 Signed-off-by: Bastian Hofmann <basho... — committed to bashofmann/charts-1 by bashofmann 3 years ago
- Add local mirror of istio releases to support upgrades in airgapped installations Workaround for https://github.com/rancher/rancher/issues/30842 — committed to brendarearden/istio-installer-1 by bashofmann 3 years ago
- Add local mirror of istio releases to support upgrades in airgapped installations Workaround for https://github.com/rancher/rancher/issues/30842 — committed to brendarearden/istio-installer-1 by bashofmann 3 years ago
https://github.com/istio/istio/issues/32689 << opened new issue upstream as I was unable to get the original issue re-opened
TLDR; If a current version of istio exists (which is always true for upgrade) then it sets a url for installPackagePath and ignores passed in values.
I have explained and linked code here https://github.com/istio/istio/issues/28995#issuecomment-772323915 with details of the root cause. This is an upstream bug and not something we are able to resolve with a code fix on our end at this time.