Troubleshoot Contour

This topic tells you how to troubleshoot Contour installation and configuration.

Envoy pods fail with malformed IP address errors

Symptom:

The Contour package fails to reconcile, and the Envoy pods fail with errors like:

23-11-23 01:55:11.503][1][warning][config] [source/common/config/grpc_subscription_impl.cc:128] gRPC config for type.googleapis.com/envoy.config.listener.v3.Listener rejected: Error adding/updating listener(s) ingress_http: malformed IP address: ::

Explanation:

By default, the Contour package programs Envoy’s listeners to use IPv6 addresses. In most cases, this is OK. However, some clusters, such as TKGI, only support IPv4.

Solution:

Important

This solution only applies to Contour v1.26 or later, which is included in Tanzu Application Platform v1.8.0 and later.

To use IPv4 addresses on the listeners, update the Tanzu Application Platform values file (commonly called tap-values.yaml).

The following is an example of the Contour section of the values file:

contour:
  envoy:
    listenIPFamily: IPv4

Pods fail to become ready due to errors with pulling images

Symptom:

After upgrading, workload pods fail to become ready due to errors with pulling images.

Explanation:

The pods fail to pull the queue-proxy sidecar image. This is due to a known issue with the kapp rebase rules where the pods try to pull an outdated image.

Solution:

You can resolve this by applying an overlay to the cnrs package:

#@ load("@ytt:data", "data")
#@ load("@ytt:overlay", "overlay")

#@overlay/match by=overlay.subset({"kind":"Config"}), expects="1+"
---
rebaseRules:
#@overlay/append
- path: [data, queue-sidecar-image]
  type: copy
  sources: [new, existing]
  resourceMatchers:
  - kindNamespaceNameMatcher: {kind: ConfigMap, namespace: knative-serving, name: config-deployment}

For more information about applying overlays, see Customize your package installation.

check-circle-line exclamation-circle-line close-line
Scroll to top icon