Setup
Ubuntu 20.04.1
Istio 1.8.0
- I deployed a service and can access it locally:
my-service ClusterIP 10.100.102.138 <none> 9000/TCP,4000/TCP 16h
> curl 10.100.102.138:4000/list
Got valid response
> echo $GATEWAY_URL
192.168.1.55:31438
-
Now, I wanna access it from my app (mobile and desktop browser). To do that, I need to open a custom port for HTTP requests in a web browser. I’ve been following this
-
My gateway and vs are as follows
---
apiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
name: my-gateway
spec:
selector:
istio: ingressgateway
servers:
- port:
number: 31455
name: http
protocol: HTTP
hosts:
- "*"
---
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: vs-ingress-my
spec:
hosts:
- "*"
gateways:
- my-gateway
http:
- match:
- port: 31455
route:
- destination:
host: my-service
port:
number: 4000
- I edited
ingress-gateway
with the following:kubectl edit svc istio-ingressgateway -n istio-system
and added this:
ports:
- name: tcp-my
nodePort: 30001
port: 31455
protocol: TCP
targetPort: 80
-
Running
istioctl analyze -n my-system
returns ok:
No validation issues found when analyzing namespace: my-system -
However, when I run
istioctl ps
, I’m getting the following:
NAME CDS LDS EDS RDS ISTIOD VERSION
istio-ingressgateway-848588d9cb-nwf9m.istio-system SYNCED STALE (Never Acknowledged) SYNCED SYNCED istiod-767798f6fd-lz8p4 1.8.0
So LDS remains STALE
even after rebooting.
- When I get to this,
curl $GATEWAY_URL
locally doesn’t work as well, until I removemy-gateway
and virtual servicevs-ingress-my
.
Pls help and advice. Really stuck with this.