If your installation settings are configured incorrectly, you might experience issues with traffic in your service mesh, or with other Istio components such as gateways.

Check Istio installation status and values

If you used the Gloo Operator to install a service mesh, use the ServiceMeshController resource to monitor the status of the Gloo Operator installation for each Istio component, such as istiod or ztunnel.

  1. Verify that the Gloo Operator pod is running, and has no errors.

      kubectl get pods -n gloo-mesh -l app.kubernetes.io/name=gloo-operator
      
  2. Describe the ServiceMeshController resource in your cluster.

      kubectl describe servicemeshcontroller -n gloo-mesh managed-istio
      

    In the Status section of this example output, all statuses are True and the phase is SUCCEEDED, which indicates that the installation values are valid and the installation process successfully completed.

      ...
    Status:
      Conditions:
        Last Transition Time:  2024-12-27T20:47:01Z
        Message:               Manifests initialized
        Observed Generation:   1
        Reason:                ManifestsInitialized
        Status:                True
        Type:                  Initialized
        Last Transition Time:  2024-12-27T20:47:02Z
        Message:               CRDs installed
        Observed Generation:   1
        Reason:                CRDInstalled
        Status:                True
        Type:                  CRDInstalled
        Last Transition Time:  2024-12-27T20:47:02Z
        Message:               Deployment succeeded
        Observed Generation:   1
        Reason:                DeploymentSucceeded
        Status:                True
        Type:                  ControlPlaneDeployed
        Last Transition Time:  2024-12-27T20:47:02Z
        Message:               Deployment succeeded
        Observed Generation:   1
        Reason:                DeploymentSucceeded
        Status:                True
        Type:                  CNIDeployed
        Last Transition Time:  2024-12-27T20:47:02Z
        Message:               Deployment succeeded
        Observed Generation:   1
        Reason:                DeploymentSucceeded
        Status:                True
        Type:                  WebhookDeployed
        Last Transition Time:  2024-12-27T20:47:02Z
        Message:               All conditions are met
        Observed Generation:   1
        Reason:                SystemReady
        Status:                True
        Type:                  Ready
      Phase:                   SUCCEEDED
    Events:                    <none>
      
  3. To see the Helm values that were used during the installation or upgrade attempt, check the Spec section. Be sure that you set all required fields and that the values are valid by referring to the ServiceMeshController reference.

    • If you set the value of installNamespace to a namespace other than gloo-system, gloo-mesh, or istio-system, you must include the --set manager.env.WATCH_NAMESPACES=<namespace> setting.
    • If the values that you want to set are not available in the ServiceMeshController, review the available settings provided by the gloo-extensions-config configmap.
  4. If you use the gloo-extensions-config configmap for advanced settings, be sure that the configmap is explicitly named gloo-extensions-config, and that it exists in the same namespace as the gloo-operator.