Kiali deployment fails in istio-system namespace: "Unable to Determine if Virtual Resource"

Solution Verified - Updated -

Issue

  • After creating the Service Mesh control plane, the Kiali instance is not being initiated in the istio-system namespace, even after installing the Kiali operator.

Diagnostic Steps

  • For diagnosis, verify the operator logs, where several tasks may be failing with errors. Messages similar to the following will appear in the logs:
$ oc logs kiali-operator-XXXXXX -n openshift-operators


TASK [v1.24/kiali-deploy : Create secret to store a random signing key if a secret does not already exist and we need one] ***

===========================================================================================================================
{"level":"error","ts":1666234809.2403224,"logger":"proxy","msg":"Unable to determine if virtual resource","gvk":"/v1, Kind=Secret","error":"unable to retrieve the complete list of server APIs: external.metrics.k8s.io/v1beta1: the server is currently unable to handle the request","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\toperator-sdk/vendor/github.com/go-logr/zapr/zapr.go:132\nsigs.k8s.io/controller-runtime/pkg/log.(*DelegatingLogger).Error\n\toperator-sdk/vendor/sigs.k8s.io/controller-runtime/pkg/log/deleg.go:144\ngithub.com/operator-framework/operator-sdk/internal/ansible/proxy.(*injectOwnerReferenceHandler).ServeHTTP\n\toperator-sdk/internal/ansible/proxy/inject_owner.go:89\ngithub.com/operator-framework/operator-sdk/internal/ansible/proxy.(*cacheResponseHandler).ServeHTTP\n\toperator-sdk/internal/ansible/proxy/cache_response.go:148\nnet/http.serverHandler.ServeHTTP\n\t/usr/lib/golang/src/net/http/server.go:2867\nnet/http.(*conn).serve\n\t/usr/lib/golang/src/net/http/server.go:1932"}

========================================= Ansible Task StdOut ===========================================================

 TASK [Create secret to store a random signing key if a secret does not already exist and we need one] ********************************
^[[0;31mfatal: [localhost]: FAILED! => {"changed": false, "error": 500, "msg": "Failed to create object: b'Unable to determine if virtual resource\\n'", "reason": "Internal Server Error", "status": 500}

Environment

  • Red Hat OpenShift Container Platform 4.x
  • Service Mesh 2.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content