istio-ingressgateway virtualservice match 순서(websocket테스트 하다 확인)
istio를 통해 ingressgateway 서비스에서 match 순서가 중요하다
아래 처럼 prefix가 / 먼저 나오면 이후에 나오는 거는 못찾는거 같다
좀더 테스트 해봐야 하지만 기존 route랑 다르게 websocket 확인할 일이 생겨 적용하다가
/ 보다 위에 적용해서 match를 순서를 올리니까 정상 되는거 방금 전에 확인 했다
참고로 apiVersion 사용하는거는 v1beta1 이다
===아래 안됨===
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: [vs명]
spec:
hosts:
- "*"
gateways:
- [gw명]
http:
- match:
- uri:
prefix: /
route:
- destination:
host: abc.acb......
- match:
- uri:
prefix: /aaa/websoket
route:
- destination:
host: abc.acbdddd......
===이거 됨===
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: [vs명]
spec:
hosts:
- "*"
gateways:
- [gw명]
http:
- match:
- uri:
prefix: /aaa/websoket
route:
- destination:
host: abc.acbdddd......
- match:
- uri:
prefix: /
route:
- destination:
host: abc.acb......
****방금 또 확인 했는데 websocket 연결 확인 하는건데 계속 열어두다 보니 중간에 커넥션 끊긴다.
istio에서는 다른 설정이 더 필요한거 같고 웹로그처럼 보다가 연결이 끊겻을때만 로그에 나온다 커넥션 중일땐 못보여주는 점 참고