How can I check if multi-cluster gateways are working properly? #44936
Closed
betonetotbo
started this conversation in
General
Replies: 1 comment
-
I was trying to patch the I just reinstalled istio with I also needed to re-inject istio-proxies in my deployments to the proxies began to use the correct configurations (network, clusterid, etc).
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I have created 2 clusters and configured they as multi-cluster multi primary on different networks.
Using ISTIO 1.14.5
I have exposed the gateways with a LoadBalancer Service.
At my cluster1 I have a service called
my-api-gateway.ingress-ns.svc
, and I want to call it from my cluster2.I was trying simply to make requests from cluster2 pod to
http://my-api-gateway.ingress-ns.svc/my/path
, but the request was resulting in a errorCould not resolve host
.After this, I simply created a dummy service (named
my-api-gateway
) in the same namespace (ingress-ns
) inside the cluster2. Now I'm getting a different error:HTTP/1.1 503 Service Unavailable
I'm new with istio multi-cluster, and I need some help about what look for to solve this issue and get this working.
I was searching about reports about my mesh/proxy status, and I found this:
This command is related about the pod running in cluster2, this pod is the one that need to access the service in cluster1. Note that the IP of the service endpoint is wrong for me, shouldn't this IP be LoadBalancer's external IP/address to access the istio east/west gateway?
I have confirmed that this IP is the "service endpoint" described at cluster1.
Note here that the
Cluster: Kubernetes
isn't theclusterName
I set ininstalled-state [IstioOperator]
, I have set it to:I also tried to use this https://github.com/markszabo/istio-crosscluster-workaround-for-eks to correct sync the meshNetworks, but without success.
Looking at the pods with
kubectl get pod -n $NS $POD -o jsonpath="{.spec.containers[*].env[?(@.name=='ISTIO_META_NETWORK')].value}"
I noted that one of the clusters isn't injecting theISTIO_META_NETWORK
env in proxy.I tried to re-inject the proxy in deployment with:
kubectl get deployment -n $NS $DEPLOY -o yaml | istioctl x kube-uninject -f - | istioctl kube-inject -f - | kubectl apply -f -
But I'm getting this message:
===> Skipping injection because Deployment "NAMESPACE/MY-DEPLOYMENT" has sidecar injection disabled
Can this be the root of the cause? How to solve this? Why the istioctl isn't injecting network info (my istio-system namespace is already with the correct label
topology.istio.io/network
) ?Beta Was this translation helpful? Give feedback.
All reactions