EnvoyFilter로 외부 프로세서와 통신하기
ExternalProcessor
References
spec:
configPatches:
- applyTo: HTTP_FILTER
match:
listener:
filterChain:
filter:
name: "envoy.filters.network.http_connection_manager"
patch:
operation: INSERT_FIRST
value:
name: envoy.filters.http.ext_proc
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor
grpc_service:
envoy_grpc:
cluster_name: outbound|<port>||<name>.<namespace>.svc.cluster.local
failure_mode_allow: false
allow_mode_override: true
processing_mode:
request_body_mode: "FULL_DUPLEX_STREAMED"
response_header_mode: "SKIP"
grpc_serviceallow_mode_override: falsetrue로 설정하면ProcessingResponse.mode_override에 따라processing_mode를 변경할 수 있습니다.
processing_moderequest_header_mode: SEND|SKIPrequest_body_mode: NONE|STREAMED|BUFFERED|BUFFERED_PARTIAL|FULL_DUPLEX_STREAMEDrequest_trailer_mode: SKIP|SENDresponse_header_mode: SEND|SKIPresponse_body_mode: NONE|STREAMED|BUFFERED|BUFFERED_PARTIAL|FULL_DUPLEX_STREAMEDresponse_trailer_mode: SKIP|SEND