k8s

istio-ingressgateway virtualservice match 순서(websocket테스트 하다 확인)

초이짬 2023. 1. 6. 18:08
728x90

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에서는 다른 설정이 더 필요한거 같고 웹로그처럼 보다가 연결이 끊겻을때만 로그에 나온다 커넥션 중일땐 못보여주는 점 참고

728x90