본문 바로가기
728x90

분류 전체보기63

istio traffic 관리 (3) [Egress Gateway] 이전 시간에는 ingress gateway를 위주로 알아봤었는데 이번 시간에는 egress gateway를 위주로 알아보자. ingress gateway가 외부에서 mesh에 대한 인바운드 트래픽을 관리하는 것이라면 mesh에서 바깥으로 나가는 트래픽을 관리하기 위해서 사용하는 것이 egress gateway이다. 사용하는 이유mesh에서 바깥으로 나가는 트래픽을 관리하기 위해 egressgateway를 사용하는 이유는 매우 다양하다. 1. ACL 관리특정 기능을 제공하기 위해 외부 서비스의 기능을 사용하는 경우, 외부 서비스에서는 특정 IP만 해당 서버와 요청할 수 있도록 ACL 제한을 두는 경우가 있다. 하지만 모든 쿠버네티스 워커노드에 공인 IP가 있는 것은 아닐 것이다. 워커노드에서 인터넷이 되는.. 2025. 1. 18.
istio traffic 관리 (2) [Gateway] istio에서 mesh에 대한 인바운드/아웃바운드 트래픽을 관리하기 위해 Gateway를 사용하며, 어떤 트래픽이 mesh에 들어오거나 나갈지를 지정할 수 있다. Gateway의 구성은 애플케이션과 함께 실행되는 사이드카의 envoy proxy가 아닌 mesh의 엣지에서 실행되는 독립적인 envoy proxy에 적용된다. 쿠버네티스의 ingress API와 같이 시스템으로 들어오는 트래픽을 관리하는 메커니즘과 다르게, istio gateway를 사용하면 강력하고 유연한 트래픽 라우팅 기능을 사용할 수 있다. istio의 Gateway를 사용하면 노출시킬 포트, TLS 설정 등과 같은 L4~L6 로드밸런싱 속성을 구성할 수 있기 때문이다. 그리고 L7 트래픽 라우팅 룰은 Gateway에 직접 추가하지 않고.. 2025. 1. 13.
istio traffic 관리 (1) [VirtualService & DestinationRule] istio의 트래픽 라우팅 룰은 서비스 간 트래픽과 API 흐름을 쉽게 제어할 수 있게 한다. istio는 서킷 브레이커, 타임아웃, retry와 같은 서비스 레벨 수준의 기능 구성을 간단하게 하고, 비율 기반 트래픽 분할을 활용하여 A/B 테스팅, Canary rollout 등을 쉽게 할 수 있다. 또한, 종속 서비스나 네트워크의 오류에 대해 애플리케이션을 보다 강력하게 만드는 데 도움이 되는 out-of-box failure recovery 기능을 제공한다. istio의 트래픽 관리 모델은 서비스와 함께 배포되는 envoy-proxy에 의존한다. 메쉬에서 주고받은 모든 트래픽은 envoy를 거치기 때문에 서비스를 변경하지 않고도 메쉬간 트래픽을 쉽게 전달하고 제어할 수 있다. istio에서 제공하는 .. 2025. 1. 12.
istio 소개 및 설치 istio는 기존 분산 애플리케이션에 투명하게 레이어링되는 오픈소스 서비스 메쉬이다. istio의 강력한 기능은 서비스를 보호하고 연결하고 모니터링하는 균일하고 효율적인 방법을 제공한다. istio를 사용하면 애플리케이션 코드를 거의 변경하지 않아도 아래 기능들을 사용할 수 있다.mTLS, 강력한 ID 기반 인증 및 권한 부여를 통해 클러스터에서 안전한 서비스간 통신을 제공한다.HTTP, gRPC, WebSocket, TCP 트래픽에 대한 로드밸런싱 기능 제공풍부한 라우팅 규칙, retry, failover, fault injection 을 통한 트래픽 세부 제어접근 제어, 속도 제한, rate limits을 지원하는 플러그형 정책을 구성할 수 있다.클러스터를 오가는 모든 트래픽에 대한 자동 메트릭, 로.. 2025. 1. 12.
Kubernetes HPA (파드 오토스케일링) [2] - 동작 제어 이전 장에서는 HorizontalPodAutoscaler에 대한 기본적인 내용에 대해 알아보았다. HorizontalPodAutoscaler에 대해 처음 들어보았다면 아래 글을 먼저 읽어보는 것이 좋다.  2025.01.05 - [DevOps/Kubernetes] - Kubernetes HPA (파드 오토스케일링) [1] - 기초 Kubernetes HPA (파드 오토스케일링) [1] - 기초HPA (Horizontal Pod Autoscaler)는 Deployment나 StatefulSet 등의 워크로드의 레플리카 갯수를 수요에 맞게 자동으로 스케일링하도록 한다. 수평 스케일링은 레플리카를 늘리고 줄이는 것을 의미한다. 통상beer1.tistory.com   autoscaling/v2 버전의 Horiz.. 2025. 1. 5.
Kubernetes HPA (파드 오토스케일링) [1] - 기초 HPA (Horizontal Pod Autoscaler)는 Deployment나 StatefulSet 등의 워크로드의 레플리카 갯수를 수요에 맞게 자동으로 스케일링하도록 한다. 수평 스케일링은 레플리카를 늘리고 줄이는 것을 의미한다. 통상적으로 레플리카를 늘리는 것을 scale-out, 줄이는 것을 scale-in 이라고 부른다. 수직 스케일링이라는 것도 있는데, 이는 레플리카를 조절하는 것이 아닌 CPU 및 메모리 등 서버의 스펙을 늘리거나 줄이는 것을 의미한다. (이는 scale-up / scale-down 으로 불린다.)HPA 동작 방식쿠버네티스에는 HPA를 지원하기 위해 HorizontalPodAutoscaler API와 이에 대응하는 컨트롤러를 제공한다. HorizontalPodAutoscale.. 2025. 1. 5.
Coraza WAF 소개와 Istio에서 Coraza WAF 적용하기 Coraza WAFCoraza는 엔터프라이즈급 고성능 웹 애플리케이션 방화벽 (WAF) 이다. Go 언어로 작성되었으며 Modsecurity SecLang Rule set을 지원하고 OWASP Core Rule Set v4와 100% 호환한다. ✏️ Coraza를 알아보기 전에..Coraza를 알아보기 전에 WAF와 OWASP에 대해 간단히 알아보면 좋을 것 같다.  WAF(웹 방화벽) 소개WAF (Web Application Firewall)WAF는 웹 애플리케이션으로 들어오는 트래픽을 모니터링 및 필터링하여 악성 요청으로 의심되는 요청들을 차단하고 웹 앱을 보호하고 승인되지 않은 데이터가 앱에서 나beer1.tistory.com  OWASP란?OWASP (Open Web Application Secu.. 2024. 11. 10.
OWASP란? OWASP (Open Web Application Security Project)OWASP는 전 세계 기업, 교육기관 및 개인이 만들어가는 오픈소스 애플리케이션 보안 프로젝트로, 중립적, 실무적이면서 비용 효과적인 애플리케이션 보안 가이드라인을 무료로 제공하고 있으며 이러한 가이드라인은 웹 및 애플리케이션 보안분야에서 거의 표준이 되고 있다. OWASP Top TenOWASP Top Ten은 웹 애플리케이션 취약점 중에서 빈도가 많고 가장 중요하고 보호해야 할 보안 위험에 대한 취약점 리스트이다. 공식 문서에서는 2021년 기준 TOP 10을 소개하고 있고, 2025년 업데이트할 예정이라고 한다. Broken Access Control: 허가된 사용자에 대해서만 리소스에 접근할 수 있도록 적절하게 인증/.. 2024. 11. 6.
WAF(웹 방화벽) 소개 WAF (Web Application Firewall)WAF는 웹 애플리케이션으로 들어오는 트래픽을 모니터링 및 필터링하여 악성 요청으로 의심되는 요청들을 차단하고 웹 앱을 보호하고 승인되지 않은 데이터가 앱에서 나가는 것을 방지한다. 방화벽 (Firewall)과의 차이점일반적인 방화벽과의 차이점은, 방화벽은 OSI 7 Layer 중 L4 수준에서의 트래픽을 관리 및 차단한다. 구체적으로 이야기 하자면, IP와 Port를 기준으로 트래픽을 허용할지 차단할지 설정한다. 방화벽에 의해 차단되는 경우, 실제 애플리케이션까지 트래픽이 도달하지 않기 때문에 클라이언트에서는 타임아웃이 발생한다. 반면에 WAF는 OSI 7 Layer 중 L7 수준에서의 트래픽을 관리 및 차단한다. 그 중에서 HTTP 정보를 기반으로.. 2024. 11. 5.
728x90