Tất cả tài liệu

Managed – FPT Kubernetes Engine

    Cấu hình proxy protocol cho istio-ingress với Managed Kubernetes cluster
    Cấu hình proxy protocol cho istio-ingress với Managed Kubernetes cluster
    Updated on 21 Apr 2025

    Trong trường hợp người dùng sử dụng dịch vụ Managed Kubernetes của FPT Cloud và có nhu cầu lấy được thông tin IP public của người dùng cuối khi truy cập vào ứng dụng trong Kubernetes thông qua istio gateway, người dùng có thể cấu hình:

    Enable proxy protocol cho service istio-ingressgateway bằng cách thêm annotation loadbalancer.fptcloud.com/proxy-protocol: "true" trong cấu hình của service.

    Cấu hình envoyFilter trong namespace “istio-system”:

    apiVersion: networking.istio.io/v1alpha3 
    kind: EnvoyFilter 
    metadata: 
      name: proxy-protocol 
      namespace: istio-system 
    spec: 
      configPatches: 
      - applyTo: LISTENER 
        patch: 
          operation: MERGE 
          value: 
            listener_filters: 
            - name: envoy.filters.listener.proxy_protocol 
              typed_config: 
                '@type': type.googleapis.com/envoy.extensions.filters.listener.proxy_protocol.v3.ProxyProtocol 
      workloadSelector: 
        labels: 
          istio: [lable-istio-gateway] 

    Khi đó, nếu các request người dùng cuối truy cập vào ứng dụng thông qua gateway istio, trong logs của pod istio-ingressgateway có thể thấy được thông tin source IP public từ các người dùng cuối này.

    Lưu ý tài liệu này được áp dụng cho các phiên bản thấp hơn hoặc bằng 1.22 của istio opensource.