본문 바로가기
728x90

envoy3

istio 503 UC upstream_reset_before_response_started{connection_termination} 트러블슈팅 istio를 운영하면서 503 UC upstream_reset_before_response_started{connection_termination} 겪은 이슈와 나름의 해결 방법에 대해 소개하고자 한다.이슈 상황 위 그림과 같이 특정 도메인(test.com) 으로 요청이 오는 경우, 쿠버네티스 바깥의 외부 서비스(external-service.com) 로 포워딩하도록 istio를 구성한 상황에서 간헐적으로 503 에러가 발생한 것을 확인하였다. 따져보자면 약 0.05% 내외의 비율로 200과 503에러가 각각 발생하는데, 큰 비율은 아니지만 서비스 안정성에 대해 좋지 않은 현상이 지속적으로 발생하는 것이기 때문에 원인을 파악하고 빠르게 조치를 하는 것이 필요하다.초기 구성초기 구성은 다음과 같다.apiV.. 2025. 9. 8.
istio EnvoyFilter에 대해 알아보자. EnvoyFilter는 istiod에 의해 생성된 envoy 구성을 커스터마이징할 때 사용한다. EnvoyFilter를 사용하면 특정 필드의 값을 변경하거나 특정 필터를 추가하거나 새로운 리스너나 클러스터를 추가할 수 있다. 보통 istio에서는 Envoy 구성을 Gateway, VirtualService, DestionationRule 등을 사용하여 Envoy의 지식이 없어도 트래픽 정책에 대한 제한된 구성을 쉽게 구성할 수 있다면 EnvoyFilter를 사용하면 istio에서 제공하는 Custom Resource에 대한 기능 외에도 다양한 Envoy 기능을 자유롭게 사용할 수 있다. 그래서 istio Custom Resource에서 제공하고 있지는 않지만 Envoy에서 제공하는 기능을 사용해야 할 때.. 2025. 3. 3.
istio와 envoy proxy 세부적으로 파악해보기 istio를 다루다보면 envoy proxy에 대한 내용도 이해해야 하고, EnvoyFilter를 사용하여 라우팅룰을 조금 더 자유롭게 구성하기 위해서 envoy proxy에 대한 내용을 잘 알아야 한다. 특히 EnvoyFilter의 필드는 envoy proxy에 대한 스펙을 다루기 때문이다. 그래서 이번 시간에는 istio와 envoy proxy와의 관계와 istio를 다루기 위해 필요한 envoy proxy의 기초 지식에 대해 알아보는 시간을 가지도록 하겠다.envoy proxy란?envoy는 대규모 현대 서비스 지향 아키텍처를 위해 설계된 L7 proxy 및 통신 버스이다. Envoy는 다음과 같은 철학을 가지고 개발하였다.네트워크는 애플리케이션에 투명해야 하며, 네트워크 또는 애플리케이션에서 문제.. 2025. 2. 20.
728x90