istio-ingressgateway: Envoy proxy is NOT ready: config not received from Pilot
Description
When upgrading from 1.7.3-bb.9 to 1.8.4-bb.1 the new istio-ingressgateway pod doesn't become healthy. I have tried a restart of the deployment as well deleting the deployment and waiting for the istio operator to reconcile it. istiod and the cni pods are up and running. I have also tried restarting istiod after the upgrade, once the new CNI pods were up.
Potentially related GH issue: https://github.com/istio/istio/issues/29291. I have yet to fully grok the back and forth in the comments but it would appear the issue is fixed but only in 1.10 releases (at time of writing).
The error:
2021-04-30T04:37:04.145418Z info FLAG: --concurrency="0"
2021-04-30T04:37:04.145521Z info FLAG: --domain="istio-system.svc.cluster.local"
2021-04-30T04:37:04.145541Z info FLAG: --help="false"
2021-04-30T04:37:04.145555Z info FLAG: --log_as_json="false"
2021-04-30T04:37:04.145568Z info FLAG: --log_caller=""
2021-04-30T04:37:04.145581Z info FLAG: --log_output_level="default:info"
2021-04-30T04:37:04.145594Z info FLAG: --log_rotate=""
2021-04-30T04:37:04.145607Z info FLAG: --log_rotate_max_age="30"
2021-04-30T04:37:04.145620Z info FLAG: --log_rotate_max_backups="1000"
2021-04-30T04:37:04.145635Z info FLAG: --log_rotate_max_size="104857600"
2021-04-30T04:37:04.145682Z info FLAG: --log_stacktrace_level="default:none"
2021-04-30T04:37:04.145703Z info FLAG: --log_target="[stdout]"
2021-04-30T04:37:04.145718Z info FLAG: --meshConfig="./etc/istio/config/mesh"
2021-04-30T04:37:04.145731Z info FLAG: --outlierLogPath=""
2021-04-30T04:37:04.145744Z info FLAG: --proxyComponentLogLevel="misc:error"
2021-04-30T04:37:04.145756Z info FLAG: --proxyLogLevel="warning"
2021-04-30T04:37:04.145769Z info FLAG: --serviceCluster="istio-ingressgateway"
2021-04-30T04:37:04.145782Z info FLAG: --stsPort="0"
2021-04-30T04:37:04.145795Z info FLAG: --templateFile=""
2021-04-30T04:37:04.145811Z info FLAG: --tokenManagerPlugin="GoogleTokenExchange"
2021-04-30T04:37:04.145853Z info Version 1.8.4-97e10d79b8b5b32be0f92175586a4e11c466e640-Clean
2021-04-30T04:37:04.146326Z info Obtained private IP [10.42.8.27 fe80::4021:2bff:feeb:60c6]
2021-04-30T04:37:04.146688Z info Apply mesh config from file accessLogFile: /dev/stdout
defaultConfig:
discoveryAddress: istiod.istio-system.svc:15012
proxyMetadata:
DNS_AGENT: ""
tracing:
sampling: 10
zipkin:
address: jaeger-collector.jaeger.svc:9411
zipkinAddress: jaeger-collector.jaeger.svc:9411
enablePrometheusMerge: true
enableTracing: true
rootNamespace: istio-system
trustDomain: cluster.local
2021-04-30T04:37:04.151485Z info Effective config: binaryPath: /usr/local/bin/envoy
concurrency: 0
configPath: ./etc/istio/proxy
controlPlaneAuthPolicy: MUTUAL_TLS
discoveryAddress: istiod.istio-system.svc:15012
drainDuration: 45s
envoyAccessLogService: {}
envoyMetricsService: {}
parentShutdownDuration: 60s
proxyAdminPort: 15000
proxyMetadata:
DNS_AGENT: ""
serviceCluster: istio-ingressgateway
statNameLength: 189
statusPort: 15020
terminationDrainDuration: 5s
tracing:
sampling: 10
zipkin:
address: jaeger-collector.jaeger.svc:9411
zipkinAddress: jaeger-collector.jaeger.svc:9411
2021-04-30T04:37:04.151686Z info Proxy role: &model.Proxy{RWMutex:sync.RWMutex{w:sync.Mutex{state:0, sema:0x0}, writerSem:0x0, readerSem:0x0, readerCount:0, readerWait:0}, Type:"router", IPAddresses:[]string{"10.42.8.27", "fe80::4021:2bff:feeb:60c6"}, ID:"istio-ingressgateway-5446685b56-lmkv9.istio-system", Locality:(*envoy_config_core_v3.Locality)(nil), DNSDomain:"istio-system.svc.cluster.local", ConfigNamespace:"", Metadata:(*model.NodeMetadata)(nil), SidecarScope:(*model.SidecarScope)(nil), PrevSidecarScope:(*model.SidecarScope)(nil), MergedGateway:(*model.MergedGateway)(nil), ServiceInstances:[]*model.ServiceInstance(nil), IstioVersion:(*model.IstioVersion)(nil), VerifiedIdentity:(*spiffe.Identity)(nil), ipv6Support:false, ipv4Support:false, GlobalUnicastIP:"", XdsResourceGenerator:model.XdsResourceGenerator(nil), WatchedResources:map[string]*model.WatchedResource(nil)}
2021-04-30T04:37:04.151713Z info JWT policy is third-party-jwt
2021-04-30T04:37:04.151844Z info PilotSAN []string{"istiod.istio-system.svc"}
2021-04-30T04:37:04.151976Z info sa.serverOptions.CAEndpoint == istiod.istio-system.svc:15012 Citadel
2021-04-30T04:37:04.152093Z info Using CA istiod.istio-system.svc:15012 cert with certs: var/run/secrets/istio/root-cert.pem
2021-04-30T04:37:04.152745Z info citadelclient Citadel client using custom root: istiod.istio-system.svc:15012 -----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
2021-04-30T04:37:04.289194Z info Starting gateway SDS
2021-04-30T04:37:04.399343Z info sds SDS gRPC server for workload UDS starts, listening on "./etc/istio/proxy/SDS"
2021-04-30T04:37:04.399817Z info sds SDS gRPC server for gateway controller starts, listening on "./var/run/ingress_gateway/sds"
2021-04-30T04:37:04.399735Z info sds Start SDS grpc server
2021-04-30T04:37:04.399956Z info xdsproxy Initializing with upstream address istiod.istio-system.svc:15012 and cluster Kubernetes
2021-04-30T04:37:04.400004Z info sds Start SDS grpc server for ingress gateway proxy
2021-04-30T04:37:04.400766Z info xdsproxy adding watcher for certificate var/run/secrets/istio/root-cert.pem
2021-04-30T04:37:04.401293Z info Starting proxy agent
2021-04-30T04:37:04.401623Z info Opening status port 15020
2021-04-30T04:37:04.402408Z info Received new config, creating new Envoy epoch 0
2021-04-30T04:37:04.402548Z info Epoch 0 starting
2021-04-30T04:37:04.439905Z info Envoy command: [-c etc/istio/proxy/envoy-rev0.json --restart-epoch 0 --drain-time-s 45 --parent-shutdown-time-s 60 --service-cluster istio-ingressgateway --service-node router~10.42.8.27~istio-ingressgateway-5446685b56-lmkv9.istio-system~istio-system.svc.cluster.local --local-address-ip-version v4 --bootstrap-version 3 --log-format-prefix-with-location 0 --log-format %Y-%m-%dT%T.%fZ %l envoy %n %v -l warning --component-log-level misc:error]
2021-04-30T04:37:04.640581Z warning envoy runtime Unable to use runtime singleton for feature envoy.http.headermap.lazy_map_min_size
2021-04-30T04:37:04.640988Z warning envoy runtime Unable to use runtime singleton for feature envoy.http.headermap.lazy_map_min_size
2021-04-30T04:37:04.642687Z warning envoy runtime Unable to use runtime singleton for feature envoy.http.headermap.lazy_map_min_size
2021-04-30T04:37:04.642839Z warning envoy runtime Unable to use runtime singleton for feature envoy.http.headermap.lazy_map_min_size
2021-04-30T04:37:04.748802Z info xdsproxy Envoy ADS stream established
2021-04-30T04:37:04.749138Z info xdsproxy connecting to upstream XDS server: istiod.istio-system.svc:15012
2021-04-30T04:37:04.752154Z warning envoy main there is no configured limit to the number of allowed active connections. Set a limit via the runtime key overload.global_downstream_max_connections
2021-04-30T04:37:04.925277Z info sds resource:ROOTCA new connection
2021-04-30T04:37:04.925611Z info sds Skipping waiting for gateway secret
2021-04-30T04:37:04.925694Z info sds resource:default new connection
2021-04-30T04:37:04.925793Z info sds Skipping waiting for gateway secret
2021-04-30T04:37:05.780696Z info cache Root cert has changed, start rotating root cert for SDS clients
2021-04-30T04:37:05.780841Z info cache GenerateSecret default
2021-04-30T04:37:05.782322Z info sds resource:default pushed key/cert pair to proxy
2021-04-30T04:37:06.327583Z info cache Loaded root cert from certificate ROOTCA
2021-04-30T04:37:06.328506Z info sds resource:ROOTCA pushed root cert to proxy
2021-04-30T04:37:06.528009Z warning envoy config gRPC config for type.googleapis.com/envoy.config.listener.v3.Listener rejected: Error adding/updating listener(s) 0.0.0.0_8443: duplicate listener 0.0.0.0_8443 found
2021-04-30T04:37:07.864995Z warn Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 1 successful, 0 rejected; lds updates: 0 successful, 1 rejected
2021-04-30T04:37:09.855630Z warn Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 1 successful, 0 rejected; lds updates: 0 successful, 1 rejected
2021-04-30T04:37:11.855322Z warn Envoy proxy is NOT ready: config not received from Pilot (is Pilot running?): cds updates: 1 successful, 0 rejected; lds updates: 0 successful, 1 rejected
...
Environment
rke2: 1.20.6+rke2r1
bigbang: 1.6.1
istio-controlplane helm chart: 1.8.4-bb.1
Istio CNI is manually enabled via:
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
name: enable-cni
namespace: istio-system
spec:
profile: empty
components:
cni:
enabled: true
values:
cni:
excludeNamespaces:
- istio-system
- kube-system
Edited by Marshall Ford