ExternalControlPlaneAddressIsNotAHostname

Message NameExternalControlPlaneAddressIsNotAHostname
Message CodeIST0164
DescriptionAddress for the ingress gateway on the external control plane is an IP address and not a hostname
LevelInfo

This message occurs when the address provided for the ingress gateway on the external control plane is an IP address and not a hostname.

Example

You will receive this message:

  1. Info [IST0164] (MutatingWebhookConfiguration istio-sidecar-injector-external-istiod testing.yml:28) The address (https://999.999.999.999:5100/inject/cluster/your-cluster-name/net/network1) that was provided for the webhook (rev.namespace.sidecar-injector.istio.io) to reach the ingress gateway on the external control plane cluster is an IP address. This is not recommended for a production environment.

when your cluster has the following ValidatingWebhookConfiguration and MutatingWebhookConfiguration (shortened for clarity):

  1. apiVersion: admissionregistration.k8s.io/v1
  2. kind: ValidatingWebhookConfiguration
  3. metadata:
  4. name: istio-validator-external-istiod
  5. webhooks:
  6. - admissionReviewVersions:
  7. - v1beta1
  8. - v1
  9. clientConfig:
  10. url: https://test.com:15017/validate
  11. name: rev.validation.istio.io
  12. ---
  13. apiVersion: admissionregistration.k8s.io/v1
  14. kind: ValidatingWebhookConfiguration
  15. metadata:
  16. name: istiod-default-validator
  17. webhooks:
  18. - admissionReviewVersions:
  19. - v1beta1
  20. - v1
  21. clientConfig:
  22. url: https://test.com:15017/validate
  23. failurePolicy: Ignore
  24. name: validation.istio.io
  25. ---
  26. apiVersion: admissionregistration.k8s.io/v1
  27. kind: MutatingWebhookConfiguration
  28. metadata:
  29. name: istio-sidecar-injector-external-istiod
  30. webhooks:
  31. - admissionReviewVersions:
  32. - v1beta1
  33. - v1
  34. clientConfig:
  35. url: https://999.999.999.999:5100/inject/cluster/your-cluster-name/net/network1
  36. failurePolicy: Fail
  37. name: rev.namespace.sidecar-injector.istio.io
  38. - admissionReviewVersions:
  39. - v1beta1
  40. - v1
  41. clientConfig:
  42. url: https://test.com/inject/cluster/your-cluster-name/net/network1
  43. failurePolicy: Fail
  44. name: rev.object.sidecar-injector.istio.io
  45. - admissionReviewVersions:
  46. - v1beta1
  47. - v1
  48. clientConfig:
  49. url: https://test.com/inject/cluster/your-cluster-name/net/network1
  50. failurePolicy: Fail
  51. name: namespace.sidecar-injector.istio.io
  52. - admissionReviewVersions:
  53. - v1beta1
  54. - v1
  55. clientConfig:
  56. url: https://test.com/inject/cluster/your-cluster-name/net/network1
  57. failurePolicy: Fail
  58. name: object.sidecar-injector.istio.io

How to resolve

Using an IP address instead of a hostname for your ingress gateway running in the external control plane is not recommended in a production environment.

If you are running in a production environment, you can fix this info message by changing the address to a valid hostname that resolves to the IP address of your ingress gateway.

Instructions for exposing the ingress gateway service using a public hostname with TLS can be found here.